Compare commits

423 Commits

Author SHA1 Message Date
Jenkins Server
abe628d214 Recommit for updates in build 235 2026-03-14 13:21:23 +01:00
Jenkins Server
5de81ac91c Merge remote-tracking branch 'origin/master' into jenkins-build-235 2026-03-14 13:19:22 +01:00
f7087950c3 OP#493 remove LB balancer option as that has been moved to confdroid_apache 2026-03-14 13:18:54 +01:00
Jenkins Server
337f2bc30a Merge remote-tracking branch 'origin/master' into jenkins-build-234 2026-03-13 15:20:15 +01:00
Jenkins Server
be6bb9fa37 Recommit for updates in build 233 2026-03-12 16:44:06 +01:00
Jenkins Server
15c7332fc7 Merge remote-tracking branch 'origin/master' into jenkins-build-233 2026-03-12 16:42:23 +01:00
3d0ff148fa OP#491 update README 2026-03-12 16:42:04 +01:00
Jenkins Server
ba416173db Recommit for updates in build 232 2026-03-12 16:39:09 +01:00
Jenkins Server
e673732e1a Merge remote-tracking branch 'origin/master' into jenkins-build-232 2026-03-12 16:37:28 +01:00
708662c53a OP#491 update remoteip.conf 2026-03-12 16:37:09 +01:00
Jenkins Server
d2bd47dab1 Recommit for updates in build 231 2026-03-12 16:24:32 +01:00
Jenkins Server
6f194c2d5f Merge remote-tracking branch 'origin/master' into jenkins-build-231 2026-03-12 16:22:49 +01:00
e301619012 OP#491 split config files for remoteip 2026-03-12 16:22:29 +01:00
Jenkins Server
9ef6e21911 Recommit for updates in build 230 2026-03-12 16:14:50 +01:00
Jenkins Server
b9333145d7 Merge remote-tracking branch 'origin/master' into jenkins-build-230 2026-03-12 16:12:59 +01:00
bbd939435b OP#491 split config files for remoteip 2026-03-12 16:12:38 +01:00
Jenkins Server
7690778edd Recommit for updates in build 229 2026-03-12 16:01:16 +01:00
Jenkins Server
f44d81c368 Merge remote-tracking branch 'origin/master' into jenkins-build-229 2026-03-12 15:59:33 +01:00
55de165432 OP#491 fix log path 2026-03-12 15:59:13 +01:00
Jenkins Server
cf868649ae Merge remote-tracking branch 'origin/master' into jenkins-build-228 2026-03-12 15:53:53 +01:00
25e9299a5a OP#491 fix correlation for jail 2026-03-12 15:53:33 +01:00
Jenkins Server
916e179a3c Recommit for updates in build 227 2026-03-12 15:36:12 +01:00
Jenkins Server
98239c9004 Merge remote-tracking branch 'origin/master' into jenkins-build-227 2026-03-12 15:34:13 +01:00
3f9902e435 OP#491 update Readme 2026-03-12 15:33:15 +01:00
9810eebcd4 OP#491 update Readme 2026-03-12 15:32:58 +01:00
Jenkins Server
2da958fe0b Recommit for updates in build 226 2026-03-12 15:31:34 +01:00
Jenkins Server
8a8aab3f1f Merge remote-tracking branch 'origin/master' into jenkins-build-226 2026-03-12 15:29:39 +01:00
d021151c47 OP#491 add remoteIP control 2026-03-12 15:29:14 +01:00
Jenkins Server
f69e1efbe0 Recommit for updates in build 225 2026-03-12 14:43:34 +01:00
Jenkins Server
4f620d76ad Merge remote-tracking branch 'origin/master' into jenkins-build-225 2026-03-12 14:41:48 +01:00
c05ca6e823 OP#490 update README 2026-03-12 14:41:28 +01:00
Jenkins Server
285e6c8767 Recommit for updates in build 224 2026-03-12 14:30:41 +01:00
Jenkins Server
c2f9d49ead Merge remote-tracking branch 'origin/master' into jenkins-build-224 2026-03-12 14:28:58 +01:00
16cf710ddc OP#490 update README 2026-03-12 14:28:42 +01:00
Jenkins Server
1333a25047 Recommit for updates in build 223 2026-03-12 14:25:42 +01:00
Jenkins Server
f1ec7952f9 Merge remote-tracking branch 'origin/master' into jenkins-build-223 2026-03-12 14:24:02 +01:00
70ed93d124 OP#490 update README 2026-03-12 14:23:44 +01:00
Jenkins Server
183e837063 Recommit for updates in build 222 2026-03-12 14:17:23 +01:00
Jenkins Server
39130f2e3b Merge remote-tracking branch 'origin/master' into jenkins-build-222 2026-03-12 14:15:44 +01:00
a3bab5f482 OP#490 add jail 2026-03-12 14:15:13 +01:00
Jenkins Server
ce1c5a09e5 Recommit for updates in build 221 2026-03-12 12:19:18 +01:00
Jenkins Server
9a43c52e84 Merge remote-tracking branch 'origin/master' into jenkins-build-221 2026-03-12 12:17:32 +01:00
eba740c4df OP#490 edit host address 2026-03-12 12:17:14 +01:00
Jenkins Server
ae560aa22f Recommit for updates in build 220 2026-03-12 12:12:55 +01:00
Jenkins Server
6067116cea Merge remote-tracking branch 'origin/master' into jenkins-build-220 2026-03-12 12:11:06 +01:00
129f538f81 OP#490 edit host address 2026-03-12 12:10:48 +01:00
Jenkins Server
0961f4976b Recommit for updates in build 219 2026-03-12 12:08:02 +01:00
Jenkins Server
58d545bece Merge remote-tracking branch 'origin/master' into jenkins-build-219 2026-03-12 12:06:22 +01:00
e56d1a3716 OP#490 edit host address 2026-03-12 12:06:03 +01:00
Jenkins Server
4b32355c05 Recommit for updates in build 218 2026-03-12 11:58:02 +01:00
Jenkins Server
944dfcc16e Merge remote-tracking branch 'origin/master' into jenkins-build-218 2026-03-12 11:56:12 +01:00
fd7d2f0b33 OP#490 comment fail2ban monitoring 2026-03-12 11:55:49 +01:00
Jenkins Server
af946f0c6d Recommit for updates in build 217 2026-03-12 11:55:29 +01:00
Jenkins Server
0d81150ee9 Merge remote-tracking branch 'origin/master' into jenkins-build-217 2026-03-12 11:53:42 +01:00
12ww1160
50e6576149 OP#490 edit fail2ban monitoring 2026-03-12 11:53:23 +01:00
Jenkins Server
4068ff5377 Recommit for updates in build 216 2026-03-12 11:52:11 +01:00
Jenkins Server
79db077ca9 Merge remote-tracking branch 'origin/master' into jenkins-build-216 2026-03-12 11:50:27 +01:00
Arne Teuke
86d4352e57 edit fail2ban monitoring 2026-03-12 11:50:06 +01:00
Jenkins Server
6ce2b7bca2 Merge remote-tracking branch 'origin/master' into jenkins-build-215 2026-03-12 11:26:42 +01:00
12ww1160
c13fc4d4fa add fail2ban monitoring 2026-03-12 11:26:16 +01:00
Jenkins Server
83d6ea93f0 Merge remote-tracking branch 'origin/master' into jenkins-build-214 2026-03-12 11:18:32 +01:00
8336bb006c remove fail2ban monitoring 2026-03-12 11:18:09 +01:00
Jenkins Server
86caa46746 Recommit for updates in build 213 2026-03-12 11:05:14 +01:00
Jenkins Server
6b90283e38 Merge remote-tracking branch 'origin/master' into jenkins-build-213 2026-03-12 11:03:27 +01:00
9750dd2c97 test commit 2026-03-12 11:03:01 +01:00
Jenkins Server
0f430ac017 Recommit for updates in build 212 2026-03-12 10:44:32 +01:00
Jenkins Server
808e4cc33c Merge remote-tracking branch 'origin/master' into jenkins-build-212 2026-03-12 10:42:38 +01:00
93038762e9 reverse target settings 2026-03-12 10:42:15 +01:00
Jenkins Server
47c112972f Recommit for updates in build 211 2026-03-11 17:14:06 +01:00
Jenkins Server
98b5b1cc1c Merge remote-tracking branch 'origin/master' into jenkins-build-211 2026-03-11 17:12:22 +01:00
f6fb054103 add fqdn 2026-03-11 17:12:04 +01:00
Jenkins Server
d4c3d3259f Recommit for updates in build 210 2026-03-11 17:09:03 +01:00
Jenkins Server
022ef64517 Merge remote-tracking branch 'origin/master' into jenkins-build-210 2026-03-11 17:07:12 +01:00
75f42f78af add fqdn 2026-03-11 17:06:57 +01:00
Jenkins Server
1818b7e1cc Recommit for updates in build 209 2026-03-11 16:18:02 +01:00
Jenkins Server
d2aa502d70 Merge remote-tracking branch 'origin/master' into jenkins-build-209 2026-03-11 16:16:22 +01:00
3a047e12d6 add fqdn 2026-03-11 16:16:01 +01:00
Jenkins Server
07cba199a5 Recommit for updates in build 208 2026-03-11 15:47:28 +01:00
Jenkins Server
da0a2ccb71 Merge remote-tracking branch 'origin/master' into jenkins-build-208 2026-03-11 15:45:37 +01:00
696d3eff2b add fqdn 2026-03-11 15:45:13 +01:00
Jenkins Server
5c0d4000cb Recommit for updates in build 207 2026-03-11 15:37:46 +01:00
Jenkins Server
02f28d288b Merge remote-tracking branch 'origin/master' into jenkins-build-207 2026-03-11 15:36:06 +01:00
ec3a9438b1 add fqdn 2026-03-11 15:35:44 +01:00
Jenkins Server
84f63e4cae Recommit for updates in build 206 2026-03-11 15:27:13 +01:00
Jenkins Server
88a55473e0 Merge remote-tracking branch 'origin/master' into jenkins-build-206 2026-03-11 15:25:32 +01:00
3d7116a07d add fqdn 2026-03-11 15:25:15 +01:00
Jenkins Server
8294b924a6 Recommit for updates in build 205 2026-03-11 15:07:56 +01:00
Jenkins Server
cd45ebc29e Merge remote-tracking branch 'origin/master' into jenkins-build-205 2026-03-11 15:06:16 +01:00
0f3c2d7c82 add fqdn 2026-03-11 15:06:00 +01:00
Jenkins Server
84b1900d41 Recommit for updates in build 204 2026-03-11 14:14:25 +01:00
Jenkins Server
7dae610cca Merge remote-tracking branch 'origin/master' into jenkins-build-204 2026-03-11 14:12:41 +01:00
8febab022c remove systemd plugin 2026-03-11 14:12:24 +01:00
Jenkins Server
072a3baae9 Recommit for updates in build 203 2026-03-11 14:04:20 +01:00
Jenkins Server
c2ae0e201d Merge remote-tracking branch 'origin/master' into jenkins-build-203 2026-03-11 14:02:32 +01:00
c6984a5e48 add systemd plugin 2026-03-11 14:02:12 +01:00
Jenkins Server
f4262b9381 Recommit for updates in build 202 2026-03-10 12:32:07 +01:00
Jenkins Server
25b70a5a60 Merge remote-tracking branch 'origin/master' into jenkins-build-202 2026-03-10 12:30:20 +01:00
Jenkins Server
627e69d950 Recommit for updates in build 201 2026-03-10 12:07:03 +01:00
Jenkins Server
090a0e8dd2 Merge remote-tracking branch 'origin/master' into jenkins-build-201 2026-03-10 12:05:05 +01:00
Jenkins Server
9e44259f8e Recommit for updates in build 200 2026-03-10 11:16:37 +01:00
Jenkins Server
6571015114 Merge remote-tracking branch 'origin/master' into jenkins-build-200 2026-03-10 11:14:46 +01:00
Jenkins Server
fcc49ac8d7 Recommit for updates in build 199 2026-03-09 16:42:22 +01:00
Jenkins Server
fad2218024 Merge remote-tracking branch 'origin/master' into jenkins-build-199 2026-03-09 16:40:44 +01:00
Jenkins Server
0915f00b4b Recommit for updates in build 198 2026-03-09 16:22:24 +01:00
Jenkins Server
bf95b178e8 Merge remote-tracking branch 'origin/master' into jenkins-build-198 2026-03-09 16:20:44 +01:00
Jenkins Server
635ec927d4 Recommit for updates in build 197 2026-03-09 16:18:07 +01:00
Jenkins Server
1903ddda90 Merge remote-tracking branch 'origin/master' into jenkins-build-197 2026-03-09 16:16:25 +01:00
Jenkins Server
ce32e10357 Recommit for updates in build 196 2026-03-09 16:02:52 +01:00
Jenkins Server
629798caac Merge remote-tracking branch 'origin/master' into jenkins-build-196 2026-03-09 16:01:09 +01:00
Jenkins Server
50412b6853 Recommit for updates in build 195 2026-03-09 15:56:29 +01:00
Jenkins Server
2f06c5999f Merge remote-tracking branch 'origin/master' into jenkins-build-195 2026-03-09 15:54:49 +01:00
Jenkins Server
7ab59b75df Recommit for updates in build 194 2026-03-09 15:52:20 +01:00
Jenkins Server
91e8cf8a2c Merge remote-tracking branch 'origin/master' into jenkins-build-194 2026-03-09 15:50:40 +01:00
Jenkins Server
b038d1b602 Recommit for updates in build 193 2026-03-09 15:48:50 +01:00
Jenkins Server
39a871f697 Merge remote-tracking branch 'origin/master' into jenkins-build-193 2026-03-09 15:47:09 +01:00
Jenkins Server
857300359b Recommit for updates in build 192 2026-03-09 15:40:48 +01:00
Jenkins Server
68853b0046 Merge remote-tracking branch 'origin/master' into jenkins-build-192 2026-03-09 15:39:08 +01:00
Jenkins Server
b054ab65be Recommit for updates in build 191 2026-03-09 15:34:37 +01:00
Jenkins Server
83d3828aa2 Merge remote-tracking branch 'origin/master' into jenkins-build-191 2026-03-09 15:32:59 +01:00
Jenkins Server
0b9f7b29a5 Recommit for updates in build 190 2026-03-09 15:30:00 +01:00
Jenkins Server
13e0e2bec1 Merge remote-tracking branch 'origin/master' into jenkins-build-190 2026-03-09 15:28:23 +01:00
Jenkins Server
016acc7f13 Recommit for updates in build 189 2026-03-09 15:11:12 +01:00
Jenkins Server
0547fb0784 Merge remote-tracking branch 'origin/master' into jenkins-build-189 2026-03-09 15:09:33 +01:00
Jenkins Server
606618a088 Merge remote-tracking branch 'origin/master' into jenkins-build-187 2026-03-09 14:54:19 +01:00
Jenkins Server
6485cff671 Recommit for updates in build 186 2026-03-09 14:46:11 +01:00
Jenkins Server
b85843b3c7 Merge remote-tracking branch 'origin/master' into jenkins-build-186 2026-03-09 14:44:33 +01:00
Jenkins Server
6f030abd89 Recommit for updates in build 185 2026-03-09 14:23:02 +01:00
Jenkins Server
bb606eb4dd Merge remote-tracking branch 'origin/master' into jenkins-build-185 2026-03-09 14:21:39 +01:00
Jenkins Server
3006397033 Recommit for updates in build 184 2026-03-09 14:09:47 +01:00
Jenkins Server
54dac50800 Merge remote-tracking branch 'origin/master' into jenkins-build-184 2026-03-09 14:08:28 +01:00
Jenkins Server
3de014c183 Recommit for updates in build 183 2026-03-09 14:04:51 +01:00
Jenkins Server
b0cc72be99 Merge remote-tracking branch 'origin/master' into jenkins-build-183 2026-03-09 14:03:34 +01:00
Jenkins Server
b43fb9ec44 Recommit for updates in build 182 2026-03-09 13:17:16 +01:00
Jenkins Server
63e06e0841 Merge remote-tracking branch 'origin/master' into jenkins-build-182 2026-03-09 13:16:07 +01:00
Jenkins Server
db6619c68b Recommit for updates in build 181 2026-03-09 13:15:40 +01:00
Jenkins Server
3a0ff284be Merge remote-tracking branch 'origin/master' into jenkins-build-181 2026-03-09 13:14:33 +01:00
Jenkins Server
356b6337e6 Recommit for updates in build 180 2026-03-09 13:11:03 +01:00
Jenkins Server
f6f6d50215 Merge remote-tracking branch 'origin/master' into jenkins-build-180 2026-03-09 13:09:53 +01:00
Jenkins Server
de84a0c59d Recommit for updates in build 179 2026-03-09 12:09:13 +01:00
Jenkins Server
01cf6314a5 Merge remote-tracking branch 'origin/master' into jenkins-build-179 2026-03-09 12:08:09 +01:00
Jenkins Server
4f531fc3b8 Recommit for updates in build 178 2026-03-08 16:37:05 +01:00
Jenkins Server
df0823c6bd Merge remote-tracking branch 'origin/master' into jenkins-build-178 2026-03-08 16:35:52 +01:00
Jenkins Server
4ab5921dff Recommit for updates in build 177 2026-03-08 16:16:31 +01:00
Jenkins Server
e30325c6aa Merge remote-tracking branch 'origin/master' into jenkins-build-177 2026-03-08 16:15:16 +01:00
Jenkins Server
88637b0524 Recommit for updates in build 176 2026-03-08 15:27:19 +01:00
Jenkins Server
bb67889fb7 Merge remote-tracking branch 'origin/master' into jenkins-build-176 2026-03-08 15:26:06 +01:00
Jenkins Server
d4d285f337 Merge remote-tracking branch 'origin/master' into jenkins-build-175 2026-03-08 15:18:51 +01:00
Jenkins Server
d64953e03b Merge remote-tracking branch 'origin/master' into jenkins-build-174 2026-03-08 15:09:51 +01:00
Jenkins Server
52f0963d9e Merge remote-tracking branch 'origin/master' into jenkins-build-172 2026-03-08 15:06:46 +01:00
Jenkins Server
889ab9d7af Merge remote-tracking branch 'origin/master' into jenkins-build-171 2026-03-08 15:03:21 +01:00
Jenkins Server
d57e242f12 Merge remote-tracking branch 'origin/master' into jenkins-build-170 2026-03-08 15:00:41 +01:00
Jenkins Server
9a9bf3d781 Merge remote-tracking branch 'origin/master' into jenkins-build-169 2026-03-08 14:50:36 +01:00
Jenkins Server
b853d5c504 Recommit for updates in build 168 2026-03-08 14:48:15 +01:00
Jenkins Server
dafa73e458 Merge remote-tracking branch 'origin/master' into jenkins-build-168 2026-03-08 14:47:01 +01:00
Jenkins Server
e378ab33cc Merge remote-tracking branch 'origin/master' into jenkins-build-167 2026-03-08 14:42:36 +01:00
Jenkins Server
c285e943a3 Merge remote-tracking branch 'origin/master' into jenkins-build-166 2026-03-08 14:40:00 +01:00
Jenkins Server
3d6e5d45fe Recommit for updates in build 165 2026-03-08 14:38:25 +01:00
Jenkins Server
fed50cda7d Merge remote-tracking branch 'origin/master' into jenkins-build-165 2026-03-08 14:37:11 +01:00
Jenkins Server
935e5ec4d9 Recommit for updates in build 164 2026-03-08 14:33:39 +01:00
Jenkins Server
7bf8234127 Merge remote-tracking branch 'origin/master' into jenkins-build-164 2026-03-08 14:32:26 +01:00
Jenkins Server
221ec836ed Recommit for updates in build 163 2026-03-08 14:20:36 +01:00
Jenkins Server
73ef39f6eb Merge remote-tracking branch 'origin/master' into jenkins-build-163 2026-03-08 14:19:17 +01:00
Jenkins Server
655fc8b3e6 Recommit for updates in build 162 2026-03-07 17:01:26 +01:00
Jenkins Server
2bc1023aaa Merge remote-tracking branch 'origin/master' into jenkins-build-162 2026-03-07 17:00:11 +01:00
Jenkins Server
4dd935eba3 Recommit for updates in build 161 2026-03-07 16:36:13 +01:00
Jenkins Server
8312e0dbf4 Merge remote-tracking branch 'origin/master' into jenkins-build-161 2026-03-07 16:35:00 +01:00
Jenkins Server
6347aa5ee0 Recommit for updates in build 160 2026-03-07 16:31:15 +01:00
Jenkins Server
fccde18415 Merge remote-tracking branch 'origin/master' into jenkins-build-160 2026-03-07 16:30:01 +01:00
Jenkins Server
20ab0563dd Recommit for updates in build 159 2026-03-07 16:00:55 +01:00
Jenkins Server
f2b063112c Merge remote-tracking branch 'origin/master' into jenkins-build-159 2026-03-07 15:59:40 +01:00
Jenkins Server
39cbd2b370 Recommit for updates in build 158 2026-03-07 15:50:04 +01:00
Jenkins Server
540366a09b Merge remote-tracking branch 'origin/master' into jenkins-build-158 2026-03-07 15:48:50 +01:00
Jenkins Server
ab4e5bddb7 Recommit for updates in build 157 2026-03-07 15:44:33 +01:00
Jenkins Server
aa3ea7ba52 Merge remote-tracking branch 'origin/master' into jenkins-build-157 2026-03-07 15:43:20 +01:00
Jenkins Server
461cb526c3 Recommit for updates in build 156 2026-03-07 15:41:09 +01:00
Jenkins Server
291fcf50b8 Merge remote-tracking branch 'origin/master' into jenkins-build-156 2026-03-07 15:39:55 +01:00
Jenkins Server
7bbe138b36 Merge remote-tracking branch 'origin/master' into jenkins-build-155 2026-03-07 15:11:10 +01:00
Jenkins Server
2d32be17bc Recommit for updates in build 154 2026-03-07 15:02:43 +01:00
Jenkins Server
ec636af465 Merge remote-tracking branch 'origin/master' into jenkins-build-154 2026-03-07 15:01:31 +01:00
Jenkins Server
700a54e2cc Recommit for updates in build 153 2026-03-07 14:11:48 +01:00
Jenkins Server
cf1d30c353 Merge remote-tracking branch 'origin/master' into jenkins-build-153 2026-03-07 14:10:35 +01:00
Jenkins Server
6693ff8282 Recommit for updates in build 152 2026-03-07 13:28:18 +01:00
Jenkins Server
ed8721b93e Merge remote-tracking branch 'origin/master' into jenkins-build-152 2026-03-07 13:27:05 +01:00
Jenkins Server
63fa66195a Recommit for updates in build 151 2026-03-07 12:47:20 +01:00
Jenkins Server
8ad7ca6200 Merge remote-tracking branch 'origin/master' into jenkins-build-151 2026-03-07 12:46:09 +01:00
Jenkins Server
5b75dc7329 Recommit for updates in build 150 2026-03-07 12:29:52 +01:00
Jenkins Server
0b44edd0e9 Merge remote-tracking branch 'origin/master' into jenkins-build-150 2026-03-07 12:28:39 +01:00
Jenkins Server
e823d48e5e Recommit for updates in build 149 2026-03-07 12:16:47 +01:00
Jenkins Server
d350c5ff0e Merge remote-tracking branch 'origin/master' into jenkins-build-149 2026-03-07 12:15:34 +01:00
Jenkins Server
0ae6948075 Recommit for updates in build 148 2026-03-07 12:07:54 +01:00
Jenkins Server
3929d22995 Merge remote-tracking branch 'origin/master' into jenkins-build-148 2026-03-07 12:06:40 +01:00
Jenkins Server
8029484a86 Recommit for updates in build 147 2026-03-07 11:39:33 +01:00
Jenkins Server
72708b988c Merge remote-tracking branch 'origin/master' into jenkins-build-147 2026-03-07 11:38:20 +01:00
Jenkins Server
30ecd8e79f Recommit for updates in build 146 2026-03-07 11:13:02 +01:00
Jenkins Server
2540817955 Merge remote-tracking branch 'origin/master' into jenkins-build-146 2026-03-07 11:11:44 +01:00
Jenkins Server
a3b2cd5edc Recommit for updates in build 145 2026-03-07 11:10:03 +01:00
Jenkins Server
fe29a69be1 Merge remote-tracking branch 'origin/master' into jenkins-build-145 2026-03-07 11:08:46 +01:00
Jenkins Server
683c43f012 Recommit for updates in build 144 2026-03-06 15:15:05 +01:00
Jenkins Server
08382f6f9a Merge remote-tracking branch 'origin/master' into jenkins-build-144 2026-03-06 15:13:54 +01:00
Jenkins Server
eed4dcee71 Recommit for updates in build 142 2026-03-06 12:24:51 +01:00
Jenkins Server
a8eb0c7ebd Merge remote-tracking branch 'origin/master' into jenkins-build-142 2026-03-06 12:23:38 +01:00
Jenkins Server
bd083f6ae9 Recommit for updates in build 141 2026-03-06 12:09:31 +01:00
Jenkins Server
596e2e8f98 Merge remote-tracking branch 'origin/master' into jenkins-build-141 2026-03-06 12:08:18 +01:00
Jenkins Server
2395ba76d8 Recommit for updates in build 140 2026-03-06 12:06:19 +01:00
Jenkins Server
f34ad2f23a Merge remote-tracking branch 'origin/master' into jenkins-build-140 2026-03-06 12:05:03 +01:00
Jenkins Server
a27bc730ba Recommit for updates in build 139 2026-03-05 11:37:04 +01:00
Jenkins Server
1f3fe3f6fe Merge remote-tracking branch 'origin/master' into jenkins-build-139 2026-03-05 11:35:45 +01:00
Jenkins Server
da98abb946 Recommit for updates in build 138 2026-03-02 15:32:19 +01:00
Jenkins Server
9eff3b3b05 Merge remote-tracking branch 'origin/master' into jenkins-build-138 2026-03-02 15:31:03 +01:00
Jenkins Server
2ec2945360 Recommit for updates in build 137 2026-03-02 15:25:56 +01:00
Jenkins Server
8ad2ce86b3 Merge remote-tracking branch 'origin/master' into jenkins-build-137 2026-03-02 15:24:43 +01:00
Jenkins Server
194f26fef9 Recommit for updates in build 136 2026-03-02 15:16:23 +01:00
Jenkins Server
acba5ea8c3 Merge remote-tracking branch 'origin/master' into jenkins-build-136 2026-03-02 15:15:08 +01:00
Jenkins Server
e9c06c3384 Recommit for updates in build 135 2026-03-02 15:03:25 +01:00
Jenkins Server
2561a3cc7c Merge remote-tracking branch 'origin/master' into jenkins-build-135 2026-03-02 15:02:13 +01:00
Jenkins Server
d64e896855 Recommit for updates in build 134 2026-03-02 14:27:37 +01:00
Jenkins Server
265e42d5c3 Merge remote-tracking branch 'origin/master' into jenkins-build-134 2026-03-02 14:26:22 +01:00
Jenkins Server
b864c0545a Recommit for updates in build 133 2026-03-02 14:24:11 +01:00
Jenkins Server
3d1b116e1b Merge remote-tracking branch 'origin/master' into jenkins-build-133 2026-03-02 14:22:58 +01:00
Jenkins Server
6ad60490ab Recommit for updates in build 132 2026-03-02 14:21:21 +01:00
Jenkins Server
6029397342 Merge remote-tracking branch 'origin/master' into jenkins-build-132 2026-03-02 14:20:04 +01:00
Jenkins Server
4b2891c7ae Recommit for updates in build 131 2026-03-02 02:10:23 +01:00
Jenkins Server
55fe99fd03 Merge remote-tracking branch 'origin/master' into jenkins-build-131 2026-03-02 02:08:56 +01:00
Jenkins Server
4264163fa9 Recommit for updates in build 130 2026-03-02 01:59:43 +01:00
Jenkins Server
2781ada54d Merge remote-tracking branch 'origin/master' into jenkins-build-130 2026-03-02 01:58:35 +01:00
Jenkins Server
fe76d3481c Recommit for updates in build 129 2026-03-02 01:55:38 +01:00
Jenkins Server
38f36cab37 Merge remote-tracking branch 'origin/master' into jenkins-build-129 2026-03-02 01:54:29 +01:00
Jenkins Server
d1514248e8 Recommit for updates in build 128 2026-03-02 01:52:35 +01:00
Jenkins Server
0dc038f1c4 Merge remote-tracking branch 'origin/master' into jenkins-build-128 2026-03-02 01:51:29 +01:00
Jenkins Server
0b01333fe9 Recommit for updates in build 127 2026-03-02 01:49:32 +01:00
Jenkins Server
d58fb4dbba Merge remote-tracking branch 'origin/master' into jenkins-build-127 2026-03-02 01:48:24 +01:00
Jenkins Server
807a76efbe Recommit for updates in build 126 2026-03-02 01:38:25 +01:00
Jenkins Server
6d551e75e6 Merge remote-tracking branch 'origin/master' into jenkins-build-126 2026-03-02 01:37:19 +01:00
Jenkins Server
c27ab71862 Recommit for updates in build 125 2026-03-02 01:30:07 +01:00
Jenkins Server
d8e540998e Merge remote-tracking branch 'origin/master' into jenkins-build-125 2026-03-02 01:28:59 +01:00
Jenkins Server
4f83a93646 Recommit for updates in build 124 2026-03-02 00:56:27 +01:00
Jenkins Server
d1a08bcdfb Merge remote-tracking branch 'origin/master' into jenkins-build-124 2026-03-02 00:55:19 +01:00
Jenkins Server
3efe7e0eb1 Merge remote-tracking branch 'origin/master' into jenkins-build-123 2026-03-02 00:48:34 +01:00
Jenkins Server
65ed23a60a Recommit for updates in build 122 2026-03-02 00:45:37 +01:00
Jenkins Server
7bcfcafdde Merge remote-tracking branch 'origin/master' into jenkins-build-122 2026-03-02 00:44:29 +01:00
Jenkins Server
c5bc646a0a Recommit for updates in build 121 2026-03-02 00:21:04 +01:00
Jenkins Server
bdfe2018ac Merge remote-tracking branch 'origin/master' into jenkins-build-121 2026-03-02 00:19:54 +01:00
Jenkins Server
004cac8c9b Recommit for updates in build 120 2026-03-02 00:14:24 +01:00
Jenkins Server
6e9bcd1528 Merge remote-tracking branch 'origin/master' into jenkins-build-120 2026-03-02 00:13:14 +01:00
Jenkins Server
8bf496683f Recommit for updates in build 119 2026-03-02 00:10:24 +01:00
Jenkins Server
446fbfdaf3 Merge remote-tracking branch 'origin/master' into jenkins-build-119 2026-03-02 00:09:14 +01:00
Jenkins Server
984bc01b96 Recommit for updates in build 118 2026-03-02 00:03:16 +01:00
Jenkins Server
c8f86173f6 Merge remote-tracking branch 'origin/master' into jenkins-build-118 2026-03-02 00:02:09 +01:00
Jenkins Server
306649ea66 Recommit for updates in build 117 2026-03-01 23:43:50 +01:00
Jenkins Server
a4432d41e1 Merge remote-tracking branch 'origin/master' into jenkins-build-117 2026-03-01 23:42:44 +01:00
Jenkins Server
3aa6753107 Recommit for updates in build 116 2026-03-01 19:14:15 +01:00
Jenkins Server
e556017c65 Merge remote-tracking branch 'origin/master' into jenkins-build-116 2026-03-01 19:13:08 +01:00
Jenkins Server
c4ba1f4d94 Merge remote-tracking branch 'origin/master' into jenkins-build-115 2026-03-01 19:00:23 +01:00
Jenkins Server
9fd590c310 Recommit for updates in build 114 2026-03-01 18:56:24 +01:00
Jenkins Server
d26cbfcba1 Merge remote-tracking branch 'origin/master' into jenkins-build-114 2026-03-01 18:55:18 +01:00
Jenkins Server
7ab909e442 Recommit for updates in build 113 2026-03-01 18:54:29 +01:00
Jenkins Server
80dfe1c8f3 Merge remote-tracking branch 'origin/master' into jenkins-build-113 2026-03-01 18:53:23 +01:00
Jenkins Server
a5978428e4 Recommit for updates in build 112 2026-03-01 18:41:44 +01:00
Jenkins Server
ae6cafa4c2 Merge remote-tracking branch 'origin/master' into jenkins-build-112 2026-03-01 18:40:37 +01:00
Jenkins Server
1d06a8e826 Recommit for updates in build 111 2026-03-01 18:33:44 +01:00
Jenkins Server
420e165935 Merge remote-tracking branch 'origin/master' into jenkins-build-111 2026-03-01 18:32:38 +01:00
Jenkins Server
ff5c2a209a Recommit for updates in build 110 2026-03-01 18:16:55 +01:00
Jenkins Server
c9a583988c Merge remote-tracking branch 'origin/master' into jenkins-build-110 2026-03-01 18:15:48 +01:00
Jenkins Server
5cf398a6f6 Recommit for updates in build 109 2026-03-01 17:33:29 +01:00
Jenkins Server
e20728ec2e Merge remote-tracking branch 'origin/master' into jenkins-build-109 2026-03-01 17:32:23 +01:00
Jenkins Server
d0bcb7a9cb Recommit for updates in build 108 2026-03-01 17:18:26 +01:00
Jenkins Server
a5997fc13f Merge remote-tracking branch 'origin/master' into jenkins-build-108 2026-03-01 17:17:17 +01:00
Jenkins Server
59b959d921 Recommit for updates in build 107 2026-03-01 17:03:57 +01:00
Jenkins Server
50301bcf9d Merge remote-tracking branch 'origin/master' into jenkins-build-107 2026-03-01 17:02:52 +01:00
Jenkins Server
230b6dfbbd Recommit for updates in build 106 2026-03-01 17:02:24 +01:00
Jenkins Server
52492d82f3 Merge remote-tracking branch 'origin/master' into jenkins-build-106 2026-03-01 17:01:17 +01:00
Jenkins Server
303d5d56d4 Recommit for updates in build 105 2026-03-01 16:57:43 +01:00
Jenkins Server
3456e0ef6b Merge remote-tracking branch 'origin/master' into jenkins-build-105 2026-03-01 16:56:37 +01:00
Jenkins Server
d621d1bc38 Recommit for updates in build 104 2026-03-01 16:51:49 +01:00
Jenkins Server
c52c396fa5 Merge remote-tracking branch 'origin/master' into jenkins-build-104 2026-03-01 16:50:42 +01:00
Jenkins Server
12d985de26 Recommit for updates in build 103 2026-03-01 16:46:47 +01:00
Jenkins Server
8f54ebdea2 Merge remote-tracking branch 'origin/master' into jenkins-build-103 2026-03-01 16:45:42 +01:00
Jenkins Server
8bae211dd8 Recommit for updates in build 102 2026-03-01 16:44:11 +01:00
Jenkins Server
e09ce12efb Merge remote-tracking branch 'origin/master' into jenkins-build-102 2026-03-01 16:43:07 +01:00
Jenkins Server
009be3ce73 Recommit for updates in build 101 2026-03-01 16:42:08 +01:00
Jenkins Server
6384ba683e Merge remote-tracking branch 'origin/master' into jenkins-build-101 2026-03-01 16:41:02 +01:00
Jenkins Server
9e1105e21e Recommit for updates in build 100 2026-03-01 16:39:49 +01:00
Jenkins Server
83f263efcc Merge remote-tracking branch 'origin/master' into jenkins-build-100 2026-03-01 16:38:42 +01:00
Jenkins Server
3dcc1ea446 Recommit for updates in build 99 2026-03-01 16:32:32 +01:00
Jenkins Server
cfa43939ed Merge remote-tracking branch 'origin/master' into jenkins-build-99 2026-03-01 16:31:27 +01:00
Jenkins Server
f2398fd306 Recommit for updates in build 98 2026-03-01 16:29:23 +01:00
Jenkins Server
23ee2bb380 Merge remote-tracking branch 'origin/master' into jenkins-build-98 2026-03-01 16:28:17 +01:00
Jenkins Server
f5bc2e3d51 Recommit for updates in build 97 2026-03-01 16:24:35 +01:00
Jenkins Server
f37c0ce0c8 Merge remote-tracking branch 'origin/master' into jenkins-build-97 2026-03-01 16:23:31 +01:00
Jenkins Server
149f0566c8 Recommit for updates in build 96 2026-03-01 16:19:26 +01:00
Jenkins Server
4e668ee4b2 Merge remote-tracking branch 'origin/master' into jenkins-build-96 2026-03-01 16:18:22 +01:00
Jenkins Server
297553ab46 Recommit for updates in build 95 2026-03-01 16:16:25 +01:00
Jenkins Server
36238a721b Merge remote-tracking branch 'origin/master' into jenkins-build-95 2026-03-01 16:15:22 +01:00
Jenkins Server
59977434a4 Recommit for updates in build 94 2026-03-01 16:05:37 +01:00
Jenkins Server
186ac97077 Merge remote-tracking branch 'origin/master' into jenkins-build-94 2026-03-01 16:04:31 +01:00
Jenkins Server
57590d86e5 Recommit for updates in build 93 2026-03-01 16:03:55 +01:00
Jenkins Server
3279132f4d Merge remote-tracking branch 'origin/master' into jenkins-build-93 2026-03-01 16:02:52 +01:00
Jenkins Server
10b1b035c5 Recommit for updates in build 92 2026-03-01 15:52:44 +01:00
Jenkins Server
37266ad5de Merge remote-tracking branch 'origin/master' into jenkins-build-92 2026-03-01 15:51:42 +01:00
Jenkins Server
4b89b63b4c Recommit for updates in build 91 2026-03-01 15:31:42 +01:00
Jenkins Server
ca5fdbf711 Merge remote-tracking branch 'origin/master' into jenkins-build-91 2026-03-01 15:30:41 +01:00
Jenkins Server
32c0f85af5 Recommit for updates in build 90 2026-03-01 15:25:48 +01:00
Jenkins Server
43c71717d8 Merge remote-tracking branch 'origin/master' into jenkins-build-90 2026-03-01 15:24:46 +01:00
Jenkins Server
4cd2b6a679 Recommit for updates in build 89 2026-03-01 15:14:01 +01:00
Jenkins Server
1dd1644b64 Merge remote-tracking branch 'origin/master' into jenkins-build-89 2026-03-01 15:13:02 +01:00
Jenkins Server
dd0f0f88cd Recommit for updates in build 88 2026-03-01 14:57:58 +01:00
Jenkins Server
0215e89efe Merge remote-tracking branch 'origin/master' into jenkins-build-88 2026-03-01 14:57:01 +01:00
Jenkins Server
7cf2b70c78 Recommit for updates in build 87 2026-03-01 14:52:37 +01:00
Jenkins Server
4b17bf190e Merge remote-tracking branch 'origin/master' into jenkins-build-87 2026-03-01 14:51:41 +01:00
Jenkins Server
324182cf25 Recommit for updates in build 86 2026-03-01 14:50:02 +01:00
Jenkins Server
d84a511632 Merge remote-tracking branch 'origin/master' into jenkins-build-86 2026-03-01 14:49:06 +01:00
Jenkins Server
b40a4dbc2d Recommit for updates in build 85 2026-03-01 14:47:55 +01:00
Jenkins Server
4aa0eaa9c2 Merge remote-tracking branch 'origin/master' into jenkins-build-85 2026-03-01 14:46:56 +01:00
Jenkins Server
6f76c50cef Recommit for updates in build 84 2026-03-01 14:36:05 +01:00
Jenkins Server
fd6aa1e5fa Merge remote-tracking branch 'origin/master' into jenkins-build-84 2026-03-01 14:35:11 +01:00
Jenkins Server
64b6940bab Recommit for updates in build 83 2026-03-01 14:22:56 +01:00
Jenkins Server
1f5c606517 Merge remote-tracking branch 'origin/master' into jenkins-build-83 2026-03-01 14:21:58 +01:00
Jenkins Server
8bab253131 Recommit for updates in build 82 2026-02-28 17:00:45 +01:00
Jenkins Server
b1973ecd27 Merge remote-tracking branch 'origin/master' into jenkins-build-82 2026-02-28 16:59:52 +01:00
Jenkins Server
a8e1a45e23 Recommit for updates in build 81 2026-02-28 16:45:52 +01:00
Jenkins Server
6690f381af Merge remote-tracking branch 'origin/master' into jenkins-build-81 2026-02-28 16:45:02 +01:00
Jenkins Server
e4dd2ba22c Recommit for updates in build 80 2026-02-28 16:42:37 +01:00
Jenkins Server
cc37b4ffea Merge remote-tracking branch 'origin/master' into jenkins-build-80 2026-02-28 16:41:46 +01:00
Jenkins Server
c07c947a58 Recommit for updates in build 79 2026-02-28 16:40:27 +01:00
Jenkins Server
79e728478d Merge remote-tracking branch 'origin/master' into jenkins-build-79 2026-02-28 16:39:36 +01:00
Jenkins Server
d6ae4ad771 Recommit for updates in build 78 2026-02-28 16:18:15 +01:00
Jenkins Server
567fec51c6 Merge remote-tracking branch 'origin/master' into jenkins-build-78 2026-02-28 16:17:22 +01:00
Jenkins Server
d1e6332865 Recommit for updates in build 77 2026-02-28 15:54:09 +01:00
Jenkins Server
a94f64033a Merge remote-tracking branch 'origin/master' into jenkins-build-77 2026-02-28 15:53:18 +01:00
Jenkins Server
22fc27ffe3 Merge remote-tracking branch 'origin/master' into jenkins-build-76 2026-02-24 22:25:09 +01:00
Jenkins Server
ca75be7aec Merge remote-tracking branch 'origin/master' into jenkins-build-74 2026-02-23 20:02:46 +01:00
Jenkins Server
823404bc30 Merge remote-tracking branch 'origin/master' into jenkins-build-73 2026-02-21 14:40:12 +01:00
Jenkins Server
102a5642bf Recommit for updates in build 72 2026-02-21 14:31:35 +01:00
Jenkins Server
5dd5eefe40 Merge remote-tracking branch 'origin/master' into jenkins-build-72 2026-02-21 14:30:47 +01:00
Jenkins Server
e7901aee45 Recommit for updates in build 71 2026-02-21 14:22:21 +01:00
Jenkins Server
3abe0915f4 Merge remote-tracking branch 'origin/master' into jenkins-build-71 2026-02-21 14:21:32 +01:00
Jenkins Server
dd7f045e06 Merge remote-tracking branch 'origin/master' into jenkins-build-70 2026-02-21 14:09:27 +01:00
Jenkins Server
ff956142a6 Recommit for updates in build 69 2026-02-21 14:05:20 +01:00
Jenkins Server
f3324c3a73 Merge remote-tracking branch 'origin/master' into jenkins-build-69 2026-02-21 14:04:28 +01:00
Jenkins Server
fe55534943 Recommit for updates in build 68 2026-02-21 13:45:51 +01:00
Jenkins Server
82f5b1f24a Merge remote-tracking branch 'origin/master' into jenkins-build-68 2026-02-21 13:45:02 +01:00
Jenkins Server
c139d477e3 Recommit for updates in build 67 2026-02-21 13:34:11 +01:00
Jenkins Server
ae673a9c6d Merge remote-tracking branch 'origin/master' into jenkins-build-67 2026-02-21 13:33:22 +01:00
Jenkins Server
f9bd74c2c0 Recommit for updates in build 66 2026-02-21 13:19:42 +01:00
Jenkins Server
6d06d7e7ba Merge remote-tracking branch 'origin/master' into jenkins-build-66 2026-02-21 13:18:52 +01:00
Jenkins Server
43a754f741 Recommit for updates in build 65 2026-02-21 13:09:22 +01:00
Jenkins Server
2a6b223be8 Merge remote-tracking branch 'origin/master' into jenkins-build-65 2026-02-21 13:08:30 +01:00
Jenkins Server
d67a91407c Recommit for updates in build 64 2026-02-19 17:47:54 +01:00
Jenkins Server
1e9c88aa8d Merge remote-tracking branch 'origin/master' into jenkins-build-64 2026-02-19 17:47:07 +01:00
Jenkins Server
6cad7116f9 Recommit for updates in build 63 2026-02-19 17:02:05 +01:00
Jenkins Server
c6b98b7b4d Merge remote-tracking branch 'origin/master' into jenkins-build-63 2026-02-19 17:01:17 +01:00
Jenkins Server
2113da203e Recommit for updates in build 62 2026-02-19 16:50:31 +01:00
Jenkins Server
e264b8ea59 Merge remote-tracking branch 'origin/master' into jenkins-build-62 2026-02-19 16:49:42 +01:00
Jenkins Server
9334859591 Recommit for updates in build 61 2026-02-19 16:31:22 +01:00
Jenkins Server
f482df1bd4 Merge remote-tracking branch 'origin/master' into jenkins-build-61 2026-02-19 16:30:32 +01:00
Jenkins Server
58dc4cf2b0 Recommit for updates in build 60 2026-02-19 16:23:57 +01:00
Jenkins Server
924fe8d391 Merge remote-tracking branch 'origin/master' into jenkins-build-60 2026-02-19 16:22:59 +01:00
Jenkins Server
afdcc899d4 Recommit for updates in build 59 2026-02-14 21:44:59 +01:00
Jenkins Server
69a080581b Merge remote-tracking branch 'origin/master' into jenkins-build-59 2026-02-14 21:44:08 +01:00
Jenkins Server
0e8399b67d Recommit for updates in build 58 2026-02-14 21:41:14 +01:00
Jenkins Server
a9cf968105 Merge remote-tracking branch 'origin/master' into jenkins-build-58 2026-02-14 21:40:23 +01:00
Jenkins Server
66e28f0482 Recommit for updates in build 57 2026-02-14 21:29:11 +01:00
Jenkins Server
1c7215b4dc Merge remote-tracking branch 'origin/master' into jenkins-build-57 2026-02-14 21:28:22 +01:00
Jenkins Server
7704eea506 Recommit for updates in build 54 2026-02-14 21:06:16 +01:00
Jenkins Server
2959e38b8c Merge remote-tracking branch 'origin/master' into jenkins-build-54 2026-02-14 21:05:27 +01:00
Jenkins Server
418e3e1f68 Recommit for updates in build 53 2026-02-14 20:42:12 +01:00
Jenkins Server
096f325ce5 Merge remote-tracking branch 'origin/master' into jenkins-build-53 2026-02-14 20:41:27 +01:00
Jenkins Server
894146d4c7 Recommit for updates in build 52 2026-02-14 20:38:09 +01:00
Jenkins Server
a4e4d258ba Merge remote-tracking branch 'origin/master' into jenkins-build-52 2026-02-14 20:37:22 +01:00
Jenkins Server
b5a46a3520 Recommit for updates in build 51 2026-02-14 20:11:19 +01:00
Jenkins Server
b1cc56fff4 Merge remote-tracking branch 'origin/master' into jenkins-build-51 2026-02-14 20:10:32 +01:00
Jenkins Server
5e1ab3e41d Recommit for updates in build 50 2026-02-14 20:04:31 +01:00
Jenkins Server
5b1b38e4e9 Merge remote-tracking branch 'origin/master' into jenkins-build-50 2026-02-14 20:03:42 +01:00
Jenkins Server
d229046526 Recommit for updates in build 49 2026-02-14 20:00:43 +01:00
Jenkins Server
3da4e9ee26 Merge remote-tracking branch 'origin/master' into jenkins-build-49 2026-02-14 19:59:52 +01:00
Jenkins Server
100017534b Recommit for updates in build 48 2026-02-14 19:53:27 +01:00
Jenkins Server
15dd540616 Merge remote-tracking branch 'origin/master' into jenkins-build-48 2026-02-14 19:52:37 +01:00
Jenkins Server
3e19179245 Recommit for updates in build 47 2026-02-14 19:41:42 +01:00
Jenkins Server
f12eb43a39 Merge remote-tracking branch 'origin/master' into jenkins-build-47 2026-02-14 19:40:52 +01:00
Jenkins Server
35c0b3dc2c Merge remote-tracking branch 'origin/master' into jenkins-build-46 2026-02-14 19:23:47 +01:00
Jenkins Server
90dbc7492d Merge remote-tracking branch 'origin/master' into jenkins-build-45 2026-02-14 19:10:41 +01:00
Jenkins Server
3a964a26f3 Merge remote-tracking branch 'origin/master' into jenkins-build-44 2026-02-14 19:01:02 +01:00
Jenkins Server
c74d2a8097 Recommit for updates in build 43 2026-02-14 18:58:00 +01:00
Jenkins Server
a8dabcc21a Merge remote-tracking branch 'origin/master' into jenkins-build-43 2026-02-14 18:57:11 +01:00
Jenkins Server
bee72b458d Recommit for updates in build 42 2026-02-14 18:49:41 +01:00
Jenkins Server
05ad66dfe2 Merge remote-tracking branch 'origin/master' into jenkins-build-42 2026-02-14 18:48:52 +01:00
Jenkins Server
3f357de8d4 Recommit for updates in build 41 2026-02-14 18:41:39 +01:00
Jenkins Server
6f2ebf570d Merge remote-tracking branch 'origin/master' into jenkins-build-41 2026-02-14 18:40:47 +01:00
Jenkins Server
cce5275855 Recommit for updates in build 40 2026-02-14 18:35:02 +01:00
Jenkins Server
a17d281ac2 Merge remote-tracking branch 'origin/master' into jenkins-build-40 2026-02-14 18:34:11 +01:00
Jenkins Server
9f23ef11a0 Recommit for updates in build 39 2026-02-14 18:23:39 +01:00
Jenkins Server
3c8339a587 Merge remote-tracking branch 'origin/master' into jenkins-build-39 2026-02-14 18:22:51 +01:00
Jenkins Server
c01b9dd09b Recommit for updates in build 38 2026-02-14 18:17:41 +01:00
Jenkins Server
4ffdeca06c Merge remote-tracking branch 'origin/master' into jenkins-build-38 2026-02-14 18:16:51 +01:00
Jenkins Server
e15e4cfe3d Recommit for updates in build 37 2026-02-14 18:11:29 +01:00
Jenkins Server
963aefd11d Merge remote-tracking branch 'origin/master' into jenkins-build-37 2026-02-14 18:10:41 +01:00
Jenkins Server
1a5fedcb4a Recommit for updates in build 36 2026-02-14 18:08:21 +01:00
Jenkins Server
c1346092d4 Merge remote-tracking branch 'origin/master' into jenkins-build-36 2026-02-14 18:07:32 +01:00
Jenkins Server
448cfbf4f6 Recommit for updates in build 35 2026-02-14 16:47:46 +01:00
Jenkins Server
3a9e684a42 Merge remote-tracking branch 'origin/master' into jenkins-build-35 2026-02-14 16:46:56 +01:00
Jenkins Server
3a0316fd89 Recommit for updates in build 34 2026-02-14 16:39:37 +01:00
Jenkins Server
e858ad3680 Merge remote-tracking branch 'origin/master' into jenkins-build-34 2026-02-14 16:38:46 +01:00
Jenkins Server
83f463f351 Recommit for updates in build 33 2026-02-14 16:33:53 +01:00
Jenkins Server
4e19208553 Merge remote-tracking branch 'origin/master' into jenkins-build-33 2026-02-14 16:33:01 +01:00
Jenkins Server
521e41acc6 Recommit for updates in build 32 2026-02-14 16:25:48 +01:00
Jenkins Server
344a40123e Merge remote-tracking branch 'origin/master' into jenkins-build-32 2026-02-14 16:24:56 +01:00
Jenkins Server
903279b55e Recommit for updates in build 31 2026-02-14 16:23:43 +01:00
Jenkins Server
671131c1b9 Merge remote-tracking branch 'origin/master' into jenkins-build-31 2026-02-14 16:22:46 +01:00
Jenkins Server
c653713e8f Recommit for updates in build 30 2026-02-14 16:02:26 +01:00
Jenkins Server
4222c22a6d Merge remote-tracking branch 'origin/master' into jenkins-build-30 2026-02-14 16:01:36 +01:00
Jenkins Server
4fa3a6fb75 Recommit for updates in build 29 2026-02-14 15:59:53 +01:00
Jenkins Server
4fab6269df Merge remote-tracking branch 'origin/master' into jenkins-build-29 2026-02-14 15:59:05 +01:00
Jenkins Server
1937b9fd5c Recommit for updates in build 28 2026-02-14 15:55:55 +01:00
Jenkins Server
1a38e248ca Merge remote-tracking branch 'origin/master' into jenkins-build-28 2026-02-14 15:55:05 +01:00
Jenkins Server
48483b71f0 Recommit for updates in build 27 2026-02-14 15:47:15 +01:00
Jenkins Server
5999e92e36 Merge remote-tracking branch 'origin/master' into jenkins-build-27 2026-02-14 15:46:26 +01:00
Jenkins Server
5560538f36 Recommit for updates in build 26 2026-02-14 15:44:29 +01:00
Jenkins Server
ca0e745512 Merge remote-tracking branch 'origin/master' into jenkins-build-26 2026-02-14 15:43:40 +01:00
Jenkins Server
da716a4d81 Recommit for updates in build 25 2026-02-14 15:42:45 +01:00
Jenkins Server
d5dfe3bbbc Merge remote-tracking branch 'origin/master' into jenkins-build-25 2026-02-14 15:41:52 +01:00
Jenkins Server
336344f924 Recommit for updates in build 24 2026-02-13 19:45:53 +01:00
Jenkins Server
6522ebd91e Merge remote-tracking branch 'origin/master' into jenkins-build-24 2026-02-13 19:45:11 +01:00
Jenkins Server
743fbe2a72 Recommit for updates in build 23 2026-02-13 19:30:20 +01:00
54 changed files with 15062 additions and 351 deletions

127
Jenkinsfile vendored
View File

@@ -1,127 +0,0 @@
pipeline {
agent {
label 'puppet'
}
post {
always {
deleteDir() /* clean up our workspace */
}
success {
updateGitlabCommitStatus state: 'success'
}
failure {
updateGitlabCommitStatus state: 'failed'
step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: 'support@confdroid.com', sendToIndividuals: true])
}
}
options {
gitLabConnection('gitlab.confdroid.com')
}
stages {
stage('pull master') {
steps {
sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
sh '''
git config user.name "Jenkins Server"
git config user.email jenkins@confdroid.com
# Ensure we're on the development branch (triggered by push)
git checkout development
# Create jenkins branch from development
git checkout -b jenkins-build-$BUILD_NUMBER
# Optionally merge master into jenkins to ensure compatibility
git merge origin/master --no-ff || { echo "Merge conflict detected"; exit 1; }
'''
}
}
}
stage('puppet parser') {
steps {
sh '''for file in $(find . -iname \'*.pp\'); do
/opt/puppetlabs/bin/puppet parser validate --color false --render-as s --modulepath=modules $file || exit 1;
done;'''
}
}
stage('check templates') {
steps{
sh '''for file in $(find . -iname \'*.erb\');
do erb -P -x -T "-" $file | ruby -c || exit 1;
done;'''
}
}
stage('puppet-lint') {
steps {
sh '''/usr/local/bin/puppet-lint . \\
--no-variable_scope-check \\
|| { echo "Puppet lint failed"; exit 1; }
'''
}
}
stage('SonarScan') {
steps {
withCredentials([string(credentialsId: 'sonar-token', variable: 'SONAR_TOKEN')]) {
sh '''
/opt/sonar-scanner/bin/sonar-scanner \
-Dsonar.projectKey=confdroid_nagios \
-Dsonar.sources=. \
-Dsonar.host.url=https://sonarqube.confdroid.com \
-Dsonar.token=$SONAR_TOKEN
'''
}
}
}
stage('create Puppet documentation') {
steps {
sh '/opt/puppetlabs/bin/puppet strings'
}
}
stage('update repo') {
steps {
sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
sh '''
git config user.name "Jenkins Server"
git config user.email jenkins@confdroid.com
git rm -r --cached .vscode || echo "No .vscode to remove from git"
git add -A && git commit -am "Recommit for updates in build $BUILD_NUMBER" || echo "No changes to commit"
git push origin HEAD:master
'''
}
}
}
stage('Mirror to Gitea') {
steps {
withCredentials([usernamePassword(
credentialsId: 'Jenkins-gitea',
usernameVariable: 'GITEA_USER',
passwordVariable: 'GITEA_TOKEN')]) {
script {
// Checkout from GitLab (already done implicitly)
sh '''
git checkout master
git pull origin master
git branch -D development
git branch -D jenkins-build-$BUILD_NUMBER
git rm -f Jenkinsfile
git rm -r --cached .vscode || echo "No .vscode to remove from git"
git commit --amend --no-edit --allow-empty
git remote add master https://sourcecode.confdroid.com/confdroid/confdroid_nagios.git
git -c credential.helper="!f() { echo username=${GITEA_USER}; echo password=${GITEA_TOKEN}; }; f" \
push master --mirror
'''
}
}
}
}
}
}

View File

@@ -20,6 +20,7 @@
- [Adding time periods](#adding-time-periods) - [Adding time periods](#adding-time-periods)
- [Adding custom commands](#adding-custom-commands) - [Adding custom commands](#adding-custom-commands)
- [Adding templates](#adding-templates) - [Adding templates](#adding-templates)
- [Customization outside of Puppet](#customization-outside-of-puppet)
- [PuppetDB](#puppetdb) - [PuppetDB](#puppetdb)
- [SELINUX](#selinux) - [SELINUX](#selinux)
- [Support](#support) - [Support](#support)
@@ -37,7 +38,7 @@ At this stage, the module is being redeveloped and being built to the latest sta
## WARNING ## WARNING
***Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production*** > **Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production**
## Features ## Features
@@ -48,6 +49,7 @@ At this stage, the module is being redeveloped and being built to the latest sta
- configures all required directories for server and clients and sets proper permissions and selinux contexts - configures all required directories for server and clients and sets proper permissions and selinux contexts
- configures the main nagios configuration file and sets values as (pre)configured per values in params, which can be overwritten. - configures the main nagios configuration file and sets values as (pre)configured per values in params, which can be overwritten.
- if `ng_include_nrpe`is set to `true`, the confdroid_nrpe module is automatically applied on clients ([confdroid_nrpe](https://sourcecode.confdroid.com/confdroid/confdroid_nrpe) must be in the catalogue then) - if `ng_include_nrpe`is set to `true`, the confdroid_nrpe module is automatically applied on clients ([confdroid_nrpe](https://sourcecode.confdroid.com/confdroid/confdroid_nrpe) must be in the catalogue then)
- if `ng_enable_fail2ban`is set to `true`, a fail2ban jail and filter will be added for the Nagios service (requires confdroid_fail2ban).
## Repo Documentation ## Repo Documentation
@@ -293,6 +295,11 @@ In order to add time periods, address the define `confdroid_nagios::nagios::obje
} }
``` ```
### Customization outside of Puppet
> Q: what if I want to add my own Nagios plugins, settings etc. outside of Puppet? Will those be overwritten?
A: Puppet only controls what it knows about. You can add your own custom configuration files within `/etc/nagios/conf.d` and Nagios should recognize it, assuming it is valid code. Just beware of duplicated definitions, Nagios is very strict and merciless about this.
## PuppetDB ## PuppetDB
A working instance of PuppetDB connected to the Puppet master is required for this to work. Installation and configuration of PuppetDB is out of scope for this module, however [cd_puppetdb](https://gitlab.confdroid.com/puppet/cd_puppetdb) is available to automate this task for you as well within a few minutes. A working instance of PuppetDB connected to the Puppet master is required for this to work. Installation and configuration of PuppetDB is out of scope for this module, however [cd_puppetdb](https://gitlab.confdroid.com/puppet/cd_puppetdb) is available to automate this task for you as well within a few minutes.

267
doc/_index.html Normal file
View File

@@ -0,0 +1,267 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = null;
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1 class="noborder title">Documentation by YARD 0.9.36</h1>
<div id="listing">
<h1 class="alphaindex">Alphabetic Index</h1>
<h2>Puppet Class Listing A-Z</h2>
<table>
<tr>
<td valign='top' width="33%">
<ul id="alpha_C" class="alpha">
<li class="letter">C</li>
<ul>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios.html" title="puppet_classes::confdroid_nagios (puppet_class)">confdroid_nagios</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aclient_3A_3Atarget.html" title="puppet_classes::confdroid_nagios::client::target (puppet_class)">confdroid_nagios::client::target</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_nagios::main::config (puppet_class)">confdroid_nagios::main::config</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_nagios::main::dirs (puppet_class)">confdroid_nagios::main::dirs</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_nagios::main::install (puppet_class)">confdroid_nagios::main::install</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amonitoring_3A_3Afail2ban.html" title="puppet_classes::confdroid_nagios::monitoring::fail2ban (puppet_class)">confdroid_nagios::monitoring::fail2ban</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aconfig.html" title="puppet_classes::confdroid_nagios::nagios::config (puppet_class)">confdroid_nagios::nagios::config</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_contact_rules (puppet_class)">confdroid_nagios::nagios::objects::add_contact_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_contactgroups_rules (puppet_class)">confdroid_nagios::nagios::objects::add_contactgroups_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_hostgroup_rules (puppet_class)">confdroid_nagios::nagios::objects::add_hostgroup_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_servicegroup_rules (puppet_class)">confdroid_nagios::nagios::objects::add_servicegroup_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_timeperiod_rules (puppet_class)">confdroid_nagios::nagios::objects::add_timeperiod_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html" title="puppet_classes::confdroid_nagios::nagios::objects::commands (puppet_class)">confdroid_nagios::nagios::objects::commands</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::template_rules (puppet_class)">confdroid_nagios::nagios::objects::template_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html" title="puppet_classes::confdroid_nagios::nagios::resources::resource (puppet_class)">confdroid_nagios::nagios::resources::resource</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Aaccess_rules.html" title="puppet_classes::confdroid_nagios::server::access_rules (puppet_class)">confdroid_nagios::server::access_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Afiles.html" title="puppet_classes::confdroid_nagios::server::files (puppet_class)">confdroid_nagios::server::files</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Anagios.html" title="puppet_classes::confdroid_nagios::server::nagios (puppet_class)">confdroid_nagios::server::nagios</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Aservice.html" title="puppet_classes::confdroid_nagios::server::service (puppet_class)">confdroid_nagios::server::service</a></span>
</li>
</ul>
</ul>
</td>
</tr>
</table>
<h2>Defined Type Listing A-Z</h2>
<table>
<tr>
<td valign='top' width="33%">
<ul id="alpha_C" class="alpha">
<li class="letter">C</li>
<ul>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_contact (puppet_defined_type)">confdroid_nagios::nagios::objects::add_contact</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_contactgroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_contactgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_hostgroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_hostgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_servicegroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_servicegroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_timeperiods (puppet_defined_type)">confdroid_nagios::nagios::objects::add_timeperiods</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::templates (puppet_defined_type)">confdroid_nagios::nagios::objects::templates</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html" title="puppet_defined_types::confdroid_nagios::nagios::resources::resource_df (puppet_defined_type)">confdroid_nagios::nagios::resources::resource_df</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Aserver_3A_3Aaccess.html" title="puppet_defined_types::confdroid_nagios::server::access (puppet_defined_type)">confdroid_nagios::server::access</a></span>
</li>
</ul>
</ul>
</td>
</tr>
</table>
<h2>File Listing</h2>
<ul id="files" class="index_inline_list">
<li class="r1"><a href="index.html" title="README">README</a></li>
</ul>
<div class="clear"></div>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

8
doc/css/common.css Normal file
View File

@@ -0,0 +1,8 @@
/* Ensure the search bar doesn't overlap with links */
.fixed_header {
padding-bottom: 25px;
}
#full_list {
padding-top: 15px;
}

58
doc/css/full_list.css Normal file
View File

@@ -0,0 +1,58 @@
body {
margin: 0;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
height: 101%;
overflow-x: hidden;
background: #fafafa;
}
h1 { padding: 12px 10px; padding-bottom: 0; margin: 0; font-size: 1.4em; }
.clear { clear: both; }
.fixed_header { position: fixed; background: #fff; width: 100%; padding-bottom: 10px; margin-top: 0; top: 0; z-index: 9999; height: 70px; }
#search { position: absolute; right: 5px; top: 9px; padding-left: 24px; }
#content.insearch #search, #content.insearch #noresults { background: url(data:image/gif;base64,R0lGODlhEAAQAPYAAP///wAAAPr6+pKSkoiIiO7u7sjIyNjY2J6engAAAI6OjsbGxjIyMlJSUuzs7KamppSUlPLy8oKCghwcHLKysqSkpJqamvT09Pj4+KioqM7OzkRERAwMDGBgYN7e3ujo6Ly8vCoqKjY2NkZGRtTU1MTExDw8PE5OTj4+PkhISNDQ0MrKylpaWrS0tOrq6nBwcKysrLi4uLq6ul5eXlxcXGJiYoaGhuDg4H5+fvz8/KKiohgYGCwsLFZWVgQEBFBQUMzMzDg4OFhYWBoaGvDw8NbW1pycnOLi4ubm5kBAQKqqqiQkJCAgIK6urnJyckpKSjQ0NGpqatLS0sDAwCYmJnx8fEJCQlRUVAoKCggICLCwsOTk5ExMTPb29ra2tmZmZmhoaNzc3KCgoBISEiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCAAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAkIAAAALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkECQgAAAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQJCAAAACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkECQgAAAAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAkIAAAALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==) no-repeat center left; }
#full_list { padding: 0; list-style: none; margin-left: 0; margin-top: 80px; font-size: 1.1em; }
#full_list ul { padding: 0; }
#full_list li { padding: 0; margin: 0; list-style: none; }
#full_list li .item { padding: 5px 5px 5px 12px; }
#noresults { padding: 7px 12px; background: #fff; }
#content.insearch #noresults { margin-left: 7px; }
li.collapsed ul { display: none; }
li a.toggle { cursor: default; position: relative; left: -5px; top: 4px; text-indent: -999px; width: 10px; height: 9px; margin-left: -10px; display: block; float: left; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left; }
li.collapsed a.toggle { opacity: 0.5; cursor: default; background-position: top left; }
li { color: #888; cursor: pointer; }
li.deprecated { text-decoration: line-through; font-style: italic; }
li.odd { background: #f0f0f0; }
li.even { background: #fafafa; }
.item:hover { background: #ddd; }
li small:before { content: "("; }
li small:after { content: ")"; }
li small.search_info { display: none; }
a, a:visited { text-decoration: none; color: #05a; }
li.clicked > .item { background: #05a; color: #ccc; }
li.clicked > .item a, li.clicked > .item a:visited { color: #eee; }
li.clicked > .item a.toggle { opacity: 0.5; background-position: bottom right; }
li.collapsed.clicked a.toggle { background-position: top right; }
#search input { border: 1px solid #bbb; border-radius: 3px; }
#full_list_nav { margin-left: 10px; font-size: 0.9em; display: block; color: #aaa; }
#full_list_nav a, #nav a:visited { color: #358; }
#full_list_nav a:hover { background: transparent; color: #5af; }
#full_list_nav span:after { content: ' | '; }
#full_list_nav span:last-child:after { content: ''; }
#content h1 { margin-top: 0; }
li { white-space: nowrap; cursor: normal; }
li small { display: block; font-size: 0.8em; }
li small:before { content: ""; }
li small:after { content: ""; }
li small.search_info { display: none; }
#search { width: 170px; position: static; margin: 3px; margin-left: 10px; font-size: 0.9em; color: #888; padding-left: 0; padding-right: 24px; }
#content.insearch #search { background-position: center right; }
#search input { width: 110px; }
#full_list.insearch ul { display: block; }
#full_list.insearch .item { display: none; }
#full_list.insearch .found { display: block; padding-left: 11px !important; }
#full_list.insearch li a.toggle { display: none; }
#full_list.insearch li small.search_info { display: block; }

497
doc/css/style.css Normal file
View File

@@ -0,0 +1,497 @@
html {
width: 100%;
height: 100%;
}
body {
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
width: 100%;
margin: 0;
padding: 0;
display: flex;
display: -webkit-flex;
display: -ms-flexbox;
}
#nav {
position: relative;
width: 100%;
height: 100%;
border: 0;
border-right: 1px dotted #eee;
overflow: auto;
}
.nav_wrap {
margin: 0;
padding: 0;
width: 20%;
height: 100%;
position: relative;
display: flex;
display: -webkit-flex;
display: -ms-flexbox;
flex-shrink: 0;
-webkit-flex-shrink: 0;
-ms-flex: 1 0;
}
#resizer {
position: absolute;
right: -5px;
top: 0;
width: 10px;
height: 100%;
cursor: col-resize;
z-index: 9999;
}
#main {
flex: 5 1;
-webkit-flex: 5 1;
-ms-flex: 5 1;
outline: none;
position: relative;
background: #fff;
padding: 1.2em;
padding-top: 0.2em;
box-sizing: border-box;
}
@media (max-width: 920px) {
.nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; }
#resizer { display: none; }
#nav {
z-index: 9999;
background: #fff;
display: none;
position: absolute;
top: 40px;
right: 12px;
width: 500px;
max-width: 80%;
height: 80%;
overflow-y: scroll;
border: 1px solid #999;
border-collapse: collapse;
box-shadow: -7px 5px 25px #aaa;
border-radius: 2px;
}
}
@media (min-width: 920px) {
body { height: 100%; overflow: hidden; }
#main { height: 100%; overflow: auto; }
#search { display: none; }
}
#main img { max-width: 100%; }
h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
h1.title { margin-bottom: 10px; }
h1.alphaindex { margin-top: 0; font-size: 22px; }
h2 {
padding: 0;
padding-bottom: 3px;
border-bottom: 1px #aaa solid;
font-size: 1.4em;
margin: 1.8em 0 0.5em;
position: relative;
}
h2 small { font-weight: normal; font-size: 0.7em; display: inline; position: absolute; right: 0; }
h2 small a {
display: block;
height: 20px;
border: 1px solid #aaa;
border-bottom: 0;
border-top-left-radius: 5px;
background: #f8f8f8;
position: relative;
padding: 2px 7px;
}
.clear { clear: both; }
.inline { display: inline; }
.inline p:first-child { display: inline; }
.docstring, .tags, #filecontents { font-size: 15px; line-height: 1.5145em; }
.docstring p > code, .docstring p > tt, .tags p > code, .tags p > tt {
color: #c7254e; background: #f9f2f4; padding: 2px 4px; font-size: 1em;
border-radius: 4px;
}
.docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
.docstring h1 { font-size: 1.2em; }
.docstring h2 { font-size: 1.1em; }
.docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
.summary_desc .object_link a, .docstring .object_link a {
font-family: monospace; font-size: 1.05em;
color: #05a; background: #EDF4FA; padding: 2px 4px; font-size: 1em;
border-radius: 4px;
}
.rdoc-term { padding-right: 25px; font-weight: bold; }
.rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
.summary_desc pre.code .object_link a, .docstring pre.code .object_link a {
padding: 0px; background: inherit; color: inherit; border-radius: inherit;
}
/* style for <table> */
#filecontents table, .docstring table { border-collapse: collapse; }
#filecontents table th, #filecontents table td,
.docstring table th, .docstring table td { border: 1px solid #ccc; padding: 8px; padding-right: 17px; }
#filecontents table tr:nth-child(odd),
.docstring table tr:nth-child(odd) { background: #eee; }
#filecontents table tr:nth-child(even),
.docstring table tr:nth-child(even) { background: #fff; }
#filecontents table th, .docstring table th { background: #fff; }
/* style for <ul> */
#filecontents li > p, .docstring li > p { margin: 0px; }
#filecontents ul, .docstring ul { padding-left: 20px; }
/* style for <dl> */
#filecontents dl, .docstring dl { border: 1px solid #ccc; }
#filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
#filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
#filecontents dd > p, .docstring dd > p { margin: 0px; }
.note {
color: #222;
margin: 20px 0;
padding: 10px;
border: 1px solid #eee;
border-radius: 3px;
display: block;
}
.docstring .note {
border-left-color: #ccc;
border-left-width: 5px;
}
.note.todo { background: #ffffc5; border-color: #ececaa; }
.note.returns_void { background: #efefef; }
.note.deprecated { background: #ffe5e5; border-color: #e9dada; }
.note.title.deprecated { background: #ffe5e5; border-color: #e9dada; }
.note.private { background: #ffffc5; border-color: #ececaa; }
.note.title { padding: 3px 6px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
.summary_signature + .note.title { margin-left: 7px; }
h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
.note.title { background: #efefef; }
.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
.note.title.not_defined_here { background: transparent; border: none; font-style: italic; }
.discussion .note { margin-top: 6px; }
.discussion .note:first-child { margin-top: 0; }
h3.inherited {
font-style: italic;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-weight: normal;
padding: 0;
margin: 0;
margin-top: 12px;
margin-bottom: 3px;
font-size: 13px;
}
p.inherited {
padding: 0;
margin: 0;
margin-left: 25px;
}
.box_info dl {
margin: 0;
border: 0;
width: 100%;
font-size: 1em;
display: flex;
display: -webkit-flex;
display: -ms-flexbox;
}
.box_info dl dt {
flex-shrink: 0;
-webkit-flex-shrink: 1;
-ms-flex-shrink: 1;
width: 100px;
text-align: right;
font-weight: bold;
border: 1px solid #aaa;
border-width: 1px 0px 0px 1px;
padding: 6px 0;
padding-right: 10px;
}
.box_info dl dd {
flex-grow: 1;
-webkit-flex-grow: 1;
-ms-flex: 1;
max-width: 420px;
padding: 6px 0;
padding-right: 20px;
border: 1px solid #aaa;
border-width: 1px 1px 0 0;
overflow: hidden;
position: relative;
}
.box_info dl:last-child > * {
border-bottom: 1px solid #aaa;
}
.box_info dl:nth-child(odd) > * { background: #eee; }
.box_info dl:nth-child(even) > * { background: #fff; }
.box_info dl > * { margin: 0; }
ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
.index_inline_list { padding-left: 0; font-size: 1.1em; }
.index_inline_list li {
list-style: none;
display: inline-block;
padding: 0 12px;
line-height: 30px;
margin-bottom: 5px;
}
dl.constants { margin-left: 10px; }
dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
dl.constants.compact dt { display: inline-block; font-weight: normal }
dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
dl.constants .docstring .note:first-child { margin-top: 5px; }
.summary_desc {
margin-left: 32px;
display: block;
font-family: sans-serif;
font-size: 1.1em;
margin-top: 8px;
line-height: 1.5145em;
margin-bottom: 0.8em;
}
.summary_desc tt { font-size: 0.9em; }
dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
dl.constants .discussion *:first-child { margin-top: 0; }
dl.constants .discussion *:last-child { margin-bottom: 0; }
.method_details { border-top: 1px dotted #ccc; margin-top: 25px; padding-top: 0; }
.method_details.first { border: 0; margin-top: 5px; }
.method_details.first h3.signature { margin-top: 1em; }
p.signature, h3.signature {
font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
padding: 6px 10px; margin-top: 1em;
background: #E8F4FF; border: 1px solid #d8d8e5; border-radius: 5px;
}
p.signature tt,
h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
p.signature .overload,
h3.signature .overload { display: block; }
p.signature .extras,
h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
p.signature .not_defined_here,
h3.signature .not_defined_here,
p.signature .aliases,
h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
p.signature .aliases .names,
h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
.tags .tag_title { font-size: 1.05em; margin-bottom: 0; font-weight: bold; }
.tags .tag_title tt { color: initial; padding: initial; background: initial; }
.tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
.tags ul li { margin-bottom: 3px; }
.tags ul .name { font-family: monospace; font-weight: bold; }
.tags ul .note { padding: 3px 6px; }
.tags { margin-bottom: 12px; }
.tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; }
.tags .examples .inline p { padding: 0; margin: 0; font-weight: bold; font-size: 1em; }
.tags .examples .inline p:before { content: "▸"; font-size: 1em; margin-right: 5px; }
.tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
.tags .overload .overload_item .signature {
padding: 2px 8px;
background: #F1F8FF; border: 1px solid #d8d8e5; border-radius: 3px;
}
.tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
.tags .overload .docstring { margin-top: 15px; }
.defines { display: none; }
#method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
.showSource { font-size: 0.9em; }
.showSource a, .showSource a:visited { text-decoration: none; color: #666; }
#content a, #content a:visited { text-decoration: none; color: #05a; }
#content a:hover { background: #ffffa5; }
ul.summary {
list-style: none;
font-family: monospace;
font-size: 1em;
line-height: 1.5em;
padding-left: 0px;
}
ul.summary a, ul.summary a:visited {
text-decoration: none; font-size: 1.1em;
}
ul.summary li { margin-bottom: 5px; }
.summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; }
.summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; }
.summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; }
ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
#content .summary_signature:hover a,
#content .summary_signature:hover a:visited {
background: transparent;
color: #049;
}
p.inherited a { font-family: monospace; font-size: 0.9em; }
p.inherited { word-spacing: 5px; font-size: 1.2em; }
p.children { font-size: 1.2em; }
p.children a { font-size: 0.9em; }
p.children strong { font-size: 0.8em; }
p.children strong.modules { padding-left: 5px; }
ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHtJREFUeNqMzrEJAkEURdGzuhgZbSoYWcAWoBVsB4JgZAGmphsZCZYzTQgWNCYrDN9RvMmHx+X916SUBFbo8CzD1idXrLErw1mQttgXtyrOcQ/Ny5p4Qh+2XqLYYazsPWNTiuMkRxa4vcV+evuNAUOLIx5+c2hyzv7hNQC67Q+/HHmlEwAAAABJRU5ErkJggg==) no-repeat top center; }
ul.fullTree li:first-child { padding-top: 0; background: transparent; }
ul.fullTree li:last-child { padding-bottom: 0; }
.showAll ul.fullTree { display: block; }
.showAll .inheritName { display: none; }
#search { position: absolute; right: 12px; top: 0px; z-index: 9000; }
#search a {
display: block; float: left;
padding: 4px 8px; text-decoration: none; color: #05a; fill: #05a;
border: 1px solid #d8d8e5;
border-bottom-left-radius: 3px; border-bottom-right-radius: 3px;
background: #F1F8FF;
box-shadow: -1px 1px 3px #ddd;
}
#search a:hover { background: #f5faff; color: #06b; fill: #06b; }
#search a.active {
background: #568; padding-bottom: 20px; color: #fff; fill: #fff;
border: 1px solid #457;
border-top-left-radius: 5px; border-top-right-radius: 5px;
}
#search a.inactive { color: #999; fill: #999; }
.inheritanceTree, .toggleDefines {
float: right;
border-left: 1px solid #aaa;
position: absolute; top: 0; right: 0;
height: 100%;
background: #f6f6f6;
padding: 5px;
min-width: 55px;
text-align: center;
}
#menu { font-size: 1.3em; color: #bbb; }
#menu .title, #menu a { font-size: 0.7em; }
#menu .title a { font-size: 1em; }
#menu .title { color: #555; }
#menu a, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
#menu a:hover { color: #05a; }
#footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
#footer a, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
#footer a:hover { color: #05a; }
#listing ul.alpha { font-size: 1.1em; }
#listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
#listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
#listing ul.alpha ul { margin: 0; padding-left: 15px; }
#listing ul small { color: #666; font-size: 0.7em; }
li.r1 { background: #f0f0f0; }
li.r2 { background: #fafafa; }
#content ul.summary li.deprecated .summary_signature a,
#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
#toc {
position: relative;
float: right;
overflow-x: auto;
right: -3px;
margin-left: 20px;
margin-bottom: 20px;
padding: 20px; padding-right: 30px;
max-width: 300px;
z-index: 5000;
background: #fefefe;
border: 1px solid #ddd;
box-shadow: -2px 2px 6px #bbb;
}
#toc .title { margin: 0; }
#toc ol { padding-left: 1.8em; }
#toc li { font-size: 1.1em; line-height: 1.7em; }
#toc > ol > li { font-size: 1.1em; font-weight: bold; }
#toc ol > li > ol { font-size: 0.9em; }
#toc ol ol > li > ol { padding-left: 2.3em; }
#toc ol + li { margin-top: 0.3em; }
#toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; }
#toc.hidden:hover { background: #fafafa; }
#filecontents h1 + #toc.nofloat { margin-top: 0; }
@media (max-width: 560px) {
#toc {
margin-left: 0;
margin-top: 16px;
float: none;
max-width: none;
}
}
/* syntax highlighting */
.source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
#filecontents pre.code, .docstring pre.code { display: block; }
.source_code .lines { padding-right: 12px; color: #555; text-align: right; }
#filecontents pre.code, .docstring pre.code,
.tags pre.example {
padding: 9px 14px;
margin-top: 4px;
border: 1px solid #e1e1e8;
background: #f7f7f9;
border-radius: 4px;
font-size: 1em;
overflow-x: auto;
line-height: 1.2em;
}
pre.code { color: #000; tab-size: 2; }
pre.code .info.file { color: #555; }
pre.code .val { color: #036A07; }
pre.code .tstring_content,
pre.code .heredoc_beg, pre.code .heredoc_end,
pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep,
pre.code .words_beg, pre.code .words_end, pre.code .words_sep,
pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep,
pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep,
pre.code .tstring, pre.code .dstring { color: #036A07; }
pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
pre.code .dot + pre.code .id,
pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
pre.code .comment { color: #0066FF; }
pre.code .const, pre.code .constant { color: #585CF6; }
pre.code .label,
pre.code .symbol { color: #C5060B; }
pre.code .kw,
pre.code .rubyid_require,
pre.code .rubyid_extend,
pre.code .rubyid_include { color: #0000FF; }
pre.code .ivar { color: #318495; }
pre.code .gvar,
pre.code .rubyid_backref,
pre.code .rubyid_nth_ref { color: #6D79DE; }
pre.code .regexp, .dregexp { color: #036A07; }
pre.code a { border-bottom: 1px dotted #bbf; }
/* inline code */
*:not(pre) > code {
padding: 1px 3px 1px 3px;
border: 1px solid #E1E1E8;
background: #F7F7F9;
border-radius: 4px;
}
/* Color fix for links */
#content .summary_desc pre.code .id > .object_link a, /* identifier */
#content .docstring pre.code .id > .object_link a { color: #0085FF; }
#content .summary_desc pre.code .const > .object_link a, /* constant */
#content .docstring pre.code .const > .object_link a { color: #585CF6; }

437
doc/file.README.html Normal file
View File

@@ -0,0 +1,437 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
File: README
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "";
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="file_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">File: README</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1>
<p><a href="https://jenkins.confdroid.com/job/confdroid_nagios/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_nagios&amp;style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_nagios"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_nagios&amp;metric=security_hotspots&amp;token=sqb_927c2cd1f1b90805cde962af0f5eda9ec936eb6f"></a></p>
<ul><li>
<p><a href="#readme">Readme</a></p>
</li><li>
<p><a href="#synopsis">Synopsis</a></p>
</li><li>
<p><a href="#warning">WARNING</a></p>
</li><li>
<p><a href="#features">Features</a></p>
</li><li>
<p><a href="#repo-documentation">Repo Documentation</a></p>
</li><li>
<p><a href="#dependencies">Dependencies</a></p>
</li><li>
<p><a href="#deployment">Deployment</a></p>
</li><li>
<p><a href="#configuration">Configuration</a></p>
<ul><li>
<p><a href="#configuring-ui-user-access">configuring UI user access</a></p>
</li><li>
<p><a href="#additional-ui-users">Additional UI users</a></p>
</li><li>
<p><a href="#adding-contacts">Adding contacts</a></p>
</li><li>
<p><a href="#adding-contact-groups">Adding contact groups</a></p>
</li><li>
<p><a href="#adding-host-groups">Adding host groups</a></p>
</li><li>
<p><a href="#adding-service-groups">Adding service groups</a></p>
</li><li>
<p><a href="#adding-time-periods">Adding time periods</a></p>
</li><li>
<p><a href="#adding-custom-commands">Adding custom commands</a></p>
</li><li>
<p><a href="#adding-templates">Adding templates</a></p>
</li><li>
<p><a href="#customization-outside-of-puppet">Customization outside of Puppet</a></p>
</li></ul>
</li><li>
<p><a href="#puppetdb">PuppetDB</a></p>
</li><li>
<p><a href="#selinux">SELINUX</a></p>
</li><li>
<p><a href="#support">Support</a></p>
</li><li>
<p><a href="#tests">Tests</a></p>
</li><li>
<p><a href="#contact-us">Contact Us</a></p>
</li><li>
<p><a href="#disclaimer">Disclaimer</a></p>
</li></ul>
<h2 id="label-Synopsis">Synopsis</h2>
<p>Nagios is a powerful open source software solution for monitoring your IT environments.</p>
<p><code>confdroid_nagios</code> is a Puppet module allowing to fully automate the setup &amp; configuration of the Nagios server, as well as actively adding client hosts and services to the monitoring environment through defines and <code>PuppetDB</code>.</p>
<p>At this stage, the module is being redeveloped and being built to the latest standards for Puppet 8.</p>
<h2 id="label-WARNING">WARNING</h2>
<blockquote>
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
</blockquote>
<h2 id="label-Features">Features</h2>
<ul><li>
<p>if FQDN equals the specified <code>ng_nagios_server</code>, nagios server with all required specs is installed, else only nagios client packages and the target specs</p>
</li><li>
<p>an additional directory /etc/nagios/conf.d is created to place the custom checks etc. without being overwritten by updates.</p>
</li><li>
<p>contacts and contactgroups are separated and filled in via define</p>
</li><li>
<p>hostgroups are filled in via define, hosts are added dynamically via target.pp.</p>
</li><li>
<p>configures all required directories for server and clients and sets proper permissions and selinux contexts</p>
</li><li>
<p>configures the main nagios configuration file and sets values as (pre)configured per values in params, which can be overwritten.</p>
</li><li>
<p>if <code>ng_include_nrpe</code>is set to <code>true</code>, the confdroid_nrpe module is automatically applied on clients (<a href="https://sourcecode.confdroid.com/confdroid/confdroid_nrpe">confdroid_nrpe</a> must be in the catalogue then)</p>
</li><li>
<p>if <code>ng_enable_fail2ban</code>is set to <code>true</code>, a fail2ban jail and filter will be added for the Nagios service (requires confdroid_fail2ban).</p>
</li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
<p>See the full Puppet documentation including parameters in <code>docs/index.html</code></p>
<h2 id="label-Dependencies">Dependencies</h2>
<p>All dependencies must be included in the catalogue.</p>
<ul><li>
<p><code>puppetlabs-firewall</code></p>
</li><li>
<p><code>puppetlabs-stdlib</code></p>
</li><li>
<p><code>puppetlabs-concat</code></p>
</li><li>
<p><code>puppetlabs-nagios_core</code></p>
</li></ul>
<h2 id="label-Deployment">Deployment</h2>
<ul><li>
<p>native Puppet deployment</p>
</li></ul>
<p>via site.pp or nodes.pp</p>
<pre class="code ruby"><code class="ruby">node &#39;example.example.net&#39; {
include confdroid_nagios
}
</code></pre>
<ul><li>
<p>through Foreman:</p>
</li></ul>
<p>In order to apply parameters through Foreman, <strong>confdroid_nagios::params</strong>- must be added to the host or host group in question.</p>
<p>See <a href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">more details about class deployment on confdroid.com</a>.</p>
<h2 id="label-Configuration">Configuration</h2>
<h3 id="label-configuring+UI+user+access">configuring UI user access</h3>
<p>Main access to the user interface requires defining an administrative user and password via <code>ng_main_user</code> and <code>ng_main_password</code>. The password should be encrypted like this:</p>
<pre class="code ruby"><code class="ruby">htpasswd -B -n testuser
New password:
Re-type new password:
</code></pre>
<p>This results in</p>
<pre class="code ruby"><code class="ruby">testuser: $2y$05$rNy/P22OfYZlpdEPnCAIg.OUizRD34P7pDRwUGiaYjH44PcRuZ2ia
</code></pre>
<p>Use that value to override the default password in ENC or Hiera, if you use it.</p>
<h3 id="label-Additional+UI+users">Additional UI users</h3>
<p>The main user is automatically created. If you want to add more users, this should be done via the define <code>confdroid_nagios::server::access</code>. In your control repo, site.pp etc. address the access define like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::server::access { &#39;example&#39;:
ng_htpasswd_user =&gt; &#39;example_user&#39;,
ng_htpasswd_password =&gt; &#39;example_password_encrypted&#39;
}
</code></pre>
<h3 id="label-Adding+contacts">Adding contacts</h3>
<p>In order to add contacts for the notifications, address the define <code>confdroid_nagios::nagios::objects::add_contact</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_contact { &#39;example_user&#39;:
ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}
</code></pre>
<p>This requires the contact groups to be in place as well.</p>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_contact { &#39;ops&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations&#39;,
contact_name =&gt; &#39;ops&#39;,
contactgroups =&gt; &#39;operations&#39;,
email =&gt; &#39;ops@example.net&#39;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
</code></pre>
<h3 id="label-Adding+contact+groups">Adding contact groups</h3>
<p>In order to add contact groups for the notifications, address the define <code>confdroid_nagios::nagios::objects::add_contactgroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_contactgroups { &#39;example_group&#39;:
ng_contactgroup_name =&gt; &#39;example_group&#39;,
ng_contactgroup_alias =&gt; &#39;Example Group&#39;,
ng_contactgroup_register =&gt; &#39;1&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_contactgroup { &#39;operations&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations Team&#39;,
contactgroup_name =&gt; &#39;operations&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}
</code></pre>
<h3 id="label-Adding+host+groups">Adding host groups</h3>
<p>In order to add host groups, address the define <code>confdroid_nagios::nagios::objects::add_hostgroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_hostgroup { &#39;rhel-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;rhel-servers&#39;,
alias =&gt; &#39;RHEL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
</code></pre>
<p>Hosts themselves will be populated through the target.pp dynamically.</p>
<h3 id="label-Adding+service+groups">Adding service groups</h3>
<p>In order to add service groups, address the define <code>confdroid_nagios::nagios::objects::add_servicegroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example servicegroup&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_servicegroup { &#39;network-services&#39;:
ensure =&gt; present,
servicegroup_name =&gt; &#39;network-services&#39;,
alias =&gt; &#39;Network Services&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_svcgrp_base,
}
</code></pre>
<h3 id="label-Adding+time+periods">Adding time periods</h3>
<p>In order to add time periods, address the define <code>confdroid_nagios::nagios::objects::add_timeperiods</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_timeperiods { &#39;example_timeperiod&#39;:
ng_timep_name =&gt; &#39;example_timeperiod&#39;,
ng_timep_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_timeperiod { &#39;office_hours&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;office_hours&#39;,
alias =&gt; &#39;Office hours only, 5 Days A Week 09-05&#39;,
monday =&gt; &#39;09:00-17:00&#39;,
tuesday =&gt; &#39;09:00-17:00&#39;,
wednesday =&gt; &#39;09:00-17:00&#39;,
thursday =&gt; &#39;09:00-17:00&#39;,
friday =&gt; &#39;09:00-17:00&#39;,
saturday =&gt; &#39;00:00-00:00&#39;,
sunday =&gt; &#39;00:00-00:00&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
</code></pre>
<h3 id="label-Adding+custom+commands">Adding custom commands</h3>
<p>Commands are defined in <code>confdroid_nagios::nagios::objects::commands</code> and deployed /etc/nagios/conf.d/nagios_commands_base.cfg through PuppetDB exports like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_command { &#39;check_disk&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_disk&#39;,
command_line =&gt; &#39;$USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
</code></pre>
<h3 id="label-Adding+templates">Adding templates</h3>
<p>In order to add time periods, address the define <code>confdroid_nagios::nagios::objects::add_templates</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::templates { &#39;generic contact&#39;:
ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}
</code></pre>
<h3 id="label-Customization+outside+of+Puppet">Customization outside of Puppet</h3>
<blockquote>
<p>Q: what if I want to add my own Nagios plugins, settings etc. outside of Puppet? Will those be overwritten? A: Puppet only controls what it knows about. You can add your own custom configuration files within <code>/etc/nagios/conf.d</code> and Nagios should recognize it, assuming it is valid code. Just beware of duplicated definitions, Nagios is very strict and merciless about this.</p>
</blockquote>
<h2 id="label-PuppetDB">PuppetDB</h2>
<p>A working instance of PuppetDB connected to the Puppet master is required for this to work. Installation and configuration of PuppetDB is out of scope for this module, however <a href="https://gitlab.confdroid.com/puppet/cd_puppetdb">cd_puppetdb</a> is available to automate this task for you as well within a few minutes.</p>
<h2 id="label-SELINUX">SELINUX</h2>
<p>All files and directories are configured with correct selinux context. If selinux is disabled, these contexts are ignored.</p>
<h2 id="label-Support">Support</h2>
<ul><li>
<p>OS: Rocky 9</p>
</li><li>
<p>Puppet 7 # Puppet does not support Nagios in Puppet 8 anymore, although it still works</p>
</li></ul>
<h2 id="label-Tests">Tests</h2>
<ul><li>
<p>Puppet Lint</p>
</li><li>
<p>excluded tests:</p>
<ul><li>
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.</p>
</li></ul>
</li><li>
<p>Puppet Parser</p>
</li><li>
<p>ERB Template Parser</p>
</li><li>
<p>Sonar Quality Gate</p>
</li></ul>
<h2 id="label-Contact+Us">Contact Us</h2>
<ul><li>
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
</li><li>
<p><a href="https://feedback.confdroid.com/">Feedback Portal</a></p>
</li></ul>
<h2 id="label-Disclaimer">Disclaimer</h2>
<p>confdroid as entity is entirely independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development environments) for parameter tuning etc. before deploying into production environments.</p>
</div></div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

22
doc/frames.html Normal file
View File

@@ -0,0 +1,22 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Documentation by YARD 0.9.36</title>
</head>
<script type="text/javascript">
var mainUrl = 'index.html';
try {
var match = decodeURIComponent(window.location.hash).match(/^#!(.+)/);
var name = match ? match[1] : mainUrl;
var url = new URL(name, location.href);
window.top.location.replace(url.origin === location.origin ? name : mainUrl);
} catch (e) {
window.top.location.replace(mainUrl);
}
</script>
<noscript>
<h1>Oops!</h1>
<h2>YARD requires JavaScript!</h2>
</noscript>
</html>

437
doc/index.html Normal file
View File

@@ -0,0 +1,437 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
File: README
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "";
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">File: README</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1>
<p><a href="https://jenkins.confdroid.com/job/confdroid_nagios/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_nagios&amp;style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_nagios"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_nagios&amp;metric=security_hotspots&amp;token=sqb_927c2cd1f1b90805cde962af0f5eda9ec936eb6f"></a></p>
<ul><li>
<p><a href="#readme">Readme</a></p>
</li><li>
<p><a href="#synopsis">Synopsis</a></p>
</li><li>
<p><a href="#warning">WARNING</a></p>
</li><li>
<p><a href="#features">Features</a></p>
</li><li>
<p><a href="#repo-documentation">Repo Documentation</a></p>
</li><li>
<p><a href="#dependencies">Dependencies</a></p>
</li><li>
<p><a href="#deployment">Deployment</a></p>
</li><li>
<p><a href="#configuration">Configuration</a></p>
<ul><li>
<p><a href="#configuring-ui-user-access">configuring UI user access</a></p>
</li><li>
<p><a href="#additional-ui-users">Additional UI users</a></p>
</li><li>
<p><a href="#adding-contacts">Adding contacts</a></p>
</li><li>
<p><a href="#adding-contact-groups">Adding contact groups</a></p>
</li><li>
<p><a href="#adding-host-groups">Adding host groups</a></p>
</li><li>
<p><a href="#adding-service-groups">Adding service groups</a></p>
</li><li>
<p><a href="#adding-time-periods">Adding time periods</a></p>
</li><li>
<p><a href="#adding-custom-commands">Adding custom commands</a></p>
</li><li>
<p><a href="#adding-templates">Adding templates</a></p>
</li><li>
<p><a href="#customization-outside-of-puppet">Customization outside of Puppet</a></p>
</li></ul>
</li><li>
<p><a href="#puppetdb">PuppetDB</a></p>
</li><li>
<p><a href="#selinux">SELINUX</a></p>
</li><li>
<p><a href="#support">Support</a></p>
</li><li>
<p><a href="#tests">Tests</a></p>
</li><li>
<p><a href="#contact-us">Contact Us</a></p>
</li><li>
<p><a href="#disclaimer">Disclaimer</a></p>
</li></ul>
<h2 id="label-Synopsis">Synopsis</h2>
<p>Nagios is a powerful open source software solution for monitoring your IT environments.</p>
<p><code>confdroid_nagios</code> is a Puppet module allowing to fully automate the setup &amp; configuration of the Nagios server, as well as actively adding client hosts and services to the monitoring environment through defines and <code>PuppetDB</code>.</p>
<p>At this stage, the module is being redeveloped and being built to the latest standards for Puppet 8.</p>
<h2 id="label-WARNING">WARNING</h2>
<blockquote>
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
</blockquote>
<h2 id="label-Features">Features</h2>
<ul><li>
<p>if FQDN equals the specified <code>ng_nagios_server</code>, nagios server with all required specs is installed, else only nagios client packages and the target specs</p>
</li><li>
<p>an additional directory /etc/nagios/conf.d is created to place the custom checks etc. without being overwritten by updates.</p>
</li><li>
<p>contacts and contactgroups are separated and filled in via define</p>
</li><li>
<p>hostgroups are filled in via define, hosts are added dynamically via target.pp.</p>
</li><li>
<p>configures all required directories for server and clients and sets proper permissions and selinux contexts</p>
</li><li>
<p>configures the main nagios configuration file and sets values as (pre)configured per values in params, which can be overwritten.</p>
</li><li>
<p>if <code>ng_include_nrpe</code>is set to <code>true</code>, the confdroid_nrpe module is automatically applied on clients (<a href="https://sourcecode.confdroid.com/confdroid/confdroid_nrpe">confdroid_nrpe</a> must be in the catalogue then)</p>
</li><li>
<p>if <code>ng_enable_fail2ban</code>is set to <code>true</code>, a fail2ban jail and filter will be added for the Nagios service (requires confdroid_fail2ban).</p>
</li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
<p>See the full Puppet documentation including parameters in <code>docs/index.html</code></p>
<h2 id="label-Dependencies">Dependencies</h2>
<p>All dependencies must be included in the catalogue.</p>
<ul><li>
<p><code>puppetlabs-firewall</code></p>
</li><li>
<p><code>puppetlabs-stdlib</code></p>
</li><li>
<p><code>puppetlabs-concat</code></p>
</li><li>
<p><code>puppetlabs-nagios_core</code></p>
</li></ul>
<h2 id="label-Deployment">Deployment</h2>
<ul><li>
<p>native Puppet deployment</p>
</li></ul>
<p>via site.pp or nodes.pp</p>
<pre class="code ruby"><code class="ruby">node &#39;example.example.net&#39; {
include confdroid_nagios
}
</code></pre>
<ul><li>
<p>through Foreman:</p>
</li></ul>
<p>In order to apply parameters through Foreman, <strong>confdroid_nagios::params</strong>- must be added to the host or host group in question.</p>
<p>See <a href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">more details about class deployment on confdroid.com</a>.</p>
<h2 id="label-Configuration">Configuration</h2>
<h3 id="label-configuring+UI+user+access">configuring UI user access</h3>
<p>Main access to the user interface requires defining an administrative user and password via <code>ng_main_user</code> and <code>ng_main_password</code>. The password should be encrypted like this:</p>
<pre class="code ruby"><code class="ruby">htpasswd -B -n testuser
New password:
Re-type new password:
</code></pre>
<p>This results in</p>
<pre class="code ruby"><code class="ruby">testuser: $2y$05$rNy/P22OfYZlpdEPnCAIg.OUizRD34P7pDRwUGiaYjH44PcRuZ2ia
</code></pre>
<p>Use that value to override the default password in ENC or Hiera, if you use it.</p>
<h3 id="label-Additional+UI+users">Additional UI users</h3>
<p>The main user is automatically created. If you want to add more users, this should be done via the define <code>confdroid_nagios::server::access</code>. In your control repo, site.pp etc. address the access define like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::server::access { &#39;example&#39;:
ng_htpasswd_user =&gt; &#39;example_user&#39;,
ng_htpasswd_password =&gt; &#39;example_password_encrypted&#39;
}
</code></pre>
<h3 id="label-Adding+contacts">Adding contacts</h3>
<p>In order to add contacts for the notifications, address the define <code>confdroid_nagios::nagios::objects::add_contact</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_contact { &#39;example_user&#39;:
ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}
</code></pre>
<p>This requires the contact groups to be in place as well.</p>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_contact { &#39;ops&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations&#39;,
contact_name =&gt; &#39;ops&#39;,
contactgroups =&gt; &#39;operations&#39;,
email =&gt; &#39;ops@example.net&#39;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
</code></pre>
<h3 id="label-Adding+contact+groups">Adding contact groups</h3>
<p>In order to add contact groups for the notifications, address the define <code>confdroid_nagios::nagios::objects::add_contactgroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_contactgroups { &#39;example_group&#39;:
ng_contactgroup_name =&gt; &#39;example_group&#39;,
ng_contactgroup_alias =&gt; &#39;Example Group&#39;,
ng_contactgroup_register =&gt; &#39;1&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_contactgroup { &#39;operations&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations Team&#39;,
contactgroup_name =&gt; &#39;operations&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}
</code></pre>
<h3 id="label-Adding+host+groups">Adding host groups</h3>
<p>In order to add host groups, address the define <code>confdroid_nagios::nagios::objects::add_hostgroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_hostgroup { &#39;rhel-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;rhel-servers&#39;,
alias =&gt; &#39;RHEL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
</code></pre>
<p>Hosts themselves will be populated through the target.pp dynamically.</p>
<h3 id="label-Adding+service+groups">Adding service groups</h3>
<p>In order to add service groups, address the define <code>confdroid_nagios::nagios::objects::add_servicegroups</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example servicegroup&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_servicegroup { &#39;network-services&#39;:
ensure =&gt; present,
servicegroup_name =&gt; &#39;network-services&#39;,
alias =&gt; &#39;Network Services&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_svcgrp_base,
}
</code></pre>
<h3 id="label-Adding+time+periods">Adding time periods</h3>
<p>In order to add time periods, address the define <code>confdroid_nagios::nagios::objects::add_timeperiods</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::add_timeperiods { &#39;example_timeperiod&#39;:
ng_timep_name =&gt; &#39;example_timeperiod&#39;,
ng_timep_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,
}
</code></pre>
<p>Alternatively you also can create a custom class within this module and use the export command like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_timeperiod { &#39;office_hours&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;office_hours&#39;,
alias =&gt; &#39;Office hours only, 5 Days A Week 09-05&#39;,
monday =&gt; &#39;09:00-17:00&#39;,
tuesday =&gt; &#39;09:00-17:00&#39;,
wednesday =&gt; &#39;09:00-17:00&#39;,
thursday =&gt; &#39;09:00-17:00&#39;,
friday =&gt; &#39;09:00-17:00&#39;,
saturday =&gt; &#39;00:00-00:00&#39;,
sunday =&gt; &#39;00:00-00:00&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
</code></pre>
<h3 id="label-Adding+custom+commands">Adding custom commands</h3>
<p>Commands are defined in <code>confdroid_nagios::nagios::objects::commands</code> and deployed /etc/nagios/conf.d/nagios_commands_base.cfg through PuppetDB exports like this:</p>
<pre class="code ruby"><code class="ruby">@@nagios_command { &#39;check_disk&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_disk&#39;,
command_line =&gt; &#39;$USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
</code></pre>
<h3 id="label-Adding+templates">Adding templates</h3>
<p>In order to add time periods, address the define <code>confdroid_nagios::nagios::objects::add_templates</code> in your config repo, site.pp etc. like this:</p>
<pre class="code ruby"><code class="ruby">confdroid_nagios::nagios::objects::templates { &#39;generic contact&#39;:
ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}
</code></pre>
<h3 id="label-Customization+outside+of+Puppet">Customization outside of Puppet</h3>
<blockquote>
<p>Q: what if I want to add my own Nagios plugins, settings etc. outside of Puppet? Will those be overwritten? A: Puppet only controls what it knows about. You can add your own custom configuration files within <code>/etc/nagios/conf.d</code> and Nagios should recognize it, assuming it is valid code. Just beware of duplicated definitions, Nagios is very strict and merciless about this.</p>
</blockquote>
<h2 id="label-PuppetDB">PuppetDB</h2>
<p>A working instance of PuppetDB connected to the Puppet master is required for this to work. Installation and configuration of PuppetDB is out of scope for this module, however <a href="https://gitlab.confdroid.com/puppet/cd_puppetdb">cd_puppetdb</a> is available to automate this task for you as well within a few minutes.</p>
<h2 id="label-SELINUX">SELINUX</h2>
<p>All files and directories are configured with correct selinux context. If selinux is disabled, these contexts are ignored.</p>
<h2 id="label-Support">Support</h2>
<ul><li>
<p>OS: Rocky 9</p>
</li><li>
<p>Puppet 7 # Puppet does not support Nagios in Puppet 8 anymore, although it still works</p>
</li></ul>
<h2 id="label-Tests">Tests</h2>
<ul><li>
<p>Puppet Lint</p>
</li><li>
<p>excluded tests:</p>
<ul><li>
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.</p>
</li></ul>
</li><li>
<p>Puppet Parser</p>
</li><li>
<p>ERB Template Parser</p>
</li><li>
<p>Sonar Quality Gate</p>
</li></ul>
<h2 id="label-Contact+Us">Contact Us</h2>
<ul><li>
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
</li><li>
<p><a href="https://feedback.confdroid.com/">Feedback Portal</a></p>
</li></ul>
<h2 id="label-Disclaimer">Disclaimer</h2>
<p>confdroid as entity is entirely independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development environments) for parameter tuning etc. before deploying into production environments.</p>
</div></div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

314
doc/js/app.js Normal file
View File

@@ -0,0 +1,314 @@
(function() {
var localStorage = {}, sessionStorage = {};
try { localStorage = window.localStorage; } catch (e) { }
try { sessionStorage = window.sessionStorage; } catch (e) { }
function createSourceLinks() {
$('.method_details_list .source_code').
before("<span class='showSource'>[<a href='#' class='toggleSource'>View source</a>]</span>");
$('.toggleSource').toggle(function() {
$(this).parent().nextAll('.source_code').slideDown(100);
$(this).text("Hide source");
},
function() {
$(this).parent().nextAll('.source_code').slideUp(100);
$(this).text("View source");
});
}
function createDefineLinks() {
var tHeight = 0;
$('.defines').after(" <a href='#' class='toggleDefines'>more...</a>");
$('.toggleDefines').toggle(function() {
tHeight = $(this).parent().prev().height();
$(this).prev().css('display', 'inline');
$(this).parent().prev().height($(this).parent().height());
$(this).text("(less)");
},
function() {
$(this).prev().hide();
$(this).parent().prev().height(tHeight);
$(this).text("more...");
});
}
function createFullTreeLinks() {
var tHeight = 0;
$('.inheritanceTree').toggle(function() {
tHeight = $(this).parent().prev().height();
$(this).parent().toggleClass('showAll');
$(this).text("(hide)");
$(this).parent().prev().height($(this).parent().height());
},
function() {
$(this).parent().toggleClass('showAll');
$(this).parent().prev().height(tHeight);
$(this).text("show all");
});
}
function searchFrameButtons() {
$('.full_list_link').click(function() {
toggleSearchFrame(this, $(this).attr('href'));
return false;
});
window.addEventListener('message', function(e) {
if (e.data === 'navEscape') {
$('#nav').slideUp(100);
$('#search a').removeClass('active inactive');
$(window).focus();
}
});
$(window).resize(function() {
if ($('#search:visible').length === 0) {
$('#nav').removeAttr('style');
$('#search a').removeClass('active inactive');
$(window).focus();
}
});
}
function toggleSearchFrame(id, link) {
var frame = $('#nav');
$('#search a').removeClass('active').addClass('inactive');
if (frame.attr('src') === link && frame.css('display') !== "none") {
frame.slideUp(100);
$('#search a').removeClass('active inactive');
}
else {
$(id).addClass('active').removeClass('inactive');
if (frame.attr('src') !== link) frame.attr('src', link);
frame.slideDown(100);
}
}
function linkSummaries() {
$('.summary_signature').click(function() {
document.location = $(this).find('a').attr('href');
});
}
function summaryToggle() {
$('.summary_toggle').click(function(e) {
e.preventDefault();
localStorage.summaryCollapsed = $(this).text();
$('.summary_toggle').each(function() {
$(this).text($(this).text() == "collapse" ? "expand" : "collapse");
var next = $(this).parent().parent().nextAll('ul.summary').first();
if (next.hasClass('compact')) {
next.toggle();
next.nextAll('ul.summary').first().toggle();
}
else if (next.hasClass('summary')) {
var list = $('<ul class="summary compact" />');
list.html(next.html());
list.find('.summary_desc, .note').remove();
list.find('a').each(function() {
$(this).html($(this).find('strong').html());
$(this).parent().html($(this)[0].outerHTML);
});
next.before(list);
next.toggle();
}
});
return false;
});
if (localStorage.summaryCollapsed == "collapse") {
$('.summary_toggle').first().click();
} else { localStorage.summaryCollapsed = "expand"; }
}
function constantSummaryToggle() {
$('.constants_summary_toggle').click(function(e) {
e.preventDefault();
localStorage.summaryCollapsed = $(this).text();
$('.constants_summary_toggle').each(function() {
$(this).text($(this).text() == "collapse" ? "expand" : "collapse");
var next = $(this).parent().parent().nextAll('dl.constants').first();
if (next.hasClass('compact')) {
next.toggle();
next.nextAll('dl.constants').first().toggle();
}
else if (next.hasClass('constants')) {
var list = $('<dl class="constants compact" />');
list.html(next.html());
list.find('dt').each(function() {
$(this).addClass('summary_signature');
$(this).text( $(this).text().split('=')[0]);
if ($(this).has(".deprecated").length) {
$(this).addClass('deprecated');
};
});
// Add the value of the constant as "Tooltip" to the summary object
list.find('pre.code').each(function() {
console.log($(this).parent());
var dt_element = $(this).parent().prev();
var tooltip = $(this).text();
if (dt_element.hasClass("deprecated")) {
tooltip = 'Deprecated. ' + tooltip;
};
dt_element.attr('title', tooltip);
});
list.find('.docstring, .tags, dd').remove();
next.before(list);
next.toggle();
}
});
return false;
});
if (localStorage.summaryCollapsed == "collapse") {
$('.constants_summary_toggle').first().click();
} else { localStorage.summaryCollapsed = "expand"; }
}
function generateTOC() {
if ($('#filecontents').length === 0) return;
var _toc = $('<ol class="top"></ol>');
var show = false;
var toc = _toc;
var counter = 0;
var tags = ['h2', 'h3', 'h4', 'h5', 'h6'];
var i;
var curli;
if ($('#filecontents h1').length > 1) tags.unshift('h1');
for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; }
var lastTag = parseInt(tags[0][1], 10);
$(tags.join(', ')).each(function() {
if ($(this).parents('.method_details .docstring').length != 0) return;
if (this.id == "filecontents") return;
show = true;
var thisTag = parseInt(this.tagName[1], 10);
if (this.id.length === 0) {
var proposedId = $(this).attr('toc-id');
if (typeof(proposedId) != "undefined") this.id = proposedId;
else {
var proposedId = $(this).text().replace(/[^a-z0-9-]/ig, '_');
if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; }
this.id = proposedId;
}
}
if (thisTag > lastTag) {
for (i = 0; i < thisTag - lastTag; i++) {
if ( typeof(curli) == "undefined" ) {
curli = $('<li/>');
toc.append(curli);
}
toc = $('<ol/>');
curli.append(toc);
curli = undefined;
}
}
if (thisTag < lastTag) {
for (i = 0; i < lastTag - thisTag; i++) {
toc = toc.parent();
toc = toc.parent();
}
}
var title = $(this).attr('toc-title');
if (typeof(title) == "undefined") title = $(this).text();
curli =$('<li><a href="#' + this.id + '">' + title + '</a></li>');
toc.append(curli);
lastTag = thisTag;
});
if (!show) return;
html = '<div id="toc"><p class="title hide_toc"><a href="#"><strong>Table of Contents</strong></a></p></div>';
$('#content').prepend(html);
$('#toc').append(_toc);
$('#toc .hide_toc').toggle(function() {
$('#toc .top').slideUp('fast');
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
}, function() {
$('#toc .top').slideDown('fast');
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
});
}
function navResizeFn(e) {
if (e.which !== 1) {
navResizeFnStop();
return;
}
sessionStorage.navWidth = e.pageX.toString();
$('.nav_wrap').css('width', e.pageX);
$('.nav_wrap').css('-ms-flex', 'inherit');
}
function navResizeFnStop() {
$(window).unbind('mousemove', navResizeFn);
window.removeEventListener('message', navMessageFn, false);
}
function navMessageFn(e) {
if (e.data.action === 'mousemove') navResizeFn(e.data.event);
if (e.data.action === 'mouseup') navResizeFnStop();
}
function navResizer() {
$('#resizer').mousedown(function(e) {
e.preventDefault();
$(window).mousemove(navResizeFn);
window.addEventListener('message', navMessageFn, false);
});
$(window).mouseup(navResizeFnStop);
if (sessionStorage.navWidth) {
navResizeFn({which: 1, pageX: parseInt(sessionStorage.navWidth, 10)});
}
}
function navExpander() {
var done = false, timer = setTimeout(postMessage, 500);
function postMessage() {
if (done) return;
clearTimeout(timer);
var opts = { action: 'expand', path: pathId };
document.getElementById('nav').contentWindow.postMessage(opts, '*');
done = true;
}
window.addEventListener('message', function(event) {
if (event.data === 'navReady') postMessage();
return false;
}, false);
}
function mainFocus() {
var hash = window.location.hash;
if (hash !== '' && $(hash)[0]) {
$(hash)[0].scrollIntoView();
}
setTimeout(function() { $('#main').focus(); }, 10);
}
function navigationChange() {
// This works around the broken anchor navigation with the YARD template.
window.onpopstate = function() {
var hash = window.location.hash;
if (hash !== '' && $(hash)[0]) {
$(hash)[0].scrollIntoView();
}
};
}
$(document).ready(function() {
navResizer();
navExpander();
createSourceLinks();
createDefineLinks();
createFullTreeLinks();
searchFrameButtons();
linkSummaries();
summaryToggle();
constantSummaryToggle();
generateTOC();
mainFocus();
navigationChange();
});
})();

216
doc/js/full_list.js Normal file
View File

@@ -0,0 +1,216 @@
(function() {
var $clicked = $(null);
var searchTimeout = null;
var searchCache = [];
var caseSensitiveMatch = false;
var ignoreKeyCodeMin = 8;
var ignoreKeyCodeMax = 46;
var commandKey = 91;
RegExp.escape = function(text) {
return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
}
function escapeShortcut() {
$(document).keydown(function(evt) {
if (evt.which == 27) {
window.parent.postMessage('navEscape', '*');
}
});
}
function navResizer() {
$(window).mousemove(function(e) {
window.parent.postMessage({
action: 'mousemove', event: {pageX: e.pageX, which: e.which}
}, '*');
}).mouseup(function(e) {
window.parent.postMessage({action: 'mouseup'}, '*');
});
window.parent.postMessage("navReady", "*");
}
function clearSearchTimeout() {
clearTimeout(searchTimeout);
searchTimeout = null;
}
function enableLinks() {
// load the target page in the parent window
$('#full_list li').on('click', function(evt) {
$('#full_list li').removeClass('clicked');
$clicked = $(this);
$clicked.addClass('clicked');
evt.stopPropagation();
if (evt.target.tagName === 'A') return true;
var elem = $clicked.find('> .item .object_link a')[0];
var e = evt.originalEvent;
var newEvent = new MouseEvent(evt.originalEvent.type);
newEvent.initMouseEvent(e.type, e.canBubble, e.cancelable, e.view, e.detail, e.screenX, e.screenY, e.clientX, e.clientY, e.ctrlKey, e.altKey, e.shiftKey, e.metaKey, e.button, e.relatedTarget);
elem.dispatchEvent(newEvent);
evt.preventDefault();
return false;
});
}
function enableToggles() {
// show/hide nested classes on toggle click
$('#full_list a.toggle').on('click', function(evt) {
evt.stopPropagation();
evt.preventDefault();
$(this).parent().parent().toggleClass('collapsed');
highlight();
});
}
function populateSearchCache() {
$('#full_list li .item').each(function() {
var $node = $(this);
var $link = $node.find('.object_link a');
if ($link.length > 0) {
searchCache.push({
node: $node,
link: $link,
name: $link.text(),
fullName: $link.attr('title').split(' ')[0]
});
}
});
}
function enableSearch() {
$('#search input').keyup(function(event) {
if (ignoredKeyPress(event)) return;
if (this.value === "") {
clearSearch();
} else {
performSearch(this.value);
}
});
$('#full_list').after("<div id='noresults' style='display:none'></div>");
}
function ignoredKeyPress(event) {
if (
(event.keyCode > ignoreKeyCodeMin && event.keyCode < ignoreKeyCodeMax) ||
(event.keyCode == commandKey)
) {
return true;
} else {
return false;
}
}
function clearSearch() {
clearSearchTimeout();
$('#full_list .found').removeClass('found').each(function() {
var $link = $(this).find('.object_link a');
$link.text($link.text());
});
$('#full_list, #content').removeClass('insearch');
$clicked.parents().removeClass('collapsed');
highlight();
}
function performSearch(searchString) {
clearSearchTimeout();
$('#full_list, #content').addClass('insearch');
$('#noresults').text('').hide();
partialSearch(searchString, 0);
}
function partialSearch(searchString, offset) {
var lastRowClass = '';
var i = null;
for (i = offset; i < Math.min(offset + 50, searchCache.length); i++) {
var item = searchCache[i];
var searchName = (searchString.indexOf('::') != -1 ? item.fullName : item.name);
var matchString = buildMatchString(searchString);
var matchRegexp = new RegExp(matchString, caseSensitiveMatch ? "" : "i");
if (searchName.match(matchRegexp) == null) {
item.node.removeClass('found');
item.link.text(item.link.text());
}
else {
item.node.addClass('found');
item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1');
lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2';
item.link.html(item.name.replace(matchRegexp, "<strong>$&</strong>"));
}
}
if(i == searchCache.length) {
searchDone();
} else {
searchTimeout = setTimeout(function() {
partialSearch(searchString, i);
}, 0);
}
}
function searchDone() {
searchTimeout = null;
highlight();
if ($('#full_list li:visible').size() === 0) {
$('#noresults').text('No results were found.').hide().fadeIn();
} else {
$('#noresults').text('').hide();
}
$('#content').removeClass('insearch');
}
function buildMatchString(searchString, event) {
caseSensitiveMatch = searchString.match(/[A-Z]/) != null;
var regexSearchString = RegExp.escape(searchString);
if (caseSensitiveMatch) {
regexSearchString += "|" +
$.map(searchString.split(''), function(e) { return RegExp.escape(e); }).
join('.+?');
}
return regexSearchString;
}
function highlight() {
$('#full_list li:visible').each(function(n) {
$(this).removeClass('even odd').addClass(n % 2 == 0 ? 'odd' : 'even');
});
}
/**
* Expands the tree to the target element and its immediate
* children.
*/
function expandTo(path) {
var $target = $(document.getElementById('object_' + path));
$target.addClass('clicked');
$target.removeClass('collapsed');
$target.parentsUntil('#full_list', 'li').removeClass('collapsed');
if($target[0]) {
window.scrollTo(window.scrollX, $target.offset().top - 250);
highlight();
}
}
function windowEvents(event) {
var msg = event.data;
if (msg.action === "expand") {
expandTo(msg.path);
}
return false;
}
window.addEventListener("message", windowEvents, false);
$(document).ready(function() {
escapeShortcut();
navResizer();
enableLinks();
enableToggles();
populateSearchCache();
enableSearch();
});
})();

4
doc/js/jquery.js vendored Normal file

File diff suppressed because one or more lines are too long

187
doc/puppet_class_list.html Normal file
View File

@@ -0,0 +1,187 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<title>Puppet Class List</title>
<base id="base_target" target="_parent" />
</head>
<body>
<div id="content">
<div class="fixed_header">
<h1 id="full_list_header">Puppet Class List</h1>
<div id="full_list_nav">
<span><a target="_self" href="puppet_class_list.html">
Puppet Classes
</a></span>
<span><a target="_self" href="puppet_defined_type_list.html">
Defined Types
</a></span>
</div>
<div id="search">Search: <input type="text" /></div>
</div>
<ul id="full_list" class="puppet_class">
<li id="object_puppet_classes::confdroid_nagios" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios.html" title="puppet_classes::confdroid_nagios (puppet_class)">confdroid_nagios</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::client::target" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aclient_3A_3Atarget.html" title="puppet_classes::confdroid_nagios::client::target (puppet_class)">confdroid_nagios::client::target</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::main::config" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_nagios::main::config (puppet_class)">confdroid_nagios::main::config</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::main::dirs" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_nagios::main::dirs (puppet_class)">confdroid_nagios::main::dirs</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::main::install" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_nagios::main::install (puppet_class)">confdroid_nagios::main::install</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::monitoring::fail2ban" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Amonitoring_3A_3Afail2ban.html" title="puppet_classes::confdroid_nagios::monitoring::fail2ban (puppet_class)">confdroid_nagios::monitoring::fail2ban</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::config" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aconfig.html" title="puppet_classes::confdroid_nagios::nagios::config (puppet_class)">confdroid_nagios::nagios::config</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::add_contact_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_contact_rules (puppet_class)">confdroid_nagios::nagios::objects::add_contact_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::add_contactgroups_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_contactgroups_rules (puppet_class)">confdroid_nagios::nagios::objects::add_contactgroups_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::add_hostgroup_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_hostgroup_rules (puppet_class)">confdroid_nagios::nagios::objects::add_hostgroup_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::add_servicegroup_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_servicegroup_rules (puppet_class)">confdroid_nagios::nagios::objects::add_servicegroup_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::add_timeperiod_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::add_timeperiod_rules (puppet_class)">confdroid_nagios::nagios::objects::add_timeperiod_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::commands" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html" title="puppet_classes::confdroid_nagios::nagios::objects::commands (puppet_class)">confdroid_nagios::nagios::objects::commands</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::objects::template_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html" title="puppet_classes::confdroid_nagios::nagios::objects::template_rules (puppet_class)">confdroid_nagios::nagios::objects::template_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::nagios::resources::resource" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html" title="puppet_classes::confdroid_nagios::nagios::resources::resource (puppet_class)">confdroid_nagios::nagios::resources::resource</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::params" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::server::access_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Aaccess_rules.html" title="puppet_classes::confdroid_nagios::server::access_rules (puppet_class)">confdroid_nagios::server::access_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::server::files" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Afiles.html" title="puppet_classes::confdroid_nagios::server::files (puppet_class)">confdroid_nagios::server::files</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::server::nagios" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Anagios.html" title="puppet_classes::confdroid_nagios::server::nagios (puppet_class)">confdroid_nagios::server::nagios</a></span>
</div>
</li>
<li id="object_puppet_classes::confdroid_nagios::server::service" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/confdroid_nagios_3A_3Aserver_3A_3Aservice.html" title="puppet_classes::confdroid_nagios::server::service (puppet_class)">confdroid_nagios::server::service</a></span>
</div>
</li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,121 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/init.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class initializes the confdroid_nagios Module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::init.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/init.pp', line 6</span>
class confdroid_nagios {
include confdroid_nagios::params
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,366 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::client::target
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::client::target";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::client::target</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::client::target</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/client/target.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages client target configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::client::target.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/client/target.pp', line 6</span>
class confdroid_nagios::client::target (
) inherits confdroid_nagios::params {
if ($ng_nagios_server != $fqdn) and ($ng_enable_target == true) {
package { $ng_reqpackages_client:
ensure =&gt; $ng_pkg_ensure,
}
# if we want to use NRPE on clients, install it
if $ng_include_nrpe == true {
require confdroid_nrpe
}
@@nagios_host { $fqdn:
ensure =&gt; $ng_ping_ensure,
alias =&gt; $hostname,
address =&gt; $fqdn,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_host,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; $ng_contact_name,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &quot;root_partition_${fqdn}&quot;:
ensure =&gt; $ng_disk_ensure,
check_command =&gt; &quot;check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_root_partition&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
if $ng_enable_swap_check == true {
@@nagios_service { &quot;Swap_Usage_${fqdn}&quot;:
ensure =&gt; $ng_swap_ensure,
check_command =&gt; &quot;check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_swap_usage&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
@@nagios_service { &quot;Local_Users_${fqdn}&quot;:
ensure =&gt; $ng_users_ensure,
check_command =&gt; &quot;check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_local_users&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Total Processes_${fqdn}&quot;:
ensure =&gt; $ng_procs_tot_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_total_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Zombie Processes_${fqdn}&quot;:
ensure =&gt; $ng_procs_z_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_zombie_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Current_Load_${fqdn}&quot;:
ensure =&gt; $ng_load_ensure,
check_command =&gt; &quot;check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $fqdn,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${fqdn}_current_load&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,150 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::main::config
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::main::config";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::main::config</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::main::config</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/config.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages main configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::main::config.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/config.pp', line 6</span>
class confdroid_nagios::main::config (
) inherits confdroid_nagios::params {
if $fqdn == $ng_nagios_server {
include confdroid_nagios::server::service
}
if $ng_enable_target == true {
include confdroid_nagios::client::target
}
if $ng_enable_fail2ban == true {
include confdroid_nagios::monitoring::fail2ban
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,552 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::main::dirs
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::main::dirs";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::main::dirs</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::main::dirs</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/dirs.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages main configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::main::dirs.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/dirs.pp', line 6</span>
class confdroid_nagios::main::dirs (
) inherits confdroid_nagios::params {
require confdroid_nagios::main::install
if $ng_nagios_server == $fqdn {
# main directory
file { $ng_main_dir:
ensure =&gt; directory,
path =&gt; $ng_main_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
}
# /etc/nagios/objects
file { $ng_objects_dir:
ensure =&gt; directory,
path =&gt; $ng_objects_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
}
# /etc/nagios/private
file { $ng_private_dir:
ensure =&gt; directory,
path =&gt; $ng_private_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
}
# /etc/nagios/conf.d
file { $ng_conf_d_dir:
ensure =&gt; directory,
path =&gt; $ng_conf_d_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
}
# /usr/lib64/nagios dir required for plugins
file { $ng_lib_dir:
ensure =&gt; directory,
path =&gt; $ng_lib_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; lib_t,
seluser =&gt; system_u,
}
# /var/spool/nagios
file { $ng_spool_dir:
ensure =&gt; directory,
path =&gt; $ng_spool_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_spool_t,
seluser =&gt; system_u,
}
# include dir
file { $ng_usr_incl:
ensure =&gt; directory,
path =&gt; $ng_usr_incl,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; usr_t,
seluser =&gt; system_u,
}
# log dir
file { $ng_log_dir:
ensure =&gt; directory,
path =&gt; $ng_log_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_log_t,
seluser =&gt; system_u,
}
# log archives
file { $ng_log_archives:
ensure =&gt; directory,
path =&gt; $ng_log_archives,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_log_t,
seluser =&gt; system_u,
}
# /usr/share/nagios
file { $ng_usr_share:
ensure =&gt; directory,
path =&gt; $ng_usr_share,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; usr_t,
seluser =&gt; system_u,
}
# /usr/share/nagios/html
file { $ng_share_html:
ensure =&gt; directory,
path =&gt; $ng_share_html,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; usr_t,
seluser =&gt; system_u,
}
# run dir for pid file
file { $ng_run_dir:
ensure =&gt; directory,
path =&gt; $ng_run_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_var_run_t,
seluser =&gt; system_u,
}
# cmd dir
file { $ng_cmd_dir:
ensure =&gt; directory,
path =&gt; $ng_cmd_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;2775&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_spool_t,
seluser =&gt; system_u,
}
# checkresults dir
file { $ng_checkresults_dir:
ensure =&gt; directory,
path =&gt; $ng_checkresults_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0750&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_spool_t,
seluser =&gt; system_u,
}
}
if $ng_nagios_server != $fqdn {
# ensure client directories exist on server for potential future use
file { $ng_lib_dir:
ensure =&gt; directory,
path =&gt; $ng_lib_dir,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; usr_t,
seluser =&gt; system_u,
}
file { $ng_spool_dir:
ensure =&gt; directory,
path =&gt; $ng_spool_dir,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0755&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_spool_t,
seluser =&gt; system_u,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,166 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::main::install
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::main::install";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::main::install</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::main::install</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/install.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages installation matters for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::main::install.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/install.pp', line 6</span>
class confdroid_nagios::main::install (
) inherits confdroid_nagios::params {
require confdroid_resources
if $ng_nagios_server == $fqdn {
# if our FQDN matches the configured Nagios server FQDN, install both server-
# and client packages.We&#39;ll need httpd installed
require confdroid_apache
package { $ng_reqpackages_server:
ensure =&gt; $ng_pkg_ensure,
}
package { $ng_reqpackages_client:
ensure =&gt; $ng_pkg_ensure,
}
if $ng_include_nrpe == true {
require confdroid_nrpe
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,170 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::main::user
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::main::user";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::main::user</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::main::user</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/user.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages user configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::main::user.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/user.pp', line 6</span>
class confdroid_nagios::main::user (
) inherits confdroid_nagios::params {
require confdroid_nagios::main::install
if $ng_nagios_server == $fqdn {
group { $ng_user:
ensure =&gt; present,
name =&gt; $ng_user,
allowdupe =&gt; false,
}
user { $ng_user:
ensure =&gt; present,
name =&gt; $ng_user,
allowdupe =&gt; false,
comment =&gt; $ng_u_comment,
groups =&gt; $ng_u_groups,
managehome =&gt; true,
home =&gt; $ng_u_home,
shell =&gt; $ng_u_shell,
require =&gt; Group[$ng_user],
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,192 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::monitoring::fail2ban
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::monitoring::fail2ban";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::monitoring::fail2ban</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::monitoring::fail2ban</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/monitoring/fail2ban.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages fail2ban monitoring for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::monitoring::fail2ban.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/monitoring/fail2ban.pp', line 6</span>
class confdroid_nagios::monitoring::fail2ban (
) inherits confdroid_nagios::params {
# we want to create a nagios jail here
if ($ng_nagios_server == $fqdn) and ($ng_enable_fail2ban == true) {
require confdroid_fail2ban
# create the jail file
file { $fn_jail_file:
ensure =&gt; file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; etc_t,
seluser =&gt; system_u,
content =&gt; template(&#39;confdroid_nagios/fail2ban/jail.conf.erb&#39;),
notify =&gt; Service[&#39;fail2ban&#39;],
}
# create the filter rule
file { $fn_filter_file:
ensure =&gt; file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; etc_t,
seluser =&gt; system_u,
content =&gt; template(&#39;confdroid_nagios/fail2ban/filter.conf.erb&#39;),
notify =&gt; Service[&#39;fail2ban&#39;],
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,148 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::config
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::config";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::config</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::config</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/config.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages the nagios objects definitions.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::nagios::config.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/config.pp', line 6</span>
class confdroid_nagios::nagios::config (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
require confdroid_nagios::nagios::objects::commands
require confdroid_nagios::nagios::objects::template_rules
require confdroid_nagios::nagios::objects::add_contact_rules
require confdroid_nagios::nagios::objects::add_contactgroups_rules
require confdroid_nagios::nagios::objects::add_hostgroup_rules
require confdroid_nagios::nagios::objects::add_servicegroup_rules
require confdroid_nagios::nagios::objects::add_timeperiod_rules
require confdroid_nagios::nagios::resources::resource
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,209 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::add_contact_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::add_contact_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_contact_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::add_contact_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contact_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_add_contact.cfg through
concat.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_contact_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>confdroid_nagios::nagios::objects::add_contact { example_user:</p>
</div></p>
<pre class="example code"><code>ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contact_rules.pp', line 13</span>
class confdroid_nagios::nagios::objects::add_contact_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios/conf.d/nagios_add_contacts.cfg
concat { $ng_target_add_contact:
ensure =&gt; present,
path =&gt; $ng_target_add_contact,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;contact_header&#39;:
target =&gt; $ng_target_add_contact,
content =&gt; template($ng_contacts_head_erb),
order =&gt; &#39;000&#39;,
}
# add main contact through define via parameters
confdroid_nagios::nagios::objects::add_contact { $ng_contact_name:
ng_contact_name =&gt; $ng_contact_name,
ng_contact_alias =&gt; $ng_contact_alias,
ng_contact_groups =&gt; $ng_contact_groups,
ng_contact_email =&gt; $ng_contact_email,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,203 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::add_contactgroups_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::add_contactgroups_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_contactgroups_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::add_contactgroups_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contactgroups_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_add_contactgroups.cfg file
and populates through define and external puppet rules
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_contactgroups_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_contactgroups { &#39;example_group&#39;:
ng_contactgroup_name =&gt; &#39;example_group&#39;,
ng_contactgroup_alias =&gt; &#39;Example Group&#39;,
ng_contactgroup_register =&gt; &#39;1&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contactgroups_rules.pp', line 13</span>
class confdroid_nagios::nagios::objects::add_contactgroups_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios/conf.d/nagios_add_contactgroups.cfg
concat { $ng_tgt_contactgroup_add:
ensure =&gt; present,
path =&gt; $ng_tgt_contactgroup_add,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;contactgroups_header&#39;:
target =&gt; $ng_tgt_contactgroup_add,
content =&gt; template($ng_cntctgrps_head_erb),
order =&gt; &#39;000&#39;,
}
# add main contact group through define via parameters
confdroid_nagios::nagios::objects::add_contactgroups { $ng_contactgroup_name:
ng_contactgroup_name =&gt; $ng_contactgroup_name,
ng_contactgroup_alias =&gt; $ng_contactgroup_alias,
ng_contactgroup_members =&gt; $ng_contactgroup_members,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,200 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::add_hostgroup_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::add_hostgroup_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_hostgroup_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::add_hostgroup_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_hostgroup_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_hostgroups_add.cfg and
additional hostgroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_hostgroup_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_hostgroup_rules.pp', line 12</span>
class confdroid_nagios::nagios::objects::add_hostgroup_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios_conf.d/nagios_hostgroups_add.cfg
concat { $ng_tgt_hostgroup_add:
ensure =&gt; present,
path =&gt; $ng_tgt_hostgroup_add,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;hostgroups_header&#39;:
target =&gt; $ng_tgt_hostgroup_add,
content =&gt; template($ng_tgt_hostgrp_head_erb),
order =&gt; &#39;000&#39;,
}
# add hostgroup rules through defines and parameters
confdroid_nagios::nagios::objects::add_hostgroups { $ng_hostgroup_name:
ng_hostgroup_name =&gt; $ng_hostgroup_name,
ng_hostgroup_alias =&gt; $ng_hostgroup_alias,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,200 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::add_servicegroup_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::add_servicegroup_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_servicegroup_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::add_servicegroup_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_servicegroup_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_servicegroups_add.cfg and
additional servicegroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_servicegroup_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example Servicegroup&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_servicegroup_rules.pp', line 12</span>
class confdroid_nagios::nagios::objects::add_servicegroup_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios_conf.d/nagios_servicegroups_add.cfg
concat { $ng_tgt_servicegroup_add:
ensure =&gt; present,
path =&gt; $ng_tgt_servicegroup_add,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;servicegroups_header&#39;:
target =&gt; $ng_tgt_servicegroup_add,
content =&gt; template($ng_tgt_svcgrp_head_erb),
order =&gt; &#39;000&#39;,
}
# add default servicegroup rules through defines and parameters
confdroid_nagios::nagios::objects::add_servicegroups { $ng_servicegroup_name:
ng_servicegroup_name =&gt; $ng_servicegroup_name,
ng_servicegroup_alias =&gt; $ng_servicegroup_alias,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,223 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::add_timeperiod_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::add_timeperiod_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_timeperiod_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::add_timeperiod_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_timeperiod_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_timeperiods_add.cfg and
add. hostgroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_timeperiod_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com) }</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>confdroid_nagios::nagios::objects::add_timeperiods { example_timeperiod:</p>
</div></p>
<pre class="example code"><code>ng_timep_name =&gt; &#39;example_timeperiod&#39;,
ng_timep_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_timeperiod_rules.pp', line 18</span>
class confdroid_nagios::nagios::objects::add_timeperiod_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# manage /etc/nagios/conf.d/nagios_timeperiods_add.cfg
concat { $ng_tgt_timep_add:
ensure =&gt; present,
path =&gt; $ng_tgt_timep_add,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;timeperiods_header&#39;:
target =&gt; $ng_tgt_timep_add,
content =&gt; template($ng_tgt_timep_head_erb),
order =&gt; &#39;000&#39;,
}
# default timeperiod rule 24x7
confdroid_nagios::nagios::objects::add_timeperiods { &#39;24x7&#39;:
ng_timep_name =&gt; &#39;24x7&#39;,
ng_timep_alias =&gt; &#39;24x7&#39;,
ng_timep_monday =&gt; &#39;00:00-24:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-24:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-24:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-24:00&#39;,
ng_timep_friday =&gt; &#39;00:00-24:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-24:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-24:00&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,569 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::commands
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::commands";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::commands</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::commands</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/commands.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages all commands known to NAGIOS through Puppet exports,
and populates /etc/nagios/conf.d/nagios_commands.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/commands.pp', line 8</span>
class confdroid_nagios::nagios::objects::commands (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
@@nagios_command { &#39;notify-host-by-email&#39;:
ensure =&gt; present,
command_name =&gt; &#39;notify-host-by-email&#39;,
command_line =&gt; &#39;/usr/bin/printf &quot;%b&quot; &quot;***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTADDRESS$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n&quot; | /bin/mail -s &quot;** $NOTIFICATIONTYPE$ Host Alert: $HOSTADDRESS$ is $HOSTSTATE$ **&quot; $CONTACTEMAIL$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;notify-service-by-email&#39;:
ensure =&gt; present,
command_name =&gt; &#39;notify-service-by-email&#39;,
command_line =&gt; &#39;/usr/bin/printf &quot;%b&quot; &quot;***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n&quot; | /bin/mail -s &quot;** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **&quot; $CONTACTEMAIL$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check-host-alive&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check-host-alive&#39;,
command_line =&gt; &#39;$USER1$/check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_disk&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_disk&#39;,
command_line =&gt; &#39;$USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_local_load&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_local_load&#39;,
command_line =&gt; &#39;$USER1$/check_load -w $ARG1$ -c $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_local_procs&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_local_procs&#39;,
command_line =&gt; &#39;$USER1$/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_local_users&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_local_users&#39;,
command_line =&gt; &#39;$USER1$/check_users -w $ARG1$ -c $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_local_swap&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_local_swap&#39;,
command_line =&gt; &#39;$USER1$/check_swap -w $ARG1$ -c $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_ftp&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_ftp&#39;,
command_line =&gt; &#39;$USER1$/check_ftp -H $HOSTADDRESS$ $ARG1$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_snmp&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_snmp&#39;,
command_line =&gt; &#39;$USER1$/check_snmp -H $HOSTADDRESS$ $ARG1$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_http&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_http&#39;,
command_line =&gt; &#39;$USER1$/check_http -I $HOSTADDRESS$ $ARG1$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_ssh&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_ssh&#39;,
command_line =&gt; &#39;$USER1$/check_ssh $ARG1$ $HOSTADDRESS$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_ping&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_ping&#39;,
command_line =&gt; &#39;$USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_tcp&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_tcp&#39;,
command_line =&gt; &#39;$USER1$/check_tcp -H $HOSTADDRESS$ -p $ARG1$ $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_udp&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_udp&#39;,
command_line =&gt; &#39;$USER1$/check_udp -H $HOSTADDRESS$ -p $ARG1$ $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_nrpe&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_nrpe&#39;,
command_line =&gt; &#39;$USER1$/check_nrpe -t 30 -H $HOSTADDRESS$ -c $ARG1$ -a $ARG2$ $ARG3$ $ARG4$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_nagios&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_nagios&#39;,
command_line =&gt; &#39;$USER1$/check_nagios -F $ARG1$ -e $ARG2$ -C $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_bandwidth&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_bandwidth&#39;,
command_line =&gt; &#39;$USER1$/check_bandwidth.sh -t 30 -H $HOSTADDRESS$ linux $ARG1$ $ARG2$ $ARG3$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;process-service-perfdata-file&#39;:
ensure =&gt; present,
command_name =&gt; &#39;process-service-perfdata-file&#39;,
command_line =&gt; &#39;/bin/mv /var/log/pnp4nagios/service-perfdata /var/spool/pnp4nagios/service-perfdata.$TIMET$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;process-host-perfdata-file&#39;:
ensure =&gt; present,
command_name =&gt; &#39;process-host-perfdata-file&#39;,
command_line =&gt; &#39;/bin/mv /var/log/pnp4nagios/host-perfdata /var/spool/pnp4nagios/host-perfdata.$TIMET$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_ntp_time&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_ntp_time&#39;,
command_line =&gt; &#39;$USER1$/check_ntp_time -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
@@nagios_command { &#39;check_fail2ban&#39;:
ensure =&gt; present,
command_name =&gt; &#39;check_fail2ban&#39;,
command_line =&gt; &#39;$USER1$/check_procs -c $ARG1$ -C $ARG2$&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
target =&gt; $ng_target_command,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,276 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::objects::template_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::objects::template_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::template_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::objects::template_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/template_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_templates.cfg through
concat.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::template_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::templates { &#39;generic contact&#39;:
ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/template_rules.pp', line 12</span>
class confdroid_nagios::nagios::objects::template_rules (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
# create the templates.cfg file
concat { $ng_target_templates:
ensure =&gt; present,
path =&gt; $ng_target_templates,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
concat::fragment { &#39;template_header&#39;:
target =&gt; $ng_target_templates,
content =&gt; template($ng_templates_head_erb),
order =&gt; &#39;000&#39;,
}
# basic templates
confdroid_nagios::nagios::objects::templates { &#39;generic contact&#39;:
ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;generic-host&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-host&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;linux-server&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;linux-server&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;windows-server&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;windows-server&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;generic-switch&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-switch&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;generic-printer&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-printer&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;generic-service&#39;:
ng_template_object =&gt; &#39;service&#39;,
ng_template_object_name =&gt; &#39;generic-service&#39;,
ng_max_check_attempts =&gt; &#39;3&#39;,
ng_notification_options =&gt; &#39;w,u,c,r&#39;,
}
confdroid_nagios::nagios::objects::templates { &#39;local-service&#39;:
ng_template_object =&gt; &#39;service&#39;,
ng_template_object_name =&gt; &#39;local-service&#39;,
ng_max_check_attempts =&gt; &#39;4&#39;,
ng_template_object_use =&gt; &#39;generic-service&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,210 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::nagios::resources::resource
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::nagios::resources::resource";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::resources::resource</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::nagios::resources::resource</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/resources/resource.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages the resource config file header.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::resources::resource.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com) }</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>concat::fragment { “user_rule_plugins”:</p>
</div></p>
<pre class="example code"><code>ng_user_arg_name =&gt; &quot;$user1$&quot;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins&#39;,
ng_user_arg_comment =&gt; &quot;Sets $USER1$ to be the path to the plugins&quot;,</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/resources/resource.pp', line 11</span>
class confdroid_nagios::nagios::resources::resource (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
concat { $ng_resource_file:
ensure =&gt; present,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
concat::fragment { &#39;header&#39;:
target =&gt; $ng_resource_file,
content =&gt; template($ng_resource_erb),
order =&gt; &#39;000&#39;,
}
# plugins rule
confdroid_nagios::nagios::resources::resource_df { &#39;user_rule_plugins&#39;:
ng_user_arg_name =&gt; &#39;USER1&#39;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins/&#39;,
ng_user_arg_comment =&gt; &#39;Sets user1 to be the path to the plugins&#39;,
}
# eventhandlers rule
confdroid_nagios::nagios::resources::resource_df { &#39;user_rule_eventhandlers&#39;:
ng_user_arg_name =&gt; &#39;USER2&#39;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins/eventhandlers/&#39;,
ng_user_arg_comment =&gt; &#39;Sets user2 to be the path to the eventhandlers&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,174 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::server::access_rules
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::server::access_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::server::access_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::server::access_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/access_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages presence of /etc/nagios/passwd file.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::access_rules.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/access_rules.pp', line 6</span>
class confdroid_nagios::server::access_rules (
) inherits confdroid_nagios::params {
if $fqdn == $ng_nagios_server {
# manage /etc/nagios/passwd file
concat { $ng_htpasswd_file:
ensure =&gt; present,
path =&gt; $ng_htpasswd_file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;apache&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Exec[&#39;ng_restart_httpd&#39;],
}
# manage file header
concat::fragment { &#39;fle_header&#39;:
target =&gt; $ng_htpasswd_file,
content =&gt; template($ng_htpasswd_head),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,206 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::server::files
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::server::files";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::server::files</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::server::files</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/files.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages configuration files for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::files.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/files.pp', line 6</span>
class confdroid_nagios::server::files (
) inherits confdroid_nagios::params {
require confdroid_nagios::main::dirs
if $ng_nagios_server == $fqdn {
file { $ng_nagios_cfg_file:
ensure =&gt; file,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
content =&gt; template($ng_nagios_cfg_erb),
notify =&gt; Service[$ng_service],
}
file { $ng_cgi_cfg_file:
ensure =&gt; file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
content =&gt; template($ng_cgi_cfg_erb),
notify =&gt; Service[$ng_service],
}
file { $ng_lock_file:
ensure =&gt; file,
owner =&gt; &#39;nagios&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_var_run_t,
seluser =&gt; system_u,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,488 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::server::nagios
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::server::nagios";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::server::nagios</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::server::nagios</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/nagios.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages Nagios configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::nagios.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/nagios.pp', line 6</span>
class confdroid_nagios::server::nagios (
) inherits confdroid_nagios::params {
if $ng_nagios_server == $fqdn {
@@nagios_host { &quot;localhost_${fqdn}&quot;:
ensure =&gt; $ng_ping_ensure,
alias =&gt; &#39;localhost&#39;,
address =&gt; &#39;127.0.0.1&#39;,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_localhost,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; $ng_contact_name,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_service],
}
@@nagios_host { $fqdn:
ensure =&gt; $ng_ping_ensure,
alias =&gt; &#39;nag001&#39;,
address =&gt; &#39;127.0.0.1&#39;,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_localhost,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; $ng_contact_name,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;check_nagios_localhost&#39;:
check_command =&gt; &quot;check_nagios!${ng_spool_dir}/status.dat!5!/usr/sbin/nagios&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_nagios_service&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
contacts =&gt; $ng_contact_name,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;root_partition_localhost&#39;:
ensure =&gt; $ng_disk_ensure,
check_command =&gt; &quot;check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_root_partition&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
if $ng_enable_swap_check == true {
@@nagios_service { &#39;Swap_Usage_localhost&#39;:
ensure =&gt; $ng_swap_ensure,
check_command =&gt; &quot;check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_swap_usage&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
}
@@nagios_service { &#39;Local_Users_localhost&#39;:
ensure =&gt; $ng_users_ensure,
check_command =&gt; &quot;check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_local_users&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;Total_Processes_localhost&#39;:
ensure =&gt; $ng_procs_tot_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_total_processes&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;Zombie_Processes_localhost&#39;:
ensure =&gt; $ng_procs_z_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_zombie_processes&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;Current_Load_localhost&#39;:
ensure =&gt; $ng_load_ensure,
check_command =&gt; &quot;check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &quot;localhost_${fqdn}&quot;,
contacts =&gt; $ng_contact_name,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_current_load&#39;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
notify =&gt; Service[$ng_service],
}
resources { [&#39;nagios_host&#39;,
&#39;nagios_hostgroup&#39;,
&#39;nagios_hostdependency&#39;,
&#39;nagios_hostescalation&#39;,
&#39;nagios_hostextinfo&#39;,
&#39;nagios_service&#39;,
&#39;nagios_servicegroup&#39;,
&#39;nagios_servicedependency&#39;,
&#39;nagios_serviceescalation&#39;,
&#39;nagios_serviceextinfo&#39;,
&#39;nagios_contact&#39;,
&#39;nagios_contactgroup&#39;,
&#39;nagios_command&#39;,
&#39;nagios_timeperiod&#39;]:
purge =&gt; true,
}
# collect resources and populate /etc/nagios/conf.d/nagios_*.cfg
Nagios_host &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostgroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostdependency &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostescalation &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostextinfo &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_service &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_servicegroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_servicedependency &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_serviceescalation &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_serviceextinfo &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_contact &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_contactgroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_command &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_timeperiod &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,170 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_nagios::server::service
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_nagios::server::service";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_nagios::server::service</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_nagios::server::service</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="confdroid_nagios_3A_3Aparams.html" title="puppet_classes::confdroid_nagios::params (puppet_class)">confdroid_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/service.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages services for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::service.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/service.pp', line 6</span>
class confdroid_nagios::server::service (
) inherits confdroid_nagios::params {
require confdroid_nagios::server::files
if $ng_nagios_server == $fqdn {
require confdroid_nagios::server::access_rules
require confdroid_nagios::nagios::config
require confdroid_nagios::server::nagios
exec { &#39;ng_restart_httpd&#39;:
command =&gt; &#39;systemctl restart httpd&#39;,
path =&gt; [&#39;/bin&#39;, &#39;/usr/bin&#39;, &#39;/sbin&#39;, &#39;/usr/sbin&#39;],
refreshonly =&gt; true,
}
service { $ng_service:
ensure =&gt; running,
name =&gt; $ng_service,
enable =&gt; true,
hasrestart =&gt; true,
hasstatus =&gt; true,
require =&gt; Exec[&#39;ng_restart_httpd&#39;],
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,103 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<title>Defined Type List</title>
<base id="base_target" target="_parent" />
</head>
<body>
<div id="content">
<div class="fixed_header">
<h1 id="full_list_header">Defined Type List</h1>
<div id="full_list_nav">
<span><a target="_self" href="puppet_class_list.html">
Puppet Classes
</a></span>
<span><a target="_self" href="puppet_defined_type_list.html">
Defined Types
</a></span>
</div>
<div id="search">Search: <input type="text" /></div>
</div>
<ul id="full_list" class="puppet_defined_type">
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::add_contact" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_contact (puppet_defined_type)">confdroid_nagios::nagios::objects::add_contact</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::add_contactgroups" class="even">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_contactgroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_contactgroups</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::add_hostgroups" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_hostgroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_hostgroups</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::add_servicegroups" class="even">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_servicegroups (puppet_defined_type)">confdroid_nagios::nagios::objects::add_servicegroups</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::add_timeperiods" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::add_timeperiods (puppet_defined_type)">confdroid_nagios::nagios::objects::add_timeperiods</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::objects::templates" class="even">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html" title="puppet_defined_types::confdroid_nagios::nagios::objects::templates (puppet_defined_type)">confdroid_nagios::nagios::objects::templates</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::nagios::resources::resource_df" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html" title="puppet_defined_types::confdroid_nagios::nagios::resources::resource_df (puppet_defined_type)">confdroid_nagios::nagios::resources::resource_df</a></span>
</div>
</li>
<li id="object_puppet_defined_types::confdroid_nagios::server::access" class="even">
<div class="item">
<span class='object_link'><a href="puppet_defined_types/confdroid_nagios_3A_3Aserver_3A_3Aaccess.html" title="puppet_defined_types::confdroid_nagios::server::access (puppet_defined_type)">confdroid_nagios::server::access</a></span>
</div>
</li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,263 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::add_contact
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::add_contact";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_contact</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::add_contact</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contact.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define manages additional contacts known to NAGIOS through external
Puppet rules, and populates /etc/nagios/conf.d/nagios_add_contact.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_contact.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_contact { &#39;example_user&#39;:
ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_contact_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact short name.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_use</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;generic-contact&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which contact template to use</p>
</div>
</li>
<li>
<span class='name'>ng_contact_alias</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_contact_email</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact email address.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_groups</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>specify the contact group for the contact.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contact.pp', line 19</span>
define confdroid_nagios::nagios::objects::add_contact (
Optional[String] $ng_contact_name = undef,
String $ng_contact_use = &#39;generic-contact&#39;,
Optional[String] $ng_contact_alias = undef,
Optional[String] $ng_contact_email = undef,
Optional[String] $ng_contact_groups = undef,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_target_add_contact = $confdroid_nagios::params::ng_target_add_contact
$ng_contacts_rule_erb = $confdroid_nagios::params::ng_contacts_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_target_add_contact,
content =&gt; template($ng_contacts_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,230 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::add_contactgroups
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::add_contactgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_contactgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::add_contactgroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contactgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define populates /etc/nagios/conf.d/nagios_add_contactgroups through
external puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_contactgroups.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_contactgroup_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the short name of the contact group.</p>
</div>
</li>
<li>
<span class='name'>ng_contactgroup_alias</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the alias (long name) of the contact group</p>
</div>
</li>
<li>
<span class='name'>ng_contactgroup_register</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify whether the contact group should be registered in Nagios.</p>
</div>
</li>
<li>
<span class='name'>ng_contactgroup_members</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the members of the contact group.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contactgroups.pp', line 15</span>
define confdroid_nagios::nagios::objects::add_contactgroups (
Optional[String] $ng_contactgroup_name = undef,
Optional[String] $ng_contactgroup_alias = undef,
Optional[String] $ng_contactgroup_members = undef,
String $ng_contactgroup_register = &#39;1&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_tgt_contactgroup_add = $confdroid_nagios::params::ng_tgt_contactgroup_add
$ng_cntctgrps_rule_erb = $confdroid_nagios::params::ng_cntctgrps_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_tgt_contactgroup_add,
content =&gt; template($ng_cntctgrps_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,221 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::add_hostgroups
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::add_hostgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_hostgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::add_hostgroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_hostgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_hostgroups_add through
external Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_hostgroups.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_hostgroup_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the hostgroup short name.</p>
</div>
</li>
<li>
<span class='name'>ng_hostgroup_alias</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the hostgroup alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_hostgroup_register</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to register the hostgroup.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_hostgroups.pp', line 15</span>
define confdroid_nagios::nagios::objects::add_hostgroups (
Optional[String] $ng_hostgroup_name = undef,
Optional[String] $ng_hostgroup_alias = undef,
String $ng_hostgroup_register = &#39;1&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_tgt_hostgroup_add = $confdroid_nagios::params::ng_tgt_hostgroup_add
$ng_tgt_hostgrp_rule_erb = $confdroid_nagios::params::ng_tgt_hostgrp_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_tgt_hostgroup_add,
content =&gt; template($ng_tgt_hostgrp_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,223 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::add_servicegroups
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::add_servicegroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_servicegroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::add_servicegroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_servicegroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_servicegroups_add through
external Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_servicegroups.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
<h1 id="label-License-3A">License:</h1>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example servicegroup&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_servicegroup_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the servicegroup short name</p>
</div>
</li>
<li>
<span class='name'>ng_servicegroup_alias</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the servicegroup alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_servicegroup_register</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether you want to register the servicegroup</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_servicegroups.pp', line 18</span>
define confdroid_nagios::nagios::objects::add_servicegroups (
Optional[String] $ng_servicegroup_name = undef,
Optional[String] $ng_servicegroup_alias = undef,
String $ng_servicegroup_register = &#39;1&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_tgt_servicegroup_add = $confdroid_nagios::params::ng_tgt_servicegroup_add
$ng_tgt_svcgrp_rule_erb = $confdroid_nagios::params::ng_tgt_svcgrp_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_tgt_servicegroup_add,
content =&gt; template($ng_tgt_svcgrp_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,348 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::add_timeperiods
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::add_timeperiods";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::add_timeperiods</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::add_timeperiods</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_timeperiods.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_timeperiods_add through
external Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::add_timeperiods.pp Module name: confdroid_nagios Author: 12ww160 (12ww160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::nagios::objects::add_timeperiods { &#39;example_timeperiod&#39;:
ng_timep_name =&gt; &#39;example_timeperiod&#39;,
ng_timep_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_timep_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the timeperiod short name.</p>
</div>
</li>
<li>
<span class='name'>ng_timep_alias</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the timeperiod alias (long name)</p>
</div>
</li>
<li>
<span class='name'>ng_timep_monday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Monday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_tuesday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Tuesday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_wednesday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Wednesday.</p>
</div>
</li>
<li>
<span class='name'>ng_timep_thursday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Thursday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_friday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Friday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_saturday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Saturday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_sunday</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-24:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Sunday.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_timeperiods.pp', line 28</span>
define confdroid_nagios::nagios::objects::add_timeperiods (
Optional[String] $ng_timep_name = undef,
Optional[String] $ng_timep_alias = undef,
String $ng_timep_monday = &#39;00:00-24:00&#39;,
String $ng_timep_tuesday = &#39;00:00-24:00&#39;,
String $ng_timep_wednesday = &#39;00:00-24:00&#39;,
String $ng_timep_thursday = &#39;00:00-24:00&#39;,
String $ng_timep_friday = &#39;00:00-24:00&#39;,
String $ng_timep_saturday = &#39;00:00-24:00&#39;,
String $ng_timep_sunday = &#39;00:00-24:00&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_tgt_timep_add = $confdroid_nagios::params::ng_tgt_timep_add
$ng_tgt_timep_rule_erb = $confdroid_nagios::params::ng_tgt_timep_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_tgt_timep_add,
content =&gt; template($ng_tgt_timep_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,767 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::objects::templates
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::objects::templates";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::objects::templates</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::objects::templates</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/templates.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define manages populates /etc/nagios/conf.d/templates.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::objects::templates.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com) notifications. for the defined service or host.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_template_object</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the object type for the templates. Valid options are <code>contact</code>, <code>host</code> and <code>service</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_template_object_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>populates the name field, i.e. <code>generic-contact</code>, <code>generic-host</code>, <code>generic-service</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_svc_notification_period</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Period in which to send out notifications for service events, i.e. <code>24x7</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_period</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Period in which to send out notifications for host events , i.e. <code>24x7</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_service_notification_options</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;w,u,c,r,f,s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>What service events to send out notifications for: w = notify on WARNING service states, u = notify on UNKNOWN service states, c = notify on CRITICAL service states, r = notify on service recoveries (OK states), f = notify when the service starts and stops flapping. n = none (the contact will not receive any type of service notifications).</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_options</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;d,u,r,f,s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>What host events to send out notifications for: d = notify on DOWN host states, u = notify on UNREACHABLE host states, r = notify on host recoveries (UP states), f = notify when the host starts and stops flapping, s = notify when host or service scheduled downtime starts and ends. n = none (the contact will not receive any type of host notifications).</p>
</div>
</li>
<li>
<span class='name'>ng_service_notification_commands</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;notify-service-by-email&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Command to use for service event notification. Command must be defined in commands.cfg</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_commands</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;notify-host-by-email&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Command to use for host event notification. Command must be defined in commands.cfg.</p>
</div>
</li>
<li>
<span class='name'>ng_object_register</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to register the object to Nagios. Since this is a template definition, we do not want to register those.</p>
</div>
</li>
<li>
<span class='name'>ng_template_object_use</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Which template to use for a given host or service definition, i.e. <code>generic-host</code>, <code>generic-service</code> etc.</p>
</div>
</li>
<li>
<span class='name'>ng_notifications_enabled</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether notifications are enabled. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_event_handler_enabled</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether event handlers are enabled. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_flap_detection_enabled</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether flap detection is enabled. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_process_perf_data</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to process performance data. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_retain_status_information</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to retain status information. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_retain_nonstatus_information</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to retain non-status information. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_notification_period</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Which period in to send out</p>
</div>
</li>
<li>
<span class='name'>ng_notification_interval</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;30&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>how often (in minutes) we should resend notifications for the current status.</p>
</div>
</li>
<li>
<span class='name'>ng_check_period</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Which period in to run checks for the defined object.</p>
</div>
</li>
<li>
<span class='name'>ng_max_check_attempts</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;10&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>how often to check the defined object maximal.</p>
</div>
</li>
<li>
<span class='name'>ng_notification_options</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>see <code>ng_service_notification_options</code> and <code>ng_host_notification_options</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_groups</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;admins&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>contact groups for the defined object. Specified contact group must exit in contact_groups</p>
</div>
</li>
<li>
<span class='name'>ng_active_checks_enabled</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to enable active checks. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_passive_checks_enabled</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to enable passive checks. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_parallelize_check</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to parallelize checks Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_obsess_over_service</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to obsess over the service. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_check_freshness</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to check freshness. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_is_volatile</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether the service is volatile. Valid options are <code>0</code> and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_check_interval</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;5&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>How often to check the service under normal conditions.</p>
</div>
</li>
<li>
<span class='name'>ng_retry_interval</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Re-check the service every x minutes until a hard state can be determined.</p>
</div>
</li>
<li>
<span class='name'>ng_host_check_command</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;check-host-alive&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the check command for host checks</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/templates.pp', line 79</span>
define confdroid_nagios::nagios::objects::templates (
Optional[String] $ng_template_object = undef,
Optional[String] $ng_template_object_name = undef,
String $ng_svc_notification_period = &#39;24x7&#39;,
String $ng_host_notification_period = &#39;24x7&#39;,
String $ng_service_notification_options = &#39;w,u,c,r,f,s&#39;,
String $ng_host_notification_options = &#39;d,u,r,f,s&#39;,
String $ng_service_notification_commands = &#39;notify-service-by-email&#39;,
String $ng_host_notification_commands = &#39;notify-host-by-email&#39;,
String $ng_object_register = &#39;0&#39;,
Optional[String] $ng_template_object_use = undef,
String $ng_notifications_enabled = &#39;1&#39;,
String $ng_event_handler_enabled = &#39;1&#39;,
String $ng_flap_detection_enabled = &#39;1&#39;,
String $ng_process_perf_data = &#39;1&#39;,
String $ng_retain_status_information = &#39;1&#39;,
String $ng_retain_nonstatus_information = &#39;1&#39;,
String $ng_notification_period = &#39;24x7&#39;,
String $ng_notification_interval = &#39;30&#39;,
String $ng_check_period = &#39;24x7&#39;,
String $ng_check_interval = &#39;5&#39;,
String $ng_retry_interval = &#39;1&#39;,
String $ng_max_check_attempts = &#39;10&#39;,
String $ng_host_check_command = &#39;check-host-alive&#39;,
Optional[String] $ng_notification_options = undef,
String $ng_contact_groups = &#39;admins&#39;,
String $ng_active_checks_enabled = &#39;1&#39;,
String $ng_passive_checks_enabled = &#39;1&#39;,
String $ng_parallelize_check = &#39;1&#39;,
String $ng_obsess_over_service = &#39;1&#39;,
String $ng_check_freshness = &#39;0&#39;,
String $ng_is_volatile = &#39;0&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_target_templates = $confdroid_nagios::params::ng_target_templates
$ng_templates_rule_erb = $confdroid_nagios::params::ng_templates_rule_erb
$fqdn = $confdroid_nagios::params::fqdn
if $ng_nagios_server == $fqdn {
concat::fragment { $name:
target =&gt; $ng_target_templates,
content =&gt; template($ng_templates_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,229 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::nagios::resources::resource_df
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::nagios::resources::resource_df";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::nagios::resources::resource_df</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::nagios::resources::resource_df</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/resources/resource_df.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define manages the resources in/etc/nagios/private/resources.cfg
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::nagios::resources::resource_df.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_user_arg_name</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the name of user argument i.e. $user1$</p>
</div>
</li>
<li>
<span class='name'>ng_user_arg_value</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the value of t user argument i.e. $user1$</p>
</div>
</li>
<li>
<span class='name'>ng_user_arg_comment</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the argument i.e. $user1$</p>
</div>
</li>
<li>
<span class='name'>ng_resource_rule_erb</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;confdroid_nagios/nagios/resource_cfg_rule.erb&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>resource rule #</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/resources/resource_df.pp', line 10</span>
define confdroid_nagios::nagios::resources::resource_df (
Optional[String] $ng_user_arg_name = undef,
Optional[String] $ng_user_arg_value = undef,
Optional[String] $ng_user_arg_comment = undef,
String $ng_resource_rule_erb = &#39;confdroid_nagios/nagios/resource_cfg_rule.erb&#39;,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_resource_file = $confdroid_nagios::params::ng_resource_file
$fqdn = $facts[&#39;networking&#39;][&#39;fqdn&#39;]
if $ng_nagios_server == $fqdn {
concat::fragment { &quot;rule_${name}&quot;:
target =&gt; $ng_resource_file,
content =&gt; template($ng_resource_rule_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,198 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: confdroid_nagios::server::access
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::confdroid_nagios::server::access";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">confdroid_nagios::server::access</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: confdroid_nagios::server::access</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/access.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages access configuration for the confdroid_nagios module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>confdroid_nagios::server::access.pp Module name: confdroid_nagios Author: 12ww1160 (12ww1160@confdroid.com)</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>confdroid_nagios::server::access { &#39;example&#39;:
ng_htpasswd_user =&gt; &#39;example_user&#39;,
ng_htpasswd_password =&gt; &#39;example_password_encrypted&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_htpasswd_user</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>The username for the Nagios web interface.</p>
</div>
</li>
<li>
<span class='name'>ng_htpasswd_password</span>
<span class='type'>(<tt>Optional[String]</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>The encrypted password for the Nagios web interface.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/access.pp', line 13</span>
define confdroid_nagios::server::access (
Optional[String] $ng_htpasswd_user = undef,
Optional[String] $ng_htpasswd_password = undef,
) {
$ng_nagios_server = $confdroid_nagios::params::ng_nagios_server
$ng_htpasswd_file = $confdroid_nagios::params::ng_htpasswd_file
$ng_htpasswd_rule = $confdroid_nagios::params::ng_htpasswd_rule
$ng_service = $confdroid_nagios::params::ng_service
if $fqdn == $ng_nagios_server {
# create password rules
concat::fragment { $name:
target =&gt; $ng_htpasswd_file,
content =&gt; template($ng_htpasswd_rule),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,98 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Top Level Namespace
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "";
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">Top Level Namespace</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Top Level Namespace
</h1>
<div class="box_info">
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -13,4 +13,8 @@ class confdroid_nagios::main::config (
if $ng_enable_target == true { if $ng_enable_target == true {
include confdroid_nagios::client::target include confdroid_nagios::client::target
} }
if $ng_enable_fail2ban == true {
include confdroid_nagios::monitoring::fail2ban
}
} }

View File

@@ -0,0 +1,41 @@
## confdroid_nagios::monitoring::fail2ban.pp
# Module name: confdroid_nagios
# Author: 12ww1160 (12ww1160@confdroid.com)
# @summary Class manages fail2ban monitoring for the confdroid_nagios module.
###############################################################################
class confdroid_nagios::monitoring::fail2ban (
) inherits confdroid_nagios::params {
# we want to create a nagios jail here
if ($ng_nagios_server == $fqdn) and ($ng_enable_fail2ban == true) {
require confdroid_fail2ban
# create the jail file
file { $fn_jail_file:
ensure => file,
owner => 'root',
group => 'root',
mode => '0644',
selrange => s0,
selrole => object_r,
seltype => etc_t,
seluser => system_u,
content => template('confdroid_nagios/fail2ban/jail.conf.erb'),
notify => Service['fail2ban'],
}
# create the filter rule
file { $fn_filter_file:
ensure => file,
owner => 'root',
group => 'root',
mode => '0644',
selrange => s0,
selrole => object_r,
seltype => etc_t,
seluser => system_u,
content => template('confdroid_nagios/fail2ban/filter.conf.erb'),
notify => Service['fail2ban'],
}
}
}

View File

@@ -218,5 +218,15 @@ class confdroid_nagios::nagios::objects::commands (
mode => '0640', mode => '0640',
target => $ng_target_command, target => $ng_target_command,
} }
@@nagios_command { 'check_fail2ban':
ensure => present,
command_name => 'check_fail2ban',
command_line => '$USER1$/check_procs -c $ARG1$ -C $ARG2$',
owner => $ng_user,
group => $ng_user,
mode => '0640',
target => $ng_target_command,
}
} }
} }

View File

@@ -427,7 +427,21 @@
# Default is 'linux-services'. # Default is 'linux-services'.
# @param [String] ng_servicegroup_alias The alias of the default service group. # @param [String] ng_servicegroup_alias The alias of the default service group.
# Default is 'Linux Services'. # Default is 'Linux Services'.
################################################################################ # @param [Boolean] ng_enable_fail2ban Whether to enable fail2ban monitoring in
# Nagios. Default is false.
# @param [String] ng_jail_order The order number of jails in the jail.d directory.
# Default is '10'.
# @param [String] ng_jail_enable Whether to enable the monitoring of a specific
# jail in Nagios. Default is 'true'.
# @param [String] ng_fail2ban_logpath The path to the nagios access log to
# monitor. Default is '/var/log/httpd/access_log'.
# @param [String] ng_fail2ban_maxretry The maximum number of retries before a
# host is considered banned in fail2ban. Default is '5'.
# @param [String] ng_fail2ban_bantime The time in seconds that a host is banned
# in fail2ban. Default is '3600'.
# @param [String] ng_fail2ban_ignoreip A comma-separated list of IP addresses
# to ignore in fail2ban. Default is '127.0.0.1/8 ::1 192.168.1.0/24'.
###############################################################################
class confdroid_nagios::params ( class confdroid_nagios::params (
# main # main
@@ -670,6 +684,18 @@ class confdroid_nagios::params (
# single nagios checks # single nagios checks
Boolean $ng_enable_swap_check = true, Boolean $ng_enable_swap_check = true,
# fail2ban
Boolean $ng_enable_fail2ban = false,
String $ng_jail_order = '10',
Boolean $ng_jail_enable = true,
#String $ng_fail2ban_jail = 'httpd',
String $ng_fail2ban_logpath = '/var/log/httpd/access_log',
#String $ng_fail2ban_regex = 'sshd.*Failed password for',
String $ng_fail2ban_maxretry = '5',
#String $ng_fail2ban_findtime = '600',
String $ng_fail2ban_bantime = '3600',
String $ng_fail2ban_ignoreip = '127.0.0.1/8 ::1 192.168.1.0/24'
) { ) {
# Default facts # Default facts
$fqdn = $facts['networking']['fqdn'] $fqdn = $facts['networking']['fqdn']
@@ -752,6 +778,12 @@ class confdroid_nagios::params (
$ng_svc_perfdata_file = "${ng_log_dir}/service-perfdata" $ng_svc_perfdata_file = "${ng_log_dir}/service-perfdata"
$ng_debug_file = "${ng_log_dir}/nagios.debug" $ng_debug_file = "${ng_log_dir}/nagios.debug"
# fail2ban
$fn_jail_path = '/etc/fail2ban/jail.d'
$fn_jail_file = "${fn_jail_path}/${ng_jail_order}-nagios.conf"
$fn_filter_path = '/etc/fail2ban/filter.d'
$fn_filter_file = "${fn_filter_path}/${ng_jail_order}-nagios.conf"
# includes must be last # includes must be last
include confdroid_nagios::main::config include confdroid_nagios::main::config
} }

View File

@@ -24,6 +24,23 @@ class confdroid_nagios::server::nagios (
notify => Service[$ng_service], notify => Service[$ng_service],
} }
@@nagios_host { $fqdn:
ensure => $ng_ping_ensure,
alias => 'nag001',
address => '127.0.0.1',
use => 'linux-server',
target => $ng_target_localhost,
hostgroups => 'linux-servers',
contacts => $ng_contact_name,
max_check_attempts => $ng_max_check_attempts,
notification_period => '24x7',
owner => $ng_user,
group => $ng_user,
mode => '0640',
check_command => "check_ping!${ng_ping_warn}!${ng_ping_crit}",
notify => Service[$ng_service],
}
@@nagios_service { 'check_nagios_localhost': @@nagios_service { 'check_nagios_localhost':
check_command => "check_nagios!${ng_spool_dir}/status.dat!5!/usr/sbin/nagios", check_command => "check_nagios!${ng_spool_dir}/status.dat!5!/usr/sbin/nagios",
use => 'generic-service', use => 'generic-service',

View File

@@ -0,0 +1,8 @@
###############################################################################
########## parameterized nagios filter created by Puppet ##########
########## manual changes will be overwritten !!! ##########
###############################################################################
[Definition]
failregex = ^<HOST> - \S+ \[\d{2}/\w{3}/\d{4}:\d{2}:\d{2}:\d{2} [+-]\d{4}\] "(?:GET|POST|HEAD|PUT|DELETE|OPTIONS|PATCH) \S+ HTTP/\d\.\d" 401
ignoreregex =

View File

@@ -0,0 +1,13 @@
###############################################################################
########## parameterized nagios jail created by Puppet ##########
########## manual changes will be overwritten !!! ##########
###############################################################################
[nagios-auth]
enabled = <%= @ng_jail_enable %>
port = http,https
filter = <%= @ng_jail_order %>-nagios
logpath = <%= @ng_fail2ban_logpath %>
maxretry = <%= @ng_fail2ban_maxretry %>
bantime = <%= @ng_fail2ban_bantime %>
ignoreip = <%= @ng_fail2ban_ignoreip %>

View File

@@ -1,96 +0,0 @@
<VirtualHost *:<%= @ng_http_port %>>
ServerAdmin root@localhost
DocumentRoot /var/www/html
ServerName www.<%= @ng_webserver_name %>/nagios
ServerAlias <%= @ng_webserver_name %>
<% if @ng_use_https == true -%>
Redirect permanent / https://<%= @ng_webserver_name %>/
<% end -%>
<% if @ng_use_https != true -%>
ScriptAlias /nagios/cgi-bin/ "/usr/lib64/nagios/cgi-bin/"
<Directory "/usr/lib64/nagios/cgi-bin/">
<% if @ng_use_https == true -%>
SSLRequireSSL
<% else -%>
# SSLRequireSSL
<% end -%>
Options ExecCGI
AllowOverride None
<IfVersion >= 2.3>
<RequireAll>
Require all granted
<% unless @ng_required_hosts.empty? -%>
Require host <%= @ng_required_hosts %>
<% end -%>
<% unless @ng_required_ips.empty? -%>
Require ip <%= @ng_required_ips %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</RequireAll>
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
<% unless @ng_required_hosts.empty? -%>
Allow from <%= @ng_required_hosts %>
<% end -%>
<% unless @ng_required_ips.empty? -%>
Allow from <%= @ng_required_ips %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</IfVersion>
</Directory>
Alias /nagios "/usr/share/nagios/html"
<Directory "/usr/share/nagios/html">
<% if @ng_use_https == true -%>
SSLRequireSSL
<% else -%>
# SSLRequireSSL
<% end -%>
Options None
AllowOverride None
<IfVersion >= 2.3>
<RequireAll>
Require all granted
<% unless @ng_required_hosts.empty? -%>
Require host <%= @ng_required_hosts %>
<% end -%>
<% unless @ng_required_ips.empty? -%>
Require ip <%= @ng_required_ips %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</RequireAll>
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
<% unless @ng_required_hosts.empty? -%>
Allow from <%= @ng_required_hosts %>
<% end -%>
<% unless @ng_required_ips.empty? -%>
Allow from <%= @ng_required_ips %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</IfVersion>
</Directory>
<% end -%>
<Directory />
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/<%= @ng_webserver_name %>-error_log
CustomLog /var/log/httpd/<%= @ng_webserver_name %>-access_log common
</VirtualHost>

View File

@@ -1,126 +0,0 @@
###############################################################################
##### virtual_host file created by puppet, changes will be overwritten ######
###############################################################################
<VirtualHost *:<%= @ng_https_port %>>
ServerAdmin root@localhost
DocumentRoot /var/www/html
ServerName <%= @ng_webserver_name %>
ServerAlias <%= @ng_webserver_name %>
ErrorLog /var/log/httpd/nagios_ssl_error_log
# ErrorLog syslog:local1
TransferLog /var/log/httpd/nagios_ssl_transfer_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
<% if @ng_enable_certbot == true -%>
SSLCertificateFile <%= @ng_certbot_live %>/<%= @ng_webserver_name %>/cert.pem
SSLCertificateKeyFile <%= @ng_certbot_live %>/<%= @ng_webserver_name %>/privkey.pem
SSLCACertificateFile <%= @ng_certbot_live %>/<%= @ng_webserver_name %>/fullchain.pem
<% elsif @ng_enable_certbot != true -%>
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
#SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt
<% end -%>
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
ScriptAlias /nagios/cgi-bin/ "/usr/lib64/nagios/cgi-bin/"
<Directory "/usr/lib64/nagios/cgi-bin/">
<% if @ng_use_https == true -%>
SSLRequireSSL
<% else -%>
# SSLRequireSSL
<% end -%>
Options ExecCGI
AllowOverride None
<IfVersion >= 2.3>
<RequireAll>
Require all granted
<% unless @ng_required_hosts.empty? -%>
Require host <%= @ng_required_hosts %>
<% end -%>
<% unless @source_range.empty? -%>
Require ip <%= @source_range %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</RequireAll>
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
<% unless @ng_required_hosts.empty? -%>
Allow from <%= @ng_required_hosts %>
<% end -%>
<% unless @source_range.empty? -%>
Allow from <%= @source_range %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</IfVersion>
</Directory>
Alias /nagios "/usr/share/nagios/html"
<Directory "/usr/share/nagios/html">
<% if @ng_use_https == true -%>
SSLRequireSSL
<% else -%>
# SSLRequireSSL
<% end -%>
Options None
AllowOverride None
<IfVersion >= 2.3>
<RequireAll>
Require all granted
<% unless @ng_required_hosts.empty? -%>
Require host <%= @ng_required_hosts %>
<% end -%>
<% unless @source_range.empty? -%>
Require ip <%= @source_range %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</RequireAll>
</IfVersion>
<IfVersion < 2.3>
Order allow,deny
<% unless @ng_required_hosts.empty? -%>
Allow from <%= @ng_required_hosts %>
<% end -%>
<% unless @source_range.empty? -%>
Allow from <%= @source_range %>
<% end -%>
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios/passwd
Require valid-user
</IfVersion>
</Directory>
RedirectMatch ^/$ https://<%= @ng_webserver_name %>/nagios
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>