Skip to content

Commit 54c97d4

Browse files
committed
feat: added a small bash script to generate doc for few enableit module
1 parent ff852b1 commit 54c97d4

File tree

5 files changed

+2798
-0
lines changed

5 files changed

+2798
-0
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,6 @@ modules/upstream/.tmp/
2626
# Ignore keys dir, so one can have keys in local repo
2727
.keys/
2828
var/
29+
30+
# Ignore yardoc dir
31+
*.yardoc/
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
# Generate docs for these modules
4+
MODULES="common monitor role profile"
5+
MODULEDIR="modules/enableit"
6+
7+
# Check if puppet-strings is available
8+
if ! puppet strings --help >/dev/null 2>&1; then
9+
log "ERROR: puppet strings command not found. Please install puppet-strings gem."
10+
exit 1
11+
fi
12+
13+
for module in $MODULES; do
14+
echo "Processing module: $module"
15+
16+
MODULEPATH="${MODULEDIR}/${module}"
17+
if [ -d "${MODULEPATH}" ]; then
18+
puppet strings generate --format markdown --out "${MODULEPATH}/REFERENCE.md" "${MODULEPATH}/manifests/*"
19+
fi
20+
done
Lines changed: 225 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,225 @@
1+
# Reference
2+
3+
<!-- DO NOT EDIT: This document was generated by Puppet Strings -->
4+
5+
## Table of Contents
6+
7+
### Classes
8+
9+
* [`monitor`](#monitor): Class for Obmondo monitoring
10+
* [`monitor::prometheus`](#monitor--prometheus): Class for managing Prometheus monitoring
11+
* [`monitor::raid`](#monitor--raid): Class for Raid Monitoring
12+
* [`monitor::service`](#monitor--service): Class for Obmondo system monitoring
13+
* [`monitor::system`](#monitor--system): Class for managing the Obmondo system monitoring
14+
15+
### Defined types
16+
17+
* [`monitor::alert`](#monitor--alert): Prometheus monitoring alert
18+
* [`monitor::domains`](#monitor--domains): Class for managing monitoring of domains and certificate expiry
19+
* [`monitor::threshold`](#monitor--threshold): Class for defining Prometheus monitoring thresholds
20+
21+
## Classes
22+
23+
### <a name="monitor"></a>`monitor`
24+
25+
Class for Obmondo monitoring
26+
27+
#### Parameters
28+
29+
The following parameters are available in the `monitor` class:
30+
31+
* [`enable`](#-monitor--enable)
32+
* [`noop_value`](#-monitor--noop_value)
33+
34+
##### <a name="-monitor--enable"></a>`enable`
35+
36+
Data type: `Boolean`
37+
38+
Enable or disable the monitoring. Defaults to the value of $::obmondo_monitoring_status.
39+
40+
Default value: `$::obmondo_monitoring_status`
41+
42+
##### <a name="-monitor--noop_value"></a>`noop_value`
43+
44+
Data type: `Boolean`
45+
46+
No-operation mode value. Defaults to false.
47+
48+
Default value: `false`
49+
50+
### <a name="monitor--prometheus"></a>`monitor::prometheus`
51+
52+
Class for managing Prometheus monitoring
53+
54+
#### Parameters
55+
56+
The following parameters are available in the `monitor::prometheus` class:
57+
58+
* [`enable`](#-monitor--prometheus--enable)
59+
60+
##### <a name="-monitor--prometheus--enable"></a>`enable`
61+
62+
Data type: `Boolean`
63+
64+
Whether to enable the Prometheus monitoring. Defaults to true.
65+
66+
Default value: `true`
67+
68+
### <a name="monitor--raid"></a>`monitor::raid`
69+
70+
Class for Raid Monitoring
71+
72+
### <a name="monitor--service"></a>`monitor::service`
73+
74+
Class for Obmondo system monitoring
75+
76+
### <a name="monitor--system"></a>`monitor::system`
77+
78+
Class for managing the Obmondo system monitoring
79+
80+
## Defined types
81+
82+
### <a name="monitor--alert"></a>`monitor::alert`
83+
84+
Prometheus monitoring alert
85+
86+
#### Parameters
87+
88+
The following parameters are available in the `monitor::alert` defined type:
89+
90+
* [`alert_id`](#-monitor--alert--alert_id)
91+
* [`enable`](#-monitor--alert--enable)
92+
* [`noop_value`](#-monitor--alert--noop_value)
93+
* [`disable`](#-monitor--alert--disable)
94+
95+
##### <a name="-monitor--alert--alert_id"></a>`alert_id`
96+
97+
Data type: `String`
98+
99+
The identifier for the alert. Defaults to $title.
100+
101+
Default value: `$title`
102+
103+
##### <a name="-monitor--alert--enable"></a>`enable`
104+
105+
Data type: `Boolean`
106+
107+
Whether the alert is enabled. Defaults to true.
108+
109+
Default value: `true`
110+
111+
##### <a name="-monitor--alert--noop_value"></a>`noop_value`
112+
113+
Data type: `Boolean`
114+
115+
The noop value used in monitoring. Defaults to $monitor::noop_value.
116+
117+
Default value: `$monitor::noop_value`
118+
119+
##### <a name="-monitor--alert--disable"></a>`disable`
120+
121+
Data type: `Monitor::Disable`
122+
123+
Optional disable configuration.
124+
125+
Default value: `undef`
126+
127+
### <a name="monitor--domains"></a>`monitor::domains`
128+
129+
Class for managing monitoring of domains and certificate expiry
130+
131+
#### Parameters
132+
133+
The following parameters are available in the `monitor::domains` defined type:
134+
135+
* [`enable`](#-monitor--domains--enable)
136+
* [`expiry_days`](#-monitor--domains--expiry_days)
137+
* [`domain`](#-monitor--domains--domain)
138+
139+
##### <a name="-monitor--domains--enable"></a>`enable`
140+
141+
Data type: `Boolean`
142+
143+
Boolean flag to enable or disable the monitoring. Defaults to true.
144+
145+
Default value: `true`
146+
147+
##### <a name="-monitor--domains--expiry_days"></a>`expiry_days`
148+
149+
Data type: `Integer[1,25]`
150+
151+
Number of days before expiry to alert. Defaults to 25.
152+
153+
Default value: `25`
154+
155+
##### <a name="-monitor--domains--domain"></a>`domain`
156+
157+
Data type: `Eit_types::Monitor::Domains`
158+
159+
The domain to monitor. Defaults to $title.
160+
161+
Default value: `$title`
162+
163+
### <a name="monitor--threshold"></a>`monitor::threshold`
164+
165+
Class for defining Prometheus monitoring thresholds
166+
167+
#### Parameters
168+
169+
The following parameters are available in the `monitor::threshold` defined type:
170+
171+
* [`record`](#-monitor--threshold--record)
172+
* [`enable`](#-monitor--threshold--enable)
173+
* [`noop_value`](#-monitor--threshold--noop_value)
174+
* [`expr`](#-monitor--threshold--expr)
175+
* [`labels`](#-monitor--threshold--labels)
176+
* [`override`](#-monitor--threshold--override)
177+
178+
##### <a name="-monitor--threshold--record"></a>`record`
179+
180+
Data type: `String`
181+
182+
The name of the threshold record. Must start with 'monitor::'.
183+
184+
Default value: `$title`
185+
186+
##### <a name="-monitor--threshold--enable"></a>`enable`
187+
188+
Data type: `Boolean`
189+
190+
Whether the threshold is enabled. Defaults to true.
191+
192+
Default value: `true`
193+
194+
##### <a name="-monitor--threshold--noop_value"></a>`noop_value`
195+
196+
Data type: `Boolean`
197+
198+
The noop value for the monitor. Defaults to $monitor::noop_value.
199+
200+
Default value: `$monitor::noop_value`
201+
202+
##### <a name="-monitor--threshold--expr"></a>`expr`
203+
204+
Data type: `Any`
205+
206+
The expression threshold. Defaults to 1.
207+
208+
Default value: `1`
209+
210+
##### <a name="-monitor--threshold--labels"></a>`labels`
211+
212+
Data type: `Hash`
213+
214+
A hash of labels for the threshold. Defaults to {}.
215+
216+
Default value: `{}`
217+
218+
##### <a name="-monitor--threshold--override"></a>`override`
219+
220+
Data type: `Monitor::Override`
221+
222+
Optional override for threshold parameters. Defaults to undef.
223+
224+
Default value: `undef`
225+

0 commit comments

Comments
 (0)