From 530d4be941227fc2f3837f33130ad5789e41dd09 Mon Sep 17 00:00:00 2001 From: Jenkins Server Date: Mon, 12 May 2025 16:00:28 +0200 Subject: [PATCH 1/2] recommit for updates in build 2 --- doc/_index.html | 302 + doc/css/common.css | 8 + doc/css/full_list.css | 58 + doc/css/style.css | 497 ++ doc/file.README.html | 270 + doc/frames.html | 22 + doc/index.html | 270 + doc/js/app.js | 314 ++ doc/js/full_list.js | 216 + doc/js/jquery.js | 4 + doc/puppet_class_list.html | 236 + doc/puppet_classes/cd_nagios.html | 121 + .../cd_nagios_3A_3Acertbot_3A_3Acerts.html | 206 + .../cd_nagios_3A_3Aclient_3A_3Atarget.html | 358 ++ ...cd_nagios_3A_3Afirewall_3A_3Aiptables.html | 152 + .../cd_nagios_3A_3Amain_3A_3Aconfig.html | 173 + .../cd_nagios_3A_3Amain_3A_3Adirs.html | 526 ++ .../cd_nagios_3A_3Amain_3A_3Ainstall.html | 193 + .../cd_nagios_3A_3Amain_3A_3Auser.html | 172 + ...s_3A_3Aobjects_3A_3Aadd_contact_rules.html | 193 + ...Aobjects_3A_3Aadd_contactgroups_rules.html | 189 + ...3A_3Aobjects_3A_3Aadd_hostgroup_rules.html | 188 + ...3Aobjects_3A_3Aadd_servicegroup_rules.html | 188 + ...A_3Aobjects_3A_3Aadd_timeperiod_rules.html | 197 + ...A_3Anagios_3A_3Aobjects_3A_3Acommands.html | 549 ++ ..._3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html | 158 + ...agios_3A_3Aobjects_3A_3Acontactgroups.html | 213 + ...A_3Anagios_3A_3Aobjects_3A_3Acontacts.html | 260 + ...3Anagios_3A_3Aobjects_3A_3Ahostgroups.html | 525 ++ ...agios_3A_3Aobjects_3A_3Aservicegroups.html | 209 + ...gios_3A_3Aobjects_3A_3Atemplate_rules.html | 279 + ...Anagios_3A_3Aobjects_3A_3Atimeperiods.html | 261 + ...3Anagios_3A_3Aresources_3A_3Aresource.html | 220 + doc/puppet_classes/cd_nagios_3A_3Aparams.html | 4954 +++++++++++++++++ .../cd_nagios_3A_3Aselinux_3A_3Aconfig.html | 392 ++ ..._nagios_3A_3Aserver_3A_3Aaccess_rules.html | 171 + .../cd_nagios_3A_3Aserver_3A_3Afiles.html | 306 + .../cd_nagios_3A_3Aserver_3A_3Aservice.html | 506 ++ doc/puppet_defined_type_list.html | 103 + ...Anagios_3A_3Aobjects_3A_3Aadd_contact.html | 261 + ...s_3A_3Aobjects_3A_3Aadd_contactgroups.html | 208 + ...gios_3A_3Aobjects_3A_3Aadd_hostgroups.html | 219 + ...s_3A_3Aobjects_3A_3Aadd_servicegroups.html | 221 + ...ios_3A_3Aobjects_3A_3Aadd_timeperiods.html | 346 ++ ..._3Anagios_3A_3Aobjects_3A_3Atemplates.html | 765 +++ ...agios_3A_3Aresources_3A_3Aresource_df.html | 227 + .../cd_nagios_3A_3Aserver_3A_3Aaccess.html | 193 + doc/top-level-namespace.html | 98 + 48 files changed, 16697 insertions(+) create mode 100644 doc/_index.html create mode 100644 doc/css/common.css create mode 100644 doc/css/full_list.css create mode 100644 doc/css/style.css create mode 100644 doc/file.README.html create mode 100644 doc/frames.html create mode 100644 doc/index.html create mode 100644 doc/js/app.js create mode 100644 doc/js/full_list.js create mode 100644 doc/js/jquery.js create mode 100644 doc/puppet_class_list.html create mode 100644 doc/puppet_classes/cd_nagios.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aparams.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html create mode 100644 doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html create mode 100644 doc/puppet_defined_type_list.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html create mode 100644 doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html create mode 100644 doc/top-level-namespace.html diff --git a/doc/_index.html b/doc/_index.html new file mode 100644 index 0000000..2c5efde --- /dev/null +++ b/doc/_index.html @@ -0,0 +1,302 @@ + + + + + + + Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Documentation by YARD 0.9.36

+
+

Alphabetic Index

+ +

Puppet Class Listing A-Z

+ + + + + + +
+ + + + +
+ + + +

Defined Type Listing A-Z

+ + + + + + +
+ + + + +
+ + + + + + + +

File Listing

+ + +
+ + +
+ +
+ + + +
+ + \ No newline at end of file diff --git a/doc/css/common.css b/doc/css/common.css new file mode 100644 index 0000000..d28b093 --- /dev/null +++ b/doc/css/common.css @@ -0,0 +1,8 @@ +/* Ensure the search bar doesn't overlap with links */ +.fixed_header { + padding-bottom: 25px; +} + +#full_list { + padding-top: 15px; +} diff --git a/doc/css/full_list.css b/doc/css/full_list.css new file mode 100644 index 0000000..fa35982 --- /dev/null +++ b/doc/css/full_list.css @@ -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; } diff --git a/doc/css/style.css b/doc/css/style.css new file mode 100644 index 0000000..eb0dbc8 --- /dev/null +++ b/doc/css/style.css @@ -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 */ +#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
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; +f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() +{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window); \ No newline at end of file diff --git a/doc/puppet_class_list.html b/doc/puppet_class_list.html new file mode 100644 index 0000000..c21864a --- /dev/null +++ b/doc/puppet_class_list.html @@ -0,0 +1,236 @@ + + + + + + + + + + + + + + + + + + Puppet Class List + + + + + + diff --git a/doc/puppet_classes/cd_nagios.html b/doc/puppet_classes/cd_nagios.html new file mode 100644 index 0000000..39f79d3 --- /dev/null +++ b/doc/puppet_classes/cd_nagios.html @@ -0,0 +1,121 @@ + + + + + + + Puppet Class: cd_nagios + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios

+
+ + +
+
Defined in:
+
+ manifests/init.pp +
+
+
+ +

Summary

+ Class initializes the cd_nagios Module. + +

Overview

+
+
+ +

cd_nagios::init.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@confdroid.com)

+ +
+
+ + + +
+ + + +
+
+ + + + +
+
+
+
+6
+7
+8
+
+
# File 'manifests/init.pp', line 6
+
+class cd_nagios {
+  include cd_nagios::params
+}
+
+ + + + + + + + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html b/doc/puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html new file mode 100644 index 0000000..b0e5899 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html @@ -0,0 +1,206 @@ + + + + + + + Puppet Class: cd_nagios::certbot::certs + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::certbot::certs

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/certbot/certs.pp +
+
+
+ +

Summary

+ Class manages all configuration files required for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::certbot::certs.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/certbot/certs.pp', line 6
+
+class cd_nagios::certbot::certs (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    if $ng_use_https == true {
+      if $ng_enable_certbot == true {
+        require cd_certbot
+        require cd_apache
+
+        if $ng_include_fw == true {
+          require cd_nagios::firewall::iptables
+        }
+
+        # create cert
+
+        exec { 'create_cert':
+          command  => template($ng_get_cert_erb),
+          cwd      => '/tmp',
+          path     => ['/bin','/usr/bin'],
+          provider => 'shell',
+          unless   => template('cd_nagios/certbot/unless_get_cert.erb'),
+          notify   => Service['httpd'],
+          creates  => $ng_certbot_check,
+        }
+
+        # renew certs
+
+        exec { 'renew_cert':
+          command  => 'certbot renew',
+          cwd      => '/tmp',
+          path     => ['/bin','/usr/bin','/opt/'],
+          provider => 'shell',
+          notify   => Service['httpd'],
+          unless   => template($ng_unless_renew_erb),
+        }
+      }
+    }
+
+    else {
+      # do nothing as we are not using https and certbot is not required then
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html b/doc/puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html new file mode 100644 index 0000000..16a75fb --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html @@ -0,0 +1,358 @@ + + + + + + + Puppet Class: cd_nagios::client::target + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::client::target

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/client/target.pp +
+
+
+ +

Summary

+ CLass manages Nagios targets for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::client::target.pp Module name: nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/client/target.pp', line 6
+
+class cd_nagios::client::target (
+
+) inherits cd_nagios::params {
+  if $::fqdn != $ng_nagios_server {
+    if $ng_include_nrpe == true {
+      require cd_nagios::main::user
+      require cd_nrpe
+
+      @@nagios_host { $::fqdn:
+        ensure              => $ng_ping_ensure,
+        alias               => $::hostname,
+        address             => $::fqdn,
+        use                 => 'linux-server',
+        target              => $ng_target_host,
+        hostgroups          => 'linux-servers',
+        contacts            => 'ops',
+        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_user],
+      }
+
+      @@nagios_service { "root_partition_${::hostname}":
+        ensure              => $ng_disk_ensure,
+        check_command       => "check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_root_partition",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+
+      if $ng_enable_swap_check == true {
+        @@nagios_service { "Swap_Usage_${::hostname}":
+          ensure              => $ng_swap_ensure,
+          check_command       => "check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}",
+          use                 => 'generic-service',
+          host_name           => $::fqdn,
+          contacts            => 'ops',
+          notification_period => '24x7',
+          service_description => "${::hostname}_swap_usage",
+          servicegroups       => 'linux-services',
+          target              => $ng_target_service,
+          owner               => $ng_user,
+          group               => $ng_user,
+          mode                => '0640',
+        }
+      }
+
+      @@nagios_service { "Local_Users_${::hostname}":
+        ensure              => $ng_users_ensure,
+        check_command       => "check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_local_users",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+
+      @@nagios_service { "Total Processes_${::hostname}":
+        ensure              => $ng_procs_tot_ens,
+        check_command       => "check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_total_processes",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+
+      @@nagios_service { "Zombie Processes_${::hostname}":
+        ensure              => $ng_procs_z_ensure,
+        check_command       => "check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_zombie_processes",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+
+      @@nagios_service { "Current_Load_${::hostname}":
+        ensure              => $ng_load_ensure,
+        check_command       => "check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_current_load",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html b/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html new file mode 100644 index 0000000..e163faf --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html @@ -0,0 +1,152 @@ + + + + + + + Puppet Class: cd_nagios::firewall::iptables + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::firewall::iptables

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/firewall/iptables.pp +
+
+
+ +

Summary

+ manage firewall settings through cd_firewall or puppetlabs-firewall + +

Overview

+
+
+ +

cd_nagios::firewall::iptables.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+
+
# File 'manifests/firewall/iptables.pp', line 6
+
+class cd_nagios::firewall::iptables (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    if $ng_use_https != true {
+      include confdroid_infrastructure::firewall::http
+
+      if $ng_use_https == true {
+        include confdroid_infrastructure::firewall::https
+        if $ng_http_https_fw == true {
+          include confdroid_infrastructure::firewall::http
+        }
+      }
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html new file mode 100644 index 0000000..e15f7b2 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html @@ -0,0 +1,173 @@ + + + + + + + Puppet Class: cd_nagios::main::config + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::main::config

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/main/config.pp +
+
+
+ +

Summary

+ Class manages all aspects of configuring the module logic for +cd_nagios. + +

Overview

+
+
+ +

cd_nagios::main::config.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/main/config.pp', line 7
+
+class cd_nagios::main::config (
+
+) inherits cd_nagios::params {
+  # manage server configuration
+
+  if $::fqdn == $ng_nagios_server {
+    include cd_nagios::server::service
+
+    if $ng_include_fw == true {
+      include cd_nagios::firewall::iptables
+    }
+
+    if $ng_use_selinux_tools == true {
+      include cd_nagios::selinux::config
+    }
+
+    if $ng_enable_certbot == true {
+      require cd_nagios::certbot::certs
+    }
+  }
+
+  if $::fqdn != $ng_nagios_server {
+    include cd_nagios::client::target
+  }
+
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html new file mode 100644 index 0000000..800ad94 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html @@ -0,0 +1,526 @@ + + + + + + + Puppet Class: cd_nagios::main::dirs + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::main::dirs

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/main/dirs.pp +
+
+
+ +

Summary

+ Class manages all directories required for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::main::dirs.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/main/dirs.pp', line 6
+
+class cd_nagios::main::dirs (
+
+) inherits cd_nagios::params {
+  require cd_nagios::main::user
+
+  # main directory
+
+  file { $ng_main_dir:
+    ensure   => directory,
+    path     => $ng_main_dir,
+    owner    => 'root',
+    group    => 'root',
+    mode     => '0755',
+    selrange => s0,
+    selrole  => object_r,
+    seltype  => nagios_etc_t,
+    seluser  => system_u,
+  }
+
+  # /usr/lib64/nagios dir required for plugins
+
+  file { $ng_lib_dir:
+    ensure   => directory,
+    path     => $ng_lib_dir,
+    owner    => 'root',
+    group    => 'root',
+    mode     => '0755',
+    selrange => s0,
+    selrole  => object_r,
+    seltype  => lib_t,
+    seluser  => system_u,
+  }
+
+  # /var/spool/nagios
+
+  file { $ng_spool_dir:
+    ensure   => directory,
+    path     => $ng_spool_dir,
+    owner    => $ng_user,
+    group    => $ng_user,
+    mode     => '0755',
+    selrange => s0,
+    selrole  => object_r,
+    seltype  => nagios_spool_t,
+    seluser  => system_u,
+  }
+
+  if $::fqdn == $ng_nagios_server {
+    # /etc/nagios/conf.d
+
+    file { $ng_conf_d_dir:
+      ensure   => directory,
+      path     => $ng_conf_d_dir,
+      owner    => 'root',
+      group    => $ng_user,
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+    }
+
+    # /etc/nagios/objects
+
+    file { $ng_objects_dir:
+      ensure   => directory,
+      path     => $ng_objects_dir,
+      owner    => 'root',
+      group    => $ng_user,
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+    }
+
+    # /etc/nagios/private
+
+    file { $ng_private_dir:
+      ensure   => directory,
+      path     => $ng_private_dir,
+      owner    => 'root',
+      group    => $ng_user,
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+    }
+
+    # include dir
+
+    file { $ng_usr_incl:
+      ensure   => directory,
+      path     => $ng_usr_incl,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0755',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => usr_t,
+      seluser  => system_u,
+    }
+
+    # log dir
+
+    file { $ng_log_dir:
+      ensure   => directory,
+      path     => $ng_log_dir,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_log_t,
+      seluser  => system_u,
+    }
+
+    # log archives
+
+    file { $ng_log_archives:
+      ensure   => directory,
+      path     => $ng_log_archives,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_log_t,
+      seluser  => system_u,
+    }
+
+    # /usr/share/nagios
+
+    file { $ng_usr_share:
+      ensure   => directory,
+      path     => $ng_usr_share,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0755',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => usr_t,
+      seluser  => system_u,
+    }
+
+    #  /usr/share/nagios/html
+
+    file { $ng_share_html:
+      ensure   => directory,
+      path     => $ng_share_html,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0755',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => usr_t,
+      seluser  => system_u,
+    }
+
+    # run dir for pid file
+
+    file { $ng_run_dir:
+      ensure   => directory,
+      path     => $ng_run_dir,
+      owner    => 'nagios',
+      group    => 'nagios',
+      mode     => '0750',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_var_run_t,
+      seluser  => system_u,
+    }
+
+    # cmd dir
+
+    file { $ng_cmd_dir:
+      ensure   => directory,
+      path     => $ng_cmd_dir,
+      owner    => 'nagios',
+      group    => 'nagios',
+      mode     => '0775',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_spool_t,
+      seluser  => system_u,
+    }
+
+    # checkresults dir
+
+    file { $ng_checkresults_dir:
+      ensure   => directory,
+      path     => $ng_checkresults_dir,
+      owner    => 'nagios',
+      group    => 'nagios',
+      mode     => '0770',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_spool_t,
+      seluser  => system_u,
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html new file mode 100644 index 0000000..cec6339 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html @@ -0,0 +1,193 @@ + + + + + + + Puppet Class: cd_nagios::main::install + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::main::install

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/main/install.pp +
+
+
+ +

Summary

+ Class manage all aspects of installing binaries required for +cd_nagios + +

Overview

+
+
+ +

cd_nagios::main::install.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/main/install.pp', line 7
+
+class cd_nagios::main::install (
+
+) inherits cd_nagios::params {
+
+  require cd_resources
+
+  # if our FQDN matches the configured Nagios server FQDN, install both server-
+  # and client packages.
+
+  if $::fqdn == $ng_nagios_server {
+
+    # we'll need httpd installed
+    require cd_apache
+
+    package {$reqpackages_server:
+      ensure => $pkg_ensure,
+    }
+    package {$reqpackages_client:
+      ensure => $pkg_ensure,
+    }
+  }
+
+  # if we are not the nagios server, install client packages
+
+  if $::fqdn != $ng_nagios_server {
+    package {$reqpackages_client:
+      ensure => $pkg_ensure,
+    }
+
+    # if we want to use NRPE, install it
+
+    if $ng_include_nrpe == true {
+      require cd_nrpe
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html new file mode 100644 index 0000000..4687d5c --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html @@ -0,0 +1,172 @@ + + + + + + + Puppet Class: cd_nagios::main::user + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::main::user

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/main/user.pp +
+
+
+ +

Summary

+ Class manages service users for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::main::user.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/main/user.pp', line 6
+
+class cd_nagios::main::user (
+
+) inherits cd_nagios::params {
+  require cd_nagios::main::install
+
+  group { $ng_user:
+    ensure    => present,
+    name      => $ng_user,
+    gid       => $ng_u_uid,
+    allowdupe => false,
+  }
+
+  user { $ng_user:
+    ensure     => present,
+    name       => $ng_user,
+    allowdupe  => false,
+    comment    => $ng_u_comment,
+    uid        => $ng_u_uid,
+    gid        => $ng_user,
+    groups     => $ng_u_groups,
+    managehome => true,
+    home       => $ng_user_home,
+    shell      => $ng_user_shell,
+    require    => Group[$ng_user],
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html new file mode 100644 index 0000000..1b54ab2 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html @@ -0,0 +1,193 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::add_contact_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::add_contact_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/add_contact_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios/conf.d/nagios_add_contact.cfg through +concat. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_contact_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +

+

cd_nagios::nagios::objects::add_contact { ‘example_user’:

+

+ +
ng_contact_name  => 'example_user',
+ng_contact_alias => 'Example User',
+ng_contact_groups => 'admins',
+ng_contact_email => 'example@example.net',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/add_contact_rules.pp', line 13
+
+class cd_nagios::nagios::objects::add_contact_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios/conf.d/nagios_add_contacts.cfg
+
+    concat { $ng_target_add_contact:
+      ensure   => present,
+      path     => $ng_target_add_contact,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    # manage file header
+
+    concat::fragment { 'contact_header':
+      target  => $ng_target_add_contact,
+      content => template($ng_contacts_head_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html new file mode 100644 index 0000000..f4d5b9f --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html @@ -0,0 +1,189 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::add_contactgroups_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::add_contactgroups_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/add_contactgroups_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios/conf.d/nagios_add_contactgroups.cfg file +and populates through define and external puppet rules + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_contactgroups_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_contactgroups { 'example_group':
+  ng_contactgroup_name      => 'example_group',
+  ng_contactgroup_alias     => 'Example Group',
+  ng_contactgroup_register  => '1',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/add_contactgroups_rules.pp', line 13
+
+class cd_nagios::nagios::objects::add_contactgroups_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios/conf.d/nagios_add_contactgroups.cfg
+
+    concat { $ng_tgt_contactgroup_add:
+      ensure   => present,
+      path     => $ng_tgt_contactgroup_add,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    # manage file header
+
+    concat::fragment { 'contactgroups_header':
+      target  => $ng_tgt_contactgroup_add,
+      content => template($ng_cntctgrps_head_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html new file mode 100644 index 0000000..3f11a2a --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html @@ -0,0 +1,188 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::add_hostgroup_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::add_hostgroup_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/add_hostgroup_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios_conf.d/nagios_hostgroups_add.cfg and +additional hostgroups through external Puppet rules via define. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_hostgroup_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_hostgroups { 'example_hostgroup':
+  ng_hostgroup_name   => 'example_hostgroup',
+  ng_hostgroup_alias  => 'Example Hostgroup',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/add_hostgroup_rules.pp', line 12
+
+class cd_nagios::nagios::objects::add_hostgroup_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios_conf.d/nagios_hostgroups_add.cfg
+
+    concat { $ng_tgt_hostgroup_add:
+      ensure   => present,
+      path     => $ng_tgt_hostgroup_add,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    # manage file header
+
+    concat::fragment { 'hostgroups_header':
+      target  => $ng_tgt_hostgroup_add,
+      content => template($ng_tgt_hostgrp_head_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html new file mode 100644 index 0000000..b8153c4 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html @@ -0,0 +1,188 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::add_servicegroup_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::add_servicegroup_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/add_servicegroup_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios_conf.d/nagios_servicegroups_add.cfg and +additional servicegroups through external Puppet rules via define. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_servicegroup_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_servicegroups { 'example_servicegroup':
+  ng_servicegroup_name   => 'example_servicegroup',
+  ng_servicegroup_alias  => 'Example Servicegroup',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/add_servicegroup_rules.pp', line 12
+
+class cd_nagios::nagios::objects::add_servicegroup_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios_conf.d/nagios_servicegroups_add.cfg
+
+    concat { $ng_tgt_servicegroup_add:
+      ensure   => present,
+      path     => $ng_tgt_servicegroup_add,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    # manage file header
+
+    concat::fragment { 'servicegroups_header':
+      target  => $ng_tgt_servicegroup_add,
+      content => template($ng_tgt_svcgrp_head_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html new file mode 100644 index 0000000..7c36d3d --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html @@ -0,0 +1,197 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::add_timeperiod_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::add_timeperiod_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/add_timeperiod_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios_conf.d/nagios_timeperiods_add.cfg and +add. hostgroups through external Puppet rules via define. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_timeperiod_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com) }

+ +
+
+ + + +
+ +
+

Examples:

+ + +

+

cd_nagios::nagios::objects::add_timeperiods { ‘example_timeperiod’:

+

+ +
ng_timep_name   => 'example_timeperiod',
+ng_timep_alias  => 'Example timeperiod',
+ng_timep_monday      => '00:00-00:00',
+ng_timep_tuesday     => '00:00-00:00',
+ng_timep_wednesday   => '00:00-00:00',
+ng_timep_thursday    => '00:00-00:00',
+ng_timep_friday      => '00:00-00:00',
+ng_timep_saturday    => '00:00-00:00',
+ng_timep_sunday      => '00:00-00:00',
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/add_timeperiod_rules.pp', line 18
+
+class cd_nagios::nagios::objects::add_timeperiod_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios/conf.d/nagios_timeperiods_add.cfg
+
+    concat { $ng_tgt_timep_add:
+      ensure   => present,
+      path     => $ng_tgt_timep_add,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    # manage file header
+
+    concat::fragment { 'timeperiods_header':
+      target  => $ng_tgt_timep_add,
+      content => template($ng_tgt_timep_head_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html new file mode 100644 index 0000000..1a52a5a --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html @@ -0,0 +1,549 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::commands + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::commands

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/commands.pp +
+
+
+ +

Summary

+ Class manages all commands known to NAGIOS through Puppet exports, +and populates /etc/nagios/conf.d/nagios_commands.cfg. + +

Overview

+
+
+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/commands.pp', line 8
+
+class cd_nagios::nagios::objects::commands (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    @@nagios_command { 'notify-host-by-email':
+      ensure       => present,
+      command_name => 'notify-host-by-email',
+      command_line => '/usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTADDRESS$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTADDRESS$ is $HOSTSTATE$ **" $CONTACTEMAIL$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'notify-service-by-email':
+      ensure       => present,
+      command_name => 'notify-service-by-email',
+      command_line => '/usr/bin/printf "%b" "***** 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" | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check-host-alive':
+      ensure       => present,
+      command_name => 'check-host-alive',
+      command_line => '$USER1$/check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_disk':
+      ensure       => present,
+      command_name => 'check_disk',
+      command_line => '$USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_local_load':
+      ensure       => present,
+      command_name => 'check_local_load',
+      command_line => '$USER1$/check_load -w $ARG1$ -c $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_local_procs':
+      ensure       => present,
+      command_name => 'check_local_procs',
+      command_line => '$USER1$/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_local_users':
+      ensure       => present,
+      command_name => 'check_local_users',
+      command_line => '$USER1$/check_users -w $ARG1$ -c $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_local_swap':
+      ensure       => present,
+      command_name => 'check_local_swap',
+      command_line => '$USER1$/check_swap -w $ARG1$ -c $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_ftp':
+      ensure       => present,
+      command_name => 'check_ftp',
+      command_line => '$USER1$/check_ftp -H $HOSTADDRESS$ $ARG1$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_snmp':
+      ensure       => present,
+      command_name => 'check_snmp',
+      command_line => '$USER1$/check_snmp -H $HOSTADDRESS$ $ARG1$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_http':
+      ensure       => present,
+      command_name => 'check_http',
+      command_line => '$USER1$/check_http -I $HOSTADDRESS$ $ARG1$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_ssh':
+      ensure       => present,
+      command_name => 'check_ssh',
+      command_line => '$USER1$/check_ssh $ARG1$ $HOSTADDRESS$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_ping':
+      ensure       => present,
+      command_name => 'check_ping',
+      command_line => '$USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_tcp':
+      ensure       => present,
+      command_name => 'check_tcp',
+      command_line => '$USER1$/check_tcp -H $HOSTADDRESS$ -p $ARG1$ $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_udp':
+      ensure       => present,
+      command_name => 'check_udp',
+      command_line => '$USER1$/check_udp -H $HOSTADDRESS$ -p $ARG1$ $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_nrpe':
+      ensure       => present,
+      command_name => 'check_nrpe',
+      command_line => '$USER1$/check_nrpe -t 30 -H $HOSTADDRESS$ -c $ARG1$  -a $ARG2$ $ARG3$ $ARG4$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_nagios':
+      ensure       => present,
+      command_name => 'check_nagios',
+      command_line => '$USER1$/check_nagios -F $ARG1$ -e $ARG2$ -C $ARG3$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'check_bandwidth':
+      ensure       => present,
+      command_name => 'check_bandwidth',
+      command_line => '$USER1$/check_bandwidth.sh -t 30 -H $HOSTADDRESS$ linux  $ARG1$  $ARG2$ $ARG3$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'process-service-perfdata-file':
+      ensure       => present,
+      command_name => 'process-service-perfdata-file',
+      command_line => '/bin/mv /var/log/pnp4nagios/service-perfdata /var/spool/pnp4nagios/service-perfdata.$TIMET$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command { 'process-host-perfdata-file':
+      ensure       => present,
+      command_name => 'process-host-perfdata-file',
+      command_line => '/bin/mv /var/log/pnp4nagios/host-perfdata /var/spool/pnp4nagios/host-perfdata.$TIMET$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+
+    @@nagios_command {  'check_ntp_time':
+      ensure       => present,
+      command_name => 'check_ntp_time',
+      command_line => '$USER1$/check_ntp_time -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$',
+      owner        => 'nagios',
+      group        => 'nagios',
+      mode         => '0640',
+      target       => $ng_target_command,
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html new file mode 100644 index 0000000..9e0ad70 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html @@ -0,0 +1,158 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::config + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::config

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/config.pp +
+
+
+ +

Summary

+ Class manages the nagios objects definitions. + +

Overview

+
+
+ +

cd_nagios::server::nagios::objects::config.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+6
+7
+8
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+
+
# File 'manifests/nagios/objects/config.pp', line 6
+
+class cd_nagios::nagios::objects::config (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    require cd_nagios::nagios::objects::commands
+    require cd_nagios::nagios::objects::template_rules
+    require cd_nagios::nagios::objects::contacts
+    require cd_nagios::nagios::objects::add_contact_rules
+    require cd_nagios::nagios::objects::contactgroups
+    require cd_nagios::nagios::objects::add_contactgroups_rules
+    require cd_nagios::nagios::objects::hostgroups
+    require cd_nagios::nagios::objects::add_hostgroup_rules
+    require cd_nagios::nagios::objects::servicegroups
+    require cd_nagios::nagios::objects::add_servicegroup_rules
+    require cd_nagios::nagios::objects::timeperiods
+    require cd_nagios::nagios::objects::add_timeperiod_rules
+
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html new file mode 100644 index 0000000..a8ae358 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html @@ -0,0 +1,213 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::contactgroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::contactgroups

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/contactgroups.pp +
+
+
+ +

Summary

+ Class manages base contactgroups which always should be there. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::contactgroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
@@nagios_contactgroup { 'admins':
+  ensure            => present,
+  alias             => 'Nagios Administrators',
+  contactgroup_name => 'admins',
+  owner             => $ng_user,
+  group             => $ng_user,
+  mode              => '0640',
+  register          => '1',
+  target            => $ng_tgt_contactgroup_base,
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/contactgroups.pp', line 17
+
+class cd_nagios::nagios::objects::contactgroups (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    @@nagios_contactgroup { 'admins':
+      ensure            => present,
+      alias             => 'Nagios Administrators',
+      contactgroup_name => 'admins',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_tgt_contactgroup_base,
+    }
+
+    @@nagios_contactgroup { 'operations':
+      ensure            => present,
+      alias             => 'Operations Team',
+      contactgroup_name => 'operations',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_tgt_contactgroup_base,
+    }
+
+    @@nagios_contactgroup { 'support':
+      ensure            => present,
+      alias             => 'Support Team',
+      contactgroup_name => 'support',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_tgt_contactgroup_base,
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html new file mode 100644 index 0000000..4a05e4e --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html @@ -0,0 +1,260 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::contacts + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::contacts

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/contacts.pp +
+
+
+ +

Summary

+ Class manages basic contacts known to NAGIOS through Puppet exports, +and populates /etc/nagios/conf.d/nagios_base_contacts.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::contacts.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
@@nagios_contact { 'admin':
+  ensure              => present,
+  alias               => 'Nagios Admin',
+  contact_name        => 'admin',
+  contactgroups       => 'admins',
+  email               => "admin@${::domain}",
+  can_submit_commands => '1',
+  register            => '1',
+  use                 => 'generic-contact',
+  target              => $ng_target_base_contact,
+  owner               => 'root',
+  group               => 'nagios',
+  mode                => '0664',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/contacts.pp', line 22
+
+class cd_nagios::nagios::objects::contacts (
+
+
+) inherits cd_nagios::params {
+
+  if $::fqdn == $ng_nagios_server {
+
+    #  admin contact
+
+    @@nagios_contact { 'admin':
+      ensure              => present,
+      alias               => 'Nagios Admin',
+      contact_name        => 'admin',
+      contactgroups       => 'admins',
+      email               => "admin@${::domain}",
+      can_submit_commands => '1',
+      register            => '1',
+      use                 => 'generic-contact',
+      target              => $ng_target_base_contact,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    # ops contact
+
+    @@nagios_contact { 'ops':
+      ensure              => present,
+      alias               => 'Operations',
+      contact_name        => 'ops',
+      contactgroups       => 'operations',
+      email               => "ops@${::domain}",
+      can_submit_commands => '1',
+      register            => '1',
+      use                 => 'generic-contact',
+      target              => $ng_target_base_contact,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    # support contact
+
+    @@nagios_contact { 'support':
+      ensure              => present,
+      alias               => 'support',
+      contact_name        => 'support',
+      contactgroups       => 'support',
+      email               => "support@${::domain}",
+      can_submit_commands => '1',
+      register            => '1',
+      use                 => 'generic-contact',
+      target              => $ng_target_base_contact,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html new file mode 100644 index 0000000..724f9c3 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html @@ -0,0 +1,525 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::hostgroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::hostgroups

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/hostgroups.pp +
+
+
+ +

Summary

+ Class manages basic hostgroups known to NAGIOS through Puppet +exports, and populates /etc/nagios/conf.d/nagios_base_hostgroups.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::hostgroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/hostgroups.pp', line 7
+
+class cd_nagios::nagios::objects::hostgroups (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # linux servers
+
+    @@nagios_hostgroup { 'linux-servers':
+      ensure         => present,
+      hostgroup_name => 'linux-servers',
+      alias          => 'Linux Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+
+    # RHEL servers
+
+    @@nagios_hostgroup { 'rhel-servers':
+      ensure         => present,
+      hostgroup_name => 'rhel-servers',
+      alias          => 'RHEL Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # CentOS servers
+
+    @@nagios_hostgroup { 'centos-servers':
+      ensure         => present,
+      hostgroup_name => 'centos-servers',
+      alias          => 'CentOS Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # SuSE servers
+
+    @@nagios_hostgroup { 'suse-servers':
+      ensure         => present,
+      hostgroup_name => 'suse-servers',
+      alias          => 'SuSE Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Unix servers
+
+    @@nagios_hostgroup { 'unix-servers':
+      ensure         => present,
+      hostgroup_name => 'unix-servers',
+      alias          => 'Unix Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Solaris servers
+
+    @@nagios_hostgroup { 'solaris-servers':
+      ensure         => present,
+      hostgroup_name => 'solaris-servers',
+      alias          => 'Solaris Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # AIX servers
+
+    @@nagios_hostgroup { 'aix-servers':
+      ensure         => present,
+      hostgroup_name => 'aix-servers',
+      alias          => 'AIX Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Windows servers
+
+    @@nagios_hostgroup { 'windows-servers':
+      ensure         => present,
+      hostgroup_name => 'windows-servers',
+      alias          => 'Windows Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Netware servers
+
+    @@nagios_hostgroup { 'netware-servers':
+      ensure         => present,
+      hostgroup_name => 'netware-servers',
+      alias          => 'Netware Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # DB servers
+
+    @@nagios_hostgroup { 'db-servers':
+      ensure         => present,
+      hostgroup_name => 'db-servers',
+      alias          => 'DB Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Oracle servers
+
+    @@nagios_hostgroup { 'oracle-servers':
+      ensure         => present,
+      hostgroup_name => 'oracle-servers',
+      alias          => 'Oracle Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # MySQL servers
+
+    @@nagios_hostgroup { 'mysql-servers':
+      ensure         => present,
+      hostgroup_name => 'mysql-servers',
+      alias          => 'MySQL Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # MSSQL servers
+
+    @@nagios_hostgroup { 'mssql-servers':
+      ensure         => present,
+      hostgroup_name => 'mssql-servers',
+      alias          => 'MSSQL Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # NOSQL servers
+
+    @@nagios_hostgroup { 'nosql-servers':
+      ensure         => present,
+      hostgroup_name => 'nosql-servers',
+      alias          => 'NOSQL Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+    # Hadoop servers
+
+    @@nagios_hostgroup { 'hadoop-servers':
+      ensure         => present,
+      hostgroup_name => 'hadoop-servers',
+      alias          => 'HADOOP Servers',
+      owner          => $ng_user,
+      group          => $ng_user,
+      mode           => '0640',
+      register       => '1',
+      target         => $ng_target_hostgroup_base,
+    }
+
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html new file mode 100644 index 0000000..e6b1825 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html @@ -0,0 +1,209 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::servicegroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::servicegroups

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/servicegroups.pp +
+
+
+ +

Summary

+ Class manages basic hostgroups known to NAGIOS through Puppet +exports, and populates /etc/nagios/conf.d/nagios_base_hostgroups.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::servicegroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/servicegroups.pp', line 7
+
+class cd_nagios::nagios::objects::servicegroups (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # network services
+
+    @@nagios_servicegroup { 'network-services':
+      ensure            => present,
+      servicegroup_name => 'network-services',
+      alias             => 'Network Services',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_target_svcgrp_base,
+    }
+
+    # linux services
+
+    @@nagios_servicegroup { 'linux-services':
+      ensure            => present,
+      servicegroup_name => 'linux-services',
+      alias             => 'Linux Services',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_target_svcgrp_base,
+    }
+
+    # database services
+
+    @@nagios_servicegroup { 'database-services':
+      ensure            => present,
+      servicegroup_name => 'database-services',
+      alias             => 'Database Services',
+      owner             => $ng_user,
+      group             => $ng_user,
+      mode              => '0640',
+      register          => '1',
+      target            => $ng_target_svcgrp_base,
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html new file mode 100644 index 0000000..7cdf879 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html @@ -0,0 +1,279 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::template_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::template_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/template_rules.pp +
+
+
+ +

Summary

+ Class manages /etc/nagios/conf.d/nagios_templates.cfg through +concat. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::template_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +

+

cd_nagios::nagios::objects::templates { ‘generic contact’:

+

+ +
ng_template_object      => 'contact',
+ng_template_object_name => 'generic-contact',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/template_rules.pp', line 11
+
+class cd_nagios::nagios::objects::template_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # create the templates.cfg file
+
+    concat { $ng_target_templates:
+      ensure   => present,
+      path     => $ng_target_templates,
+      owner    => $ng_user,
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    concat::fragment { 'template_header':
+      target  => $ng_target_templates,
+      content => template($ng_templates_head_erb),
+      order   => '000',
+    }
+
+    # basic templates
+    cd_nagios::nagios::objects::templates { 'generic contact':
+      ng_template_object      => 'contact',
+      ng_template_object_name => 'generic-contact',
+    }
+    cd_nagios::nagios::objects::templates { 'generic-host':
+      ng_template_object      => 'host',
+      ng_template_object_name => 'generic-host',
+    }
+    cd_nagios::nagios::objects::templates { 'linux-server':
+      ng_template_object      => 'host',
+      ng_template_object_name => 'linux-server',
+      ng_template_object_use  => 'generic-host',
+      ng_notification_options => 'd,u,r',
+    }
+    cd_nagios::nagios::objects::templates { 'windows-server':
+      ng_template_object      => 'host',
+      ng_template_object_name => 'windows-server',
+      ng_template_object_use  => 'generic-host',
+      ng_notification_options => 'd,u,r',
+    }
+    cd_nagios::nagios::objects::templates { 'generic-switch':
+      ng_template_object      => 'host',
+      ng_template_object_name => 'generic-switch',
+      ng_template_object_use  => 'generic-host',
+      ng_notification_options => 'd,u,r',
+    }
+    cd_nagios::nagios::objects::templates { 'generic-printer':
+      ng_template_object      => 'host',
+      ng_template_object_name => 'generic-printer',
+      ng_template_object_use  => 'generic-host',
+      ng_notification_options => 'd,u,r',
+    }
+    cd_nagios::nagios::objects::templates { 'generic-service':
+      ng_template_object      => 'service',
+      ng_template_object_name => 'generic-service',
+      ng_max_check_attempts   => '3',
+      ng_notification_options => 'w,u,c,r',
+    }
+    cd_nagios::nagios::objects::templates { 'local-service':
+      ng_template_object      => 'service',
+      ng_template_object_name => 'local-service',
+      ng_max_check_attempts   => '4',
+      ng_template_object_use  => 'generic-service',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html new file mode 100644 index 0000000..8dd8a0c --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html @@ -0,0 +1,261 @@ + + + + + + + Puppet Class: cd_nagios::nagios::objects::timeperiods + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::objects::timeperiods

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/objects/timeperiods.pp +
+
+
+ +

Summary

+ Class manages main timeperiods for NAGIOS through Puppet exports, +and populates /etc/nagios/conf.d/nagios_timeperiods_base.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::timeperiods.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/timeperiods.pp', line 7
+
+class cd_nagios::nagios::objects::timeperiods (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    @@nagios_timeperiod { '24x7':
+      ensure          => present,
+      timeperiod_name => '24x7',
+      alias           => '24 Hours A Day, 7 Days A Week',
+      monday          => '00:00-24:00',
+      tuesday         => '00:00-24:00',
+      wednesday       => '00:00-24:00',
+      thursday        => '00:00-24:00',
+      friday          => '00:00-24:00',
+      saturday        => '00:00-24:00',
+      sunday          => '00:00-24:00',
+      owner           => $ng_user,
+      group           => $ng_user,
+      mode            => '0640',
+      register        => '1',
+      target          => $ng_tgt_timeperiods_base,
+    }
+
+    @@nagios_timeperiod { 'office_hours':
+      ensure          => present,
+      timeperiod_name => 'office_hours',
+      alias           => 'Office hours only, 5 Days A Week 09-05',
+      monday          => '09:00-17:00',
+      tuesday         => '09:00-17:00',
+      wednesday       => '09:00-17:00',
+      thursday        => '09:00-17:00',
+      friday          => '09:00-17:00',
+      saturday        => '00:00-00:00',
+      sunday          => '00:00-00:00',
+      owner           => $ng_user,
+      group           => $ng_user,
+      mode            => '0640',
+      register        => '1',
+      target          => $ng_tgt_timeperiods_base,
+    }
+
+    @@nagios_timeperiod { 'out_of_hours':
+      ensure          => present,
+      timeperiod_name => 'out_of_hours',
+      alias           => 'Outside Office hours only',
+      monday          => '17:00-09:00',
+      tuesday         => '17:00-09:00',
+      wednesday       => '17:00-09:00',
+      thursday        => '17:00-09:00',
+      friday          => '17:00-09:00',
+      saturday        => '00:00-24:00',
+      sunday          => '00:00-24:00',
+      owner           => $ng_user,
+      group           => $ng_user,
+      mode            => '0640',
+      register        => '1',
+      target          => $ng_tgt_timeperiods_base,
+    }
+
+    @@nagios_timeperiod { 'none':
+      ensure          => present,
+      timeperiod_name => 'none',
+      alias           => 'No Time Is A Good Time',
+      owner           => $ng_user,
+      group           => $ng_user,
+      mode            => '0640',
+      register        => '1',
+      target          => $ng_tgt_timeperiods_base,
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html new file mode 100644 index 0000000..47e1ef8 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html @@ -0,0 +1,220 @@ + + + + + + + Puppet Class: cd_nagios::nagios::resources::resource + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::nagios::resources::resource

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/nagios/resources/resource.pp +
+
+
+ +

Summary

+ Class manages the resource config file header. + +

Overview

+
+
+ +

cd_nagios::nagios::resources::resource.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +

License:

+ +

This file is part of cd_nagios.

+ +

cd_nagios is used for providing automatic configuration of Nagios Copyright © 2016 ConfDroid (copyright@ConfDroid.com) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

+ +

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

+ +

You should have received a copy of the GNU General Public License along with this program. If not, see www.gnu.org/licenses/. }

+ +
+
+ + + +
+ +
+

Examples:

+ + +

+

concat::fragment { “user_rule_plugins”:

+

+ +
ng_user_arg_name    => "$user1$",
+ng_user_arg_value   => '/usr/lib64/nagios/plugins',
+ng_user_arg_comment => "Sets $USER1$ to be the path to the plugins",
+ +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/resources/resource.pp', line 28
+
+class cd_nagios::nagios::resources::resource (
+
+) inherits cd_nagios::params {
+  if $fqdn == $ng_nagios_server {
+    concat { $ng_resource_file:
+      ensure   => present,
+      owner    => 'root',
+      group    => $ng_user,
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+
+    concat::fragment { 'header':
+      target  => $ng_resource_file,
+      content => template($ng_resource_erb),
+      order   => '000',
+    }
+
+    # plugins rule
+
+    cd_nagios::nagios::resources::resource_df { 'user_rule_plugins':
+      ng_user_arg_name    => 'USER1',
+      ng_user_arg_value   => '/usr/lib64/nagios/plugins/',
+      ng_user_arg_comment => 'Sets user1 to be the path to the plugins',
+    }
+
+    # eventhandlers rule
+    cd_nagios::nagios::resources::resource_df { 'user_rule_eventhandlers':
+      ng_user_arg_name    => 'USER2',
+      ng_user_arg_value   => '/usr/lib64/nagios/plugins/eventhandlers/',
+      ng_user_arg_comment => 'Sets user2 to be the path to the eventhandlers',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aparams.html b/doc/puppet_classes/cd_nagios_3A_3Aparams.html new file mode 100644 index 0000000..ae5a36c --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aparams.html @@ -0,0 +1,4954 @@ + + + + + + + Puppet Class: cd_nagios::params + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::params

+ + +

Summary

+ Class holds all parameters for the cd_nagios module and is +inherited by all classes except defines. + +

Overview

+
+
+ +

cd_nagios::params.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com) to connect to NRPE, which as of now does not trust DNS names. Must be the public interface in case of NAT environments. can issue host related commands. can issue service related commands.

+ +
+
+ + + +
+

Parameters:

+
    + +
  • + + pkg_ensure + + + (String) + + + (defaults to: 'latest') + + + — +
    +

    which package type to choose, i.e. latest or present.

    +
    + +
  • + +
  • + + ng_nagios_server + + + (String) + + + (defaults to: "nagios.${::domain}") + + + — +
    +

    Specify the FQDN of the nagios server host. Must be a proper A-name, no CNAME i.e. on Loadbalancer. When the FQDN matches the configured value, Nagios server components will be installed and the clients will allow to be connected by that host. Impacts also firewall ports (optional).

    +
    + +
  • + +
  • + + ng_nagios_ext_ip + + + (String) + + + (defaults to: undef) + + + — +
    +

    Specify the IP address of the nagios server. Required for NRPE configuration to allow the Nagios server

    +
    + +
  • + +
  • + + ng_include_nrpe + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to include NRPE to allow Nagios to connect to clients

    +
    + +
  • + +
  • + + ng_ping_warn + + + (String) + + + (defaults to: '100.0,20%') + + + — +
    +

    Default value for ping warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_ping_crit + + + (String) + + + (defaults to: '500.0,60%') + + + — +
    +

    Default value for ping critical check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_ping_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_disk_warn + + + (String) + + + (defaults to: '20%') + + + — +
    +

    Default value for disk space warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_disk_crit + + + (String) + + + (defaults to: '10%') + + + — +
    +

    Default value for disk space critical check Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_disk_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_swap_warn + + + (String) + + + (defaults to: '20') + + + — +
    +

    Default value for swap space warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_swap_crit + + + (String) + + + (defaults to: '10') + + + — +
    +

    Default value for swap space critical check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_swap_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_users_warn + + + (String) + + + (defaults to: '20') + + + — +
    +

    Default value for user logins warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_users_crit + + + (String) + + + (defaults to: '50') + + + — +
    +

    Default value for user logins critical check Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_users_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_tot_warn + + + (String) + + + (defaults to: '330') + + + — +
    +

    Default warning for the total processes warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_tot_crit + + + (String) + + + (defaults to: '400') + + + — +
    +

    Default warning for the total processes critical check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_tot_param + + + (String) + + + (defaults to: 'RDST') + + + — +
    +

    Default value for the process flags to be checked. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_tot_ens + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_z_warn + + + (String) + + + (defaults to: '10') + + + — +
    +

    Default value for the zombie processes warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_z_crit + + + (String) + + + (defaults to: '30') + + + — +
    +

    Default value for the zombie processes critical check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_z_param + + + (String) + + + (defaults to: 'Z') + + + — +
    +

    Default value for the zombie processes flag. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_procs_z_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_load_warn + + + (String) + + + (defaults to: '5.00,4.00,3.00') + + + — +
    +

    Default value for the load warning check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_load_crit + + + (String) + + + (defaults to: '10.00,6.00,4.00') + + + — +
    +

    Default value for the load critical check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_load_ensure + + + (String) + + + (defaults to: 'present') + + + — +
    +

    Whether to include or exclude the load check. Can be overridden on host level.

    +
    + +
  • + +
  • + + ng_include_fw + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to include firewall management. requires cd_firewall or puppetlabs-firewall module.

    +
    + +
  • + +
  • + + ng_fw_order + + + (String) + + + (defaults to: '50') + + + — +
    +

    Prefix for the port number to establish proper firewall rule ordering.

    +
    + +
  • + +
  • + + ng_use_https + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to use https.

    +
    + +
  • + +
  • + + ng_http_https_fw + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether we want to forward http to https. only active if ng_use_https is set to true.

    +
    + +
  • + +
  • + + ng_http_port + + + (String) + + + (defaults to: '80') + + + — +
    +

    Specify the port to use for httpd. Used in templates and for firewall (Optional)

    +
    + +
  • + +
  • + + ng_https_port + + + (String) + + + (defaults to: '443') + + + — +
    +

    Specify the port to use for httpd. Used in templates and for firewall (Optional)

    +
    + +
  • + +
  • + + ng_user + + + (String) + + + (defaults to: 'nagios') + + + — +
    +

    The name of the Nagios service user.

    +
    + +
  • + +
  • + + ng_user_home + + + (String) + + + (defaults to: '/var/spool/nagios') + + + — +
    +

    The home directory for the Nagios service user

    +
    + +
  • + +
  • + + ng_user_shell + + + (String) + + + (defaults to: '/bin/bash') + + + — +
    +

    The shell for the Nagios service user, which never should be allowed to login.

    +
    + +
  • + +
  • + + ng_u_comment + + + (String) + + + (defaults to: 'Nagios service user') + + + — +
    +

    The comment for the Nagios service user for /etc/passwd. Shows up in email notifications from the Nagios daemon.

    +
    + +
  • + +
  • + + ng_u_uid + + + (String) + + + (defaults to: '1004') + + + — +
    +

    The UID for the Nagios service user. Important when using shared environments like NFS.

    +
    + +
  • + +
  • + + ng_u_groups + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    The secondary groups for the Nagios service user. Must not contain the primary group.

    +
    + +
  • + +
  • + + ng_context_help + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether or not a context-sensitive help icon will be displayed for most of the CGIs.

    +
    + +
  • + +
  • + + ng_pending_state + + + (String) + + + (defaults to: '1') + + + — +
    +

    what states should be displayed in the web interface for hosts/services that have not yet been checked

    +
    + +
  • + +
  • + + ng_use_auth + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether or not the CGIs will use any authentication when displaying host and service information, as well as committing commands to Nagios for processing. This should not be set to 0.

    +
    + +
  • + +
  • + + ng_use_ssl_auth + + + (String) + + + (defaults to: '0') + + + — +
    +

    allows you to use x509 cert (SSL) authentication in the CGIs. This is an advanced option and should not be enabled unless you know what you’re doing.

    +
    + +
  • + +
  • + + ng_enable_def_user + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to enable a default user (not recommended).

    +
    + +
  • + +
  • + + ng_def_user_name + + + (String) + + + (defaults to: 'nagios_insecure') + + + — +
    +

    default user name that can access pages without authentication. This allows people within a secure domain (i.e., behind a firewall) to see the current status without authenticating. Only active if ng_enable_def_user is set to true

    +
    + +
  • + +
  • + + ng_nagios_admin + + + (String) + + + (defaults to: 'nagios_sec_adm') + + + — +
    +

    Specify the name of a nagios administration user here. Value will be used in cgi.cfg for all authorized commands and info,i.e. nagiosadmin. however, its strongly suggested to use a different name. Can be overridden per host / hostgroups to allow flexibility and increased security. You can also add a comma-separated list of people in here instead, which then would function like a group instead a single user.

    +
    + +
  • + +
  • + + ng_sysinfo_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited list of all usernames that have access to viewing the Nagios process information as provided by the Extended Information CGI (extinfo.cgi).

    +
    + +
  • + +
  • + + ng_confinfo_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited list of all usernames that can view ALL configuration information (hosts, commands, etc).

    +
    + +
  • + +
  • + + ng_command_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited list of all usernames that can issue shutdown and restart commands to Nagios via the command CGI (cmd.cgi).

    +
    + +
  • + +
  • + + ng_hostview_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited lists of all usernames that can view information for all hosts

    +
    + +
  • + +
  • + + ng_serviceview_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited lists of all usernames that can view information for all services.

    +
    + +
  • + +
  • + + ng_host_cmd_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited lists of all usernames that

    +
    + +
  • + +
  • + + ng_svc_cmd_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited lists of all usernames that

    +
    + +
  • + +
  • + + ng_readonly_auth + + + (String) + + + (defaults to: '') + + + — +
    +

    comma-delimited list of usernames that have read-only rights in the CGIs.

    +
    + +
  • + +
  • + + ng_statusmap_img + + + (String) + + + (defaults to: 'smbackground.gd2') + + + — +
    +

    specify an image to be used as a background in the statusmap CGI.

    +
    + +
  • + +
  • + + ng_use_colormap + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to set values of background colors.

    +
    + +
  • + +
  • + + ng_colormap_red + + + (String) + + + (defaults to: '255') + + + — +
    +

    value for the red area of the color map.

    +
    + +
  • + +
  • + + ng_colormap_green + + + (String) + + + (defaults to: '255') + + + — +
    +

    value for the green area of the color map

    +
    + +
  • + +
  • + + ng_colormap_blue + + + (String) + + + (defaults to: '255') + + + — +
    +

    value for the blue area of the color map.

    +
    + +
  • + +
  • + + ng_statusmap_layout + + + (String) + + + (defaults to: '6') + + + — +
    +

    Value for the default statusmap layout.

    +
    + +
  • + +
  • + + ng_wrl_layout + + + (String) + + + (defaults to: '4') + + + — +
    +

    Value for the default statuswrl layout.

    +
    + +
  • + +
  • + + ng_incl_own_wrl + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to include your own objects in the generated VRML world.

    +
    + +
  • + +
  • + + ng_statuswrl_include + + + (String) + + + (defaults to: '') + + + — +
    +

    Specify your own wrl object to be included in the generated VRML world. Only active if ng_incl_own_wrl is set to true.

    +
    + +
  • + +
  • + + ng_ping_syntax + + + (String) + + + (defaults to: '/bin/ping -n -U -c 5 $HOSTADDRESS$') + + + — +
    +

    what syntax should be used when attempting to ping a host from the WAP interface

    +
    + +
  • + +
  • + + ng_refresh_rate + + + (String) + + + (defaults to: '90') + + + — +
    +

    specify the refresh rate in seconds of various CGIs

    +
    + +
  • + +
  • + + ng_result_limit + + + (String) + + + (defaults to: '100') + + + — +
    +

    specify the default number of results displayed on the status.cgi.

    +
    + +
  • + +
  • + + ng_escape_html + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether HTML tags in host and service status output is escaped in the web interface. If enabled, your plugin output will not be able to contain clickable links.

    +
    + +
  • + +
  • + + ng_use_sound + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    whether to enable sound usage.

    +
    + +
  • + +
  • + + ng_host_unreachable + + + (String) + + + (defaults to: 'hostdown.wav') + + + — +
    +

    sound file for host unreachable Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_host_down + + + (String) + + + (defaults to: 'hostdown.wav') + + + — +
    +

    sound file for host down Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_svc_critical + + + (String) + + + (defaults to: 'critical.wav') + + + — +
    +

    sound file for service critical. Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_svc_warn + + + (String) + + + (defaults to: 'warning.wav') + + + — +
    +

    sound file for service warning Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_svc_unknown + + + (String) + + + (defaults to: 'warning.wav') + + + — +
    +

    sound file for service unknown Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_normal_sound + + + (String) + + + (defaults to: 'noproblem.wav') + + + — +
    +

    sound file for normal Only active if ng_use_sound is set to true.

    +
    + +
  • + +
  • + + ng_action_url_target + + + (String) + + + (defaults to: '_blank') + + + — +
    +

    Specify target frames in which action URLs will open

    +
    + +
  • + +
  • + + ng_notes_url_target + + + (String) + + + (defaults to: '_blank') + + + — +
    +

    Specify target frames in which notes URLs will open

    +
    + +
  • + +
  • + + ng_lock_author_names + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether users can change the author name when submitting comments, scheduling downtime.

    +
    + +
  • + +
  • + + ng_enable_splunk + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to enable splunk integration.

    +
    + +
  • + +
  • + + ng_splunk_url + + + (String) + + + (defaults to: 'http://127.0.0.1:8000/') + + + — +
    +

    the URL for your Splunk URL

    +
    + +
  • + +
  • + + ng_navbar_addresses + + + (String) + + + (defaults to: '1') + + + — +
    +

    allow navbar search queries IP addresses

    +
    + +
  • + +
  • + + ng_navbar_aliases + + + (String) + + + (defaults to: '1') + + + — +
    +

    allow navbar search for aliases

    +
    + +
  • + +
  • + + ng_ack_no_sticky + + + (String) + + + (defaults to: '0') + + + — +
    +

    Enabling ack_no_sticky will default the “Sticky Acknowledgement” to be unchecked.

    +
    + +
  • + +
  • + + ng_ack_no_send + + + (String) + + + (defaults to: '0') + + + — +
    +

    Enabling ack_no_send will default the “Send Notification” to be unchecked.

    +
    + +
  • + +
  • + + ng_use_selinux_tools + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to enable selinux tools and policies. only effective if selinux is enabled.

    +
    + +
  • + +
  • + + ng_required_hosts + + + (String) + + + (defaults to: '') + + + — +
    +

    String of FQDNs for hosts which should be allowed/required. Requires format ‘host1.example.com host2.example.com’. If you want no restriction, chose ‘all’.

    +
    + +
  • + +
  • + + ng_required_ips + + + (String) + + + (defaults to: '127.0.0.0/8') + + + — +
    +

    String of Ip addresses for hosts which should be allowed/required. Requires format ‘ipaddress ip address range’. If you want no restriction, choose ‘0.0.0.0/0’.

    +
    + +
  • + +
  • + + ng_enable_certbot + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to use certbot for automated TLS certificate management

    +
    + +
  • + +
  • + + ng_certbot_webroot + + + (String) + + + (defaults to: '/var/www/html') + + + — +
    +

    the path for certbot to place challenges for the certification process.

    +
    + +
  • + +
  • + + ng_mail_user + + + (String) + + + (defaults to: "admin@${::domain}") + + + — +
    +

    email address to receive administrative mail. used for nagios itself as well as for certbot. Mail environment must be configured separately, i.e. through cd_postfix.

    +
    + +
  • + +
  • + + ng_page_user + + + (String) + + + (defaults to: "pageadmin@${::domain}") + + + — +
    +

    pager address to be used by Nagios for notifications. Paging environment must be configured separately.

    +
    + +
  • + +
  • + + ng_enable_index + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to create an index file to allow httpd checks with nagios on the nagios server.

    +
    + +
  • + +
  • + + ng_webserver_name + + + (String) + + + (defaults to: "nagios.${::domain}") + + + — +
    +

    the name of the web server nagios should listen to, i.e. ‘nagios.example.net’. Unlike ng_nagios_server, this should not be the FQDN of the nagios host, but a web server domain name. required for certbot and used in the web templates.

    +
    + +
  • + +
  • + + ng_log_file + + + (String) + + + (defaults to: '/var/log/nagios/nagios.log') + + + — +
    +

    main log file where service- and host events are logged.

    +
    + +
  • + +
  • + + ng_max_check_attempts + + + (String) + + + (defaults to: '10') + + + — +
    +

    maximum amount of checks done by nagios

    +
    + +
  • + +
  • + + ng_object_cache_file + + + (String) + + + (defaults to: '/var/spool/nagios/objects.cache') + + + — +
    +

    determines where object definitions are cached when # Nagios starts/restarts.

    +
    + +
  • + +
  • + + ng_precached_obj_file + + + (String) + + + (defaults to: '/var/spool/nagios/objects.precache') + + + — +
    +

    determines the location of the precached object file.

    +
    + +
  • + +
  • + + ng_resource_file + + + (String) + + + (defaults to: '/etc/nagios/private/resource.cfg') + + + — +
    +

    resource file that contains $USERx$ macro definitions.

    +
    + +
  • + +
  • + + ng_status_file + + + (String) + + + (defaults to: '/var/log/nagios/status.dat') + + + — +
    +

    where the current status of all monitored services and hosts is stored.

    +
    + +
  • + +
  • + + ng_status_upd_interval + + + (String) + + + (defaults to: '10') + + + — +
    +

    status file update interval. determines the frequency (in seconds) that # Nagios will periodically dump program, host, and # service status data.

    +
    + +
  • + +
  • + + ng_check_ext_commands + + + (String) + + + (defaults to: '1') + + + — +
    +

    allows you to specify whether or not Nagios should check # for external commands in the command file specified by ng_command_file.

    +
    + +
  • + +
  • + + ng_command_file + + + (String) + + + (defaults to: '/var/spool/nagios/cmd/nagios.cmd') + + + — +
    +

    file that Nagios checks for external command requests. It is also where the command CGI will write commands that are submitted # by users, so it must be writeable by the user that the web server is running as.

    +
    + +
  • + +
  • + + ng_enable_query_handler + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to enable the query handler for running nagios in cluster mode.

    +
    + +
  • + +
  • + + ng_query_socket + + + (String) + + + (defaults to: '/var/spool/nagios/cmd/nagios.qh') + + + — +
    +

    the socket for the query handler

    +
    + +
  • + +
  • + + ng_lock_file + + + (String) + + + (defaults to: '/var/run/nagios/nagios.pid') + + + — +
    +

    lockfile that Nagios will use to store its PID number in when it is running in daemon mode.

    +
    + +
  • + +
  • + + ng_temp_file + + + (String) + + + (defaults to: '/var/spool/nagios/nagios.tmp') + + + — +
    +

    temporary file that is used as scratch space when Nagios # updates the status log, cleans the comment file, etc.

    +
    + +
  • + +
  • + + ng_temp_path + + + (String) + + + (defaults to: '/tmp') + + + — +
    +

    path where Nagios can create temp files for service and # host check results, etc.

    +
    + +
  • + +
  • + + ng_event_broker_options + + + (String) + + + (defaults to: '-1') + + + — +
    +

    Controls what (if any) data gets sent to the event broker.

    +
    + +
  • + +
  • + + ng_event_broker_module + + + (String) + + + (defaults to: '') + + + — +
    +

    specify an event broker (including full path) module that should # by loaded by Nagios at startup. Specify multiple modules as array [‘path/to/module1’,‘/path/to/module2’]

    +
    + +
  • + +
  • + + ng_log_rotation_method + + + (String) + + + (defaults to: 'h') + + + — +
    +

    Valid options: n = None - don’t rotate the log h = Hourly rotation (top of the hour) d = Daily rotation (midnight every day) w = Weekly rotation (midnight on Saturday evening) m = Monthly rotation (midnight last day of month)

    +
    + +
  • + +
  • + + ng_log_archive_path + + + (String) + + + (defaults to: '/var/log/nagios/archives') + + + — +
    +

    directory where archived (rotated) log files should be # placed (assuming you’ve chosen to do log rotation).

    +
    + +
  • + +
  • + + ng_use_syslog + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether to log messages to the syslog facility, as well as the Nagios log file. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_notifications + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log notifications in addition to regular messages. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_service_retries + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log service retries. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_host_retries + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log host retries. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_event_handlers + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log host and service event handlers. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_initial_states + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether to log initial states. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_current_states + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log all current host and service states to the main log file after log has been rotated. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_external_commands + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log external commands. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_log_passive_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to log passive checks. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_glob_host_evt_handler + + + (String) + + + (defaults to: '') + + + — +
    +

    Specify a global host event handler # command that is to be run for every host or service state change. The global event handler is executed immediately prior to the event handler that you have optionally specified in each host or # service definition. The command argument is the short name of a # command definition that you define in your host configuration file.

    +
    + +
  • + +
  • + + ng_glob_svc_evt_handler + + + (String) + + + (defaults to: '') + + + — +
    +

    Specify a global service event handler # command that is to be run for every host or service state change. The global event handler is executed immediately prior to the event handler that you have optionally specified in each host or # service definition. The command argument is the short name of a # command definition that you define in your host configuration file.

    +
    + +
  • + +
  • + + ng_svc_int_check_delay + + + (String) + + + (defaults to: 's') + + + — +
    +

    method that Nagios should use when initially “spreading out” service checks when it starts monitoring. Valid options: n = None - don’t use any delay between checks d = Use a “dumb” delay of 1 second between checks s = Use “smart” inter-check delay calculation x.xx = Use an inter-check delay of x.xx seconds

    +
    + +
  • + +
  • + + ng_max_svc_check_spread + + + (String) + + + (defaults to: '30') + + + — +
    +

    timeframe (in minutes) from the program start time that an initial check of all services should be completed

    +
    + +
  • + +
  • + + ng_svc_interleave_factor + + + (String) + + + (defaults to: 's') + + + — +
    +

    determines how service checks are interleaved. Valid options: s = Use “smart” interleave factor calculation x = Use an interleave factor of x, where x is greater than or equal to 1.

    +
    + +
  • + +
  • + + ng_host_int_check_delay + + + (String) + + + (defaults to: 's') + + + — +
    +

    method that Nagios should use when initially “spreading out” host checks when it starts monitoring. Valid options: n = None - don’t use any delay between checks d = Use a “dumb” delay of 1 second between checks s = Use “smart” inter-check delay calculation x.xx = Use an inter-check delay of x.xx seconds

    +
    + +
  • + +
  • + + ng_max_host_check_spread + + + (String) + + + (defaults to: '30') + + + — +
    +

    timeframe (in minutes) from the program start time that an initial check of all hosts should # be completed.

    +
    + +
  • + +
  • + + ng_max_concurrent_checks + + + (String) + + + (defaults to: '0') + + + — +
    +

    specify the maximum number of service checks that can be run in parallel at any given time. A value of 0 will not restrict the number of concurrent checks that are being executed.

    +
    + +
  • + +
  • + + ng_check_res_reaper_freq + + + (String) + + + (defaults to: '10') + + + — +
    +

    frequency (in seconds!) in which Nagios will process the results of host and service checks.

    +
    + +
  • + +
  • + + ng_max_check_res_reap_time + + + (String) + + + (defaults to: '30') + + + — +
    +

    max amount of time (in seconds) that a single # check result reaper event will be allowed to run before returning control back to Nagios so it can perform other duties.

    +
    + +
  • + +
  • + + ng_check_result_path + + + (String) + + + (defaults to: '/var/spool/nagios/checkresults') + + + — +
    +

    directory where Nagios stores the results of host and service checks that have not yet been processed.

    +
    + +
  • + +
  • + + ng_max_check_res_file_age + + + (String) + + + (defaults to: '3600') + + + — +
    +

    maximum age (in seconds) which check result files are considered to be valid.

    +
    + +
  • + +
  • + + ng_cached_h_check_horizon + + + (String) + + + (defaults to: '15') + + + — +
    +

    maximum amount of time (in seconds) that the state of a previous host check is considered current. Cached host states (from host checks that were performed more recently that the timeframe specified by this value) can immensely improve performance in regards to the host check logic. Too high of a value for this option may result in inaccurate host states being used by Nagios, while a lower value may result in a performance hit for host checks. Use a value of 0 to disable host check caching.

    +
    + +
  • + +
  • + + ng_cached_s_check_horizon + + + (String) + + + (defaults to: '15') + + + — +
    +

    maximum amount of time (in seconds) that the state of a previous service check is considered current. Cached service states (from service checks that were performed more recently that the timeframe specified by this value) can immensely improve performance in regards to the service check logic. Too high of a value for this option may result in inaccurate service states being used by Nagios, while a lower value may result in a performance hit for service checks. Use a value of 0 to disable service check caching.

    +
    + +
  • + +
  • + + ng_pred_host_dep_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will attempt to execute checks of hosts when it predicts that future dependency logic test may be needed. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_pred_svc_dep_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will attempt to execute checks of services when it predicts that future dependency logic test may be needed. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_soft_state_dependencies + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether or not Nagios will use soft state information when checking host and service dependencies. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_time_change_threshold + + + (String) + + + (defaults to: '900') + + + — +
    +

    when Nagios will react to detected changes in system time (either forward or backwards).

    +
    + +
  • + +
  • + + ng_auto_reschedule_checks + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will attempt to automatically reschedule active host and service checks to “smooth” them out over time. Experimental feature. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_auto_reschedule_intval + + + (String) + + + (defaults to: '30') + + + — +
    +

    how often (in seconds) Nagios will attempt to automatically reschedule checks. only has an effect if ng_auto_reschedule_checks is set to 1.

    +
    + +
  • + +
  • + + ng_auto_reschedule_window + + + (String) + + + (defaults to: '180') + + + — +
    +

    determines the “window” of time (in seconds) that # Nagios will look at when automatically rescheduling checks. Only host and service checks that occur in the next X seconds (determined by this variable) will be rescheduled.

    +
    + +
  • + +
  • + + ng_service_check_timeout + + + (String) + + + (defaults to: '60') + + + — +
    +

    how much time Nagios will allow service check commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_host_check_timeout + + + (String) + + + (defaults to: '30') + + + — +
    +

    how much time Nagios will allow host check commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_event_handler_timeout + + + (String) + + + (defaults to: '30') + + + — +
    +

    how much time Nagios will allow event handler commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_notification_timeout + + + (String) + + + (defaults to: '30') + + + — +
    +

    how much time Nagios will allow notification commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_ocsp_timeout + + + (String) + + + (defaults to: '5') + + + — +
    +

    how much time Nagios will allow ocsp commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_perfdata_timeout + + + (String) + + + (defaults to: '5') + + + — +
    +

    how much time Nagios will allow performance data commands to execute before killing them off.

    +
    + +
  • + +
  • + + ng_retain_state_inf + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will save state information for services and hosts before it shuts down. Upon startup Nagios will reload all saved service and host state information before starting to monitor. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_state_retention_file + + + (String) + + + (defaults to: '/var/spool/nagios/retention.dat') + + + — +
    +

    Where Nagios should use to store host and # service state information before it shuts down. The state information in this file is also read immediately prior to starting to monitor the network when Nagios is restarted. This file is used only if the ng_retain_state_inf variable is set to 1.

    +
    + +
  • + +
  • + + ng_retention_update_intval + + + (String) + + + (defaults to: '60') + + + — +
    +

    how often (in minutes) that Nagios # will automatically save retention data during normal operation. If you set this value to 0, Nagios will not save retention data at regular interval, but it will still save retention data before shutting down or restarting. If you have disabled state retention, this option has no effect.

    +
    + +
  • + +
  • + + ng_use_ret_program_state + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will set program status variables based on the values saved in the retention file. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_use_ret_scheduling_info + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will retain the scheduling info (next check time) for hosts and services based on the values saved in the retention file. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_ret_host_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    mask determines what host attributes are not retained

    +
    + +
  • + +
  • + + ng_ret_service_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    mask determines what service attributes are not retained

    +
    + +
  • + +
  • + + ng_ret_proc_host_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    what host process attributes are not retained.

    +
    + +
  • + +
  • + + ng_ret_proc_svc_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    what service process attributes are not retained

    +
    + +
  • + +
  • + + ng_ret_contact_h_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    what host contact attributes are not retained.

    +
    + +
  • + +
  • + + ng_ret_contact_s_attr_mask + + + (String) + + + (defaults to: '0') + + + — +
    +

    what service contact attributes are not retained.

    +
    + +
  • + +
  • + + ng_interval_length + + + (String) + + + (defaults to: '60') + + + — +
    +

    seconds per unit interval as used in the host/contact/service configuration files.

    +
    + +
  • + +
  • + + ng_check_for_updates + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether Nagios will automatically check to see if new updates (releases) are available. Effectively, setting $pkg_ensure to latest will have Puppet take care for that automatically though through the packages available in the yum repos. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_bare_update_check + + + (String) + + + (defaults to: '0') + + + — +
    +

    what data Nagios will send to api.nagios.org when it checks for updates. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_use_aggr_host_checking + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether to enable aggressive host checking. Read Nagios documentation for more infos aggressive host checking.

    +
    + +
  • + +
  • + + ng_execute_service_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will actively execute service checks when it initially starts. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_accept_pass_svc_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether or not Nagios will accept passive # service checks results when it initially (re)starts. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_execute_host_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    whether or not Nagios will actively execute host checks when it initially starts. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_accept_pass_host_checks + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether or not Nagios will accept passive # host checks results when it initially (re)starts. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_enable_notifications + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will sent out any host or service notifications when it is initially (re)started. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_enable_event_handlers + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will run any host or service event handlers when it is initially (re)started. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_process_perf_data + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will process performance data returned from service and host checks. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_host_perfdata_command + + + (String) + + + (defaults to: 'process-host-perfdata') + + + — +
    +

    Short name of a command definition defined in your host configuration file. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_svc_perfdata_command + + + (String) + + + (defaults to: 'process-service-perfdata') + + + — +
    +

    Short name of a command definition defined in your service configuration file. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_host_perfdata_file + + + (String) + + + (defaults to: '/var/spool/nagios/host-perfdata') + + + — +
    +

    used to store host performance data. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_service_perfdata_file + + + (String) + + + (defaults to: '/var/spool/nagios/service-perfdata') + + + — +
    +

    used to store service performance data. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_host_perfdata_template + + + (String) + + + (defaults to: '[HOSTPERFDATA]\t$TIMET$\t$HOSTNAME$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$') + + + — +
    +

    What data is written (and how) to the performance data files. The templates may contain macros, special characters (t for tab, r for carriage return, n for newline) and plain text. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_svc_perfdata_template + + + (String) + + + (defaults to: '[SERVICEPERFDATA]\t$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$') + + + — +
    +

    What data is written (and how) to the performance data files. The templates may contain macros, special characters (t for tab, r for carriage return, n for newline) and plain text. Only active if ng_process_perf_data is set to 1

    +
    + +
  • + +
  • + + ng_host_perfdata_file_mode + + + (String) + + + (defaults to: 'a') + + + — +
    +

    Whether the host performance data files are opened in write (“w”), append (“a”) or named pipe (“p”) mode. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_svc_perfdata_file_mode + + + (String) + + + (defaults to: 'a') + + + — +
    +

    Whether the service performance data files are opened in write (“w”), append (“a”) or named pipe (“p”) mode. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_h_perfdata_proc_intval + + + (String) + + + (defaults to: '0') + + + — +
    +

    How often (in seconds) the host performance data files are processed using the commands defined below. 0 indicates that the files should not be periodically processed. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_s_perfdata_proc_intval + + + (String) + + + (defaults to: '0') + + + — +
    +

    How often (in seconds) the service performance data files are processed using the commands defined below. 0 indicates that the files should not be periodically processed. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_h_perfdata_proc_cmd + + + (String) + + + (defaults to: 'process-host-perfdata-file') + + + — +
    +

    Commands used to periodically process the host performance data files. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_s_perfdata_proc_cmd + + + (String) + + + (defaults to: 'process-service-perfdata-file') + + + — +
    +

    Commands used to periodically process the service performance data files. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_h_perfdata_proc_e_res + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether the core will process empty host perfdata results. Valid options are 0 and 1. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_s_perfdata_proc_e_res + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether the core will process empty service perfdata results. Valid options are 0 and 1. Only active if ng_process_perf_data is set to 1.

    +
    + +
  • + +
  • + + ng_obsess_over_services + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will obsess over service checks and run the ocsp_command defined. Unless you are planning on implementing distributed monitoring, do not enable this option.

    +
    + +
  • + +
  • + + ng_ocsp_command + + + (String) + + + (defaults to: '') + + + — +
    +

    Command that is run for every service check that is processed by Nagios. This command is executed only if the ng_obsess_over_services option is set to 1. The command argument is the short name of a command definition defined in your service configuration file. Read the HTML docs for # more information on implementing distributed monitoring.

    +
    + +
  • + +
  • + + ng_obsess_over_hosts + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will obsess over host checks and run the ocsp_command defined. Unless you are planning on implementing distributed monitoring, do not enable this option.

    +
    + +
  • + +
  • + + ng_ochp_command + + + (String) + + + (defaults to: '') + + + — +
    +

    Command that is run for every service check that is processed by Nagios. This command is executed only if the ng_obsess_over_hosts option is set to 1. The command argument is the short name of a command definition defined in your host configuration file. Read the HTML docs for # more information on implementing distributed monitoring.

    +
    + +
  • + +
  • + + ng_translate_pass_h_checks + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether or not Nagios will translate # DOWN/UNREACHABLE passive host check results into their proper state for this instance of Nagios. This option is useful only if you have distributed or failover monitoring setup. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_pass_h_checks_are_soft + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will treat passive host checks as being HARD or SOFT. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_check_orphaned_svc + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will periodically check for orphaned service checks.Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_check_orphaned_hosts + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will periodically check for orphaned host checks.Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_check_service_freshness + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios will periodically check the “freshness” of service results. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_svc_fresh_check_intval + + + (String) + + + (defaults to: '60') + + + — +
    +

    how often (in seconds) Nagios will check the “freshness” of service check results. Only active if ng_check_service_freshness is set to 1.

    +
    + +
  • + +
  • + + ng_svc_check_timeout_state + + + (String) + + + (defaults to: 'c') + + + — +
    +

    The state Nagios will report when a service check times out - that is does not respond within ng_service_check_timeout seconds. Valid settings are: c - Critical (default) u - Unknown w - Warning o - OK

    +
    + +
  • + +
  • + + ng_check_host_freshness + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will periodically check the “freshness” of host check results. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_host_fresh_check_intval + + + (String) + + + (defaults to: '60') + + + — +
    +

    how often (in seconds) Nagios will check the “freshness” of host check results. Only active if ng_check_service_freshness is set to 1.

    +
    + +
  • + +
  • + + ng_add_freshness_latency + + + (String) + + + (defaults to: '15') + + + — +
    +

    number of seconds that Nagios will add to any host and service freshness thresholds that it calculates (those not explicitly specified by the user).

    +
    + +
  • + +
  • + + ng_enable_flap_detection + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether or not Nagios will try and detect hosts and services that are “flapping”. Flapping occurs when a host or service changes between # states too frequently. When Nagios detects that a # host or service is flapping, it will temporarily suppress notifications for that host/service until it stops flapping.

    +
    + +
  • + +
  • + + ng_low_svc_flap_threshold + + + (String) + + + (defaults to: '5.0') + + + — +
    +

    Low threshold for service flapping. only active if ng_enable_flap_detection is set to 1.

    +
    + +
  • + +
  • + + ng_high_svc_flap_threshold + + + (String) + + + (defaults to: '20.0') + + + — +
    +

    High threshold for service flapping. Only active if ng_enable_flap_detection is set to 1.

    +
    + +
  • + +
  • + + ng_low_h_flap_threshold + + + (String) + + + (defaults to: '5.0') + + + — +
    +

    Low threshold for host flapping. only active if ng_enable_flap_detection is set to 1.

    +
    + +
  • + +
  • + + ng_high_h_flap_threshold + + + (String) + + + (defaults to: '20.0') + + + — +
    +

    High threshold for host flapping. Only active if ng_enable_flap_detection is set to 1.

    +
    + +
  • + +
  • + + ng_date_format + + + (String) + + + (defaults to: 'us') + + + — +
    +

    How short dates are displayed. Valid options include: us (MM-DD-YYYY HH:MM:SS) euro (DD-MM-YYYY HH:MM:SS) iso8601 (YYYY-MM-DD HH:MM:SS) strict-iso8601 (YYYY-MM-DDTHH:MM:SS)

    +
    + +
  • + +
  • + + ng_use_timezone_offset + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to use timezone offsets. if set to false, the system configured timezone will be used.

    +
    + +
  • + +
  • + + ng_use_timezone + + + (String) + + + (defaults to: '') + + + — +
    +

    used to override the default timezone that this # instance of Nagios runs in. If not specified, Nagios will use the system configured timezone. NOTE: In order to display the correct timezone in the CGIs, you # will also need to alter the Apache directives for the CGI path # to include your timezone. It is highly recommended to configure the timezone correctly at system level anyway. Only active if ng_use_timezone_offset is set to true.

    +
    + +
  • + +
  • + + ng_illegal_obj_name_chars + + + (String) + + + (defaults to: '`~!$%^&*|\'"<>?,()=') + + + — +
    +

    specify illegal characters that cannot # be used in host names, service descriptions, or names of other object types.

    +
    + +
  • + +
  • + + ng_ill_macro_output_chars + + + (String) + + + (defaults to: '`~$&|\'"<>') + + + — +
    +

    Specify illegal characters that are stripped from macros before being used in notifications, event handlers, etc. This DOES NOT affect macros used in service or host check commands. The following macros are stripped of the characters you specify: $HOSTOUTPUT$ $HOSTPERFDATA$ $HOSTACKAUTHOR$ $HOSTACKCOMMENT$ $SERVICEOUTPUT$ $SERVICEPERFDATA$ $SERVICEACKAUTHOR$ $SERVICEACKCOMMENT$

    +
    + +
  • + +
  • + + ng_use_regexp_matching + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether regular expression matching takes place in the object config files. Regular expression matching is used to match host, hostgroup, service, and service group names/descriptions in some fields of various object types. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_true_regexp_matching + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether or not “true” regular expression # matching takes place in the object config files. Only active if ng_use_regexp_matching is set to true.

    +
    + +
  • + +
  • + + ng_daemon_dumps_core + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios is allowed to create a core dump when it runs as a daemon.

    +
    + +
  • + +
  • + + ng_use_large_inst_tweaks + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether or not Nagios will take some shortcuts # which can save on memory and CPU usage in large Nagios installations. Valid options are 0 or 1.

    +
    + +
  • + +
  • + + ng_enable_env_macros + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether Nagios will make all standard macros available as environment variables when host/service checks and system commands (event handlers, notifications, etc.) are executed. Can cause performance problems in large installations if enabled. Valid options are 0 or 1.

    +
    + +
  • + +
  • + + ng_free_child_process_mem + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether Nagios should free up memory on child processes. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_child_proc_fork_twice + + + (String) + + + (defaults to: '1') + + + — +
    +

    ow Nagios will fork child processes. Valid options are 0 or 1.

    +
    + +
  • + +
  • + + ng_debug_level + + + (String) + + + (defaults to: '0') + + + — +
    +

    how much (if any) debugging information will be written to the debug file. Valid options are: -1 = Everything 0 = Nothing 1 = Functions 2 = Configuration 4 = Process information 8 = Scheduled events 16 = Host/service checks 32 = Notifications 64 = Event broker 128 = External commands 256 = Commands 512 = Scheduled downtime 1024 = Comments 2048 = Macros

    +
    + +
  • + +
  • + + ng_debug_verbosity + + + (String) + + + (defaults to: '1') + + + — +
    +

    How verbose the debug log out will be. Valid options: 0 = Brief output 1 = More detailed 2 = Very detailed

    +
    + +
  • + +
  • + + ng_debug_file + + + (String) + + + (defaults to: '/var/spool/nagios/nagios.debug') + + + — +
    +

    FQDN where Nagios should write debug information.

    +
    + +
  • + +
  • + + ng_max_debug_file_size + + + (String) + + + (defaults to: '1000000') + + + — +
    +

    Maximum size (in bytes) of the debug file. If the file grows larger than this size, it will be renamed with a .old # extension. If a file already exists with a .old extension it will automatically be deleted.

    +
    + +
  • + +
  • + + ng_allow_empty_hostgroups + + + (String) + + + (defaults to: '0') + + + — +
    +

    Should we allow hostgroups to have no hosts, we default this to off since that was the old behavior.

    +
    + +
  • + +
  • + + ng_check_workers + + + (String) + + + (defaults to: '') + + + — +
    +

    Normally worker count is dynamically allocated based on 1.5 * number of cpu’s with a minimum of 4 workers. This value will override the defaults.

    +
    + +
  • + +
  • + + ng_host_down_svc_checks + + + (String) + + + (defaults to: '0') + + + — +
    +

    This option will disable all service checks if the host is not in an UP state. While desirable in some environments, enabling this value can distort report values as the expected quantity of checks will not have been performed. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_enable_load_ctl_options + + + (Boolean) + + + (defaults to: false) + + + — +
    +

    Whether to enable loadctl_options To get current defaults based on your system issue a command to the query handler. Experimental feature and not recommended for production.

    +
    + +
  • + +
  • + + ng_loadctl_options + + + (String) + + + (defaults to: 'jobs_max=100;backoff_limit=10;rampup_change=5') + + + — +
    +

    load controlling options jobs_max - The maximum amount of jobs to run at one time jobs_min - The minimum amount of jobs to run at one time jobs_limit - The maximum amount of jobs the current load lets us run backoff_limit - The minimum backoff_change backoff_change - # of jobs to remove from jobs_limit when backing off rampup_limit - Minimum rampup_change rampup_change - # of jobs to add to jobs_limit when ramping up

    +
    + +
  • + +
  • + + ng_nrpe_port + + + (String) + + + (defaults to: '5666') + + + — +
    +

    the port for NRPE. used by firewall and in configuration file.

    +
    + +
  • + +
  • + + ng_enable_swap_check + + + (Boolean) + + + (defaults to: true) + + + — +
    +

    Whether to enable the declaration of the swap check. Disabling this makes sense when you use the cd_swap Puppet module and have enabled the check declaration from there, so the Nagios check is properly aligned to the Puppet module controlling the particular item.

    +
    + +
  • + +
  • + + reqpackages_server + + + (Array) + + + (defaults to: ['nagios','nagios-devel']) + + + — +
    +

    the packages for the server

    +
    + +
  • + +
  • + + reqpackages_client + + + (Array) + + + (defaults to: ['net-snmp-utils','nagios-plugins','nagios-plugins-all','nagios-plugins-nrpe','nagios-common']) + + + — +
    +

    the packages for the clients

    +
    + +
  • + +
+ + + +

See Also:

+ + +
+ + + + + +
+
+
+
+638
+639
+640
+641
+642
+643
+644
+645
+646
+647
+648
+649
+650
+651
+652
+653
+654
+655
+656
+657
+658
+659
+660
+661
+662
+663
+664
+665
+666
+667
+668
+669
+670
+671
+672
+673
+674
+675
+676
+677
+678
+679
+680
+681
+682
+683
+684
+685
+686
+687
+688
+689
+690
+691
+692
+693
+694
+695
+696
+697
+698
+699
+700
+701
+702
+703
+704
+705
+706
+707
+708
+709
+710
+711
+712
+713
+714
+715
+716
+717
+718
+719
+720
+721
+722
+723
+724
+725
+726
+727
+728
+729
+730
+731
+732
+733
+734
+735
+736
+737
+738
+739
+740
+741
+742
+743
+744
+745
+746
+747
+748
+749
+750
+751
+752
+753
+754
+755
+756
+757
+758
+759
+760
+761
+762
+763
+764
+765
+766
+767
+768
+769
+770
+771
+772
+773
+774
+775
+776
+777
+778
+779
+780
+781
+782
+783
+784
+785
+786
+787
+788
+789
+790
+791
+792
+793
+794
+795
+796
+797
+798
+799
+800
+801
+802
+803
+804
+805
+806
+807
+808
+809
+810
+811
+812
+813
+814
+815
+816
+817
+818
+819
+820
+821
+822
+823
+824
+825
+826
+827
+828
+829
+830
+831
+832
+833
+834
+835
+836
+837
+838
+839
+840
+841
+842
+843
+844
+845
+846
+847
+848
+849
+850
+851
+852
+853
+854
+855
+856
+857
+858
+859
+860
+861
+862
+863
+864
+865
+866
+867
+868
+869
+870
+871
+872
+873
+874
+875
+876
+877
+878
+879
+880
+881
+882
+883
+884
+885
+886
+887
+888
+889
+890
+891
+892
+893
+894
+895
+896
+897
+898
+899
+900
+901
+902
+903
+904
+905
+906
+907
+908
+909
+910
+911
+912
+913
+914
+915
+916
+917
+918
+919
+920
+921
+922
+923
+924
+925
+926
+927
+928
+929
+930
+931
+932
+933
+934
+935
+936
+937
+938
+939
+940
+941
+942
+943
+944
+945
+946
+947
+948
+949
+950
+951
+952
+953
+954
+955
+956
+957
+958
+959
+960
+961
+962
+963
+964
+965
+966
+967
+968
+969
+970
+971
+972
+973
+974
+975
+976
+977
+978
+979
+980
+981
+982
+983
+984
+985
+986
+987
+988
+
+
# File 'manifests/params.pp', line 638
+
+class cd_nagios::params (
+
+  String $pkg_ensure                 = 'latest',
+
+  String $ng_nagios_server           = "nagios.${::domain}",
+  String $ng_nagios_ext_ip           = undef,
+  String $ng_mail_user               = "admin@${::domain}",
+  String $ng_page_user               = "pageadmin@${::domain}",
+
+  Boolean $ng_include_nrpe           = true,
+
+# firewall
+  Boolean $ng_include_fw             = true,
+  Boolean $ng_use_https              = true,
+  Boolean $ng_http_https_fw          = true,
+  String $ng_fw_order                = '50',
+  String $ng_http_port               = '80',
+  String $ng_https_port              = '443',
+  String $ng_nrpe_port               = '5666',
+
+# check command parameters
+## ping
+  String $ng_ping_warn               = '100.0,20%',
+  String $ng_ping_crit               = '500.0,60%',
+  String $ng_ping_ensure             = 'present',
+## disk
+  String $ng_disk_warn               = '20%',
+  String $ng_disk_crit               = '10%' ,
+  String $ng_disk_ensure             = 'present',
+# swap
+  String $ng_swap_warn               = '20',
+  String $ng_swap_crit               = '10',
+  String $ng_swap_ensure             = 'present',
+# users
+  String $ng_users_warn              = '20',
+  String $ng_users_crit              = '50',
+  String $ng_users_ensure            = 'present',
+#total procs
+  String $ng_procs_tot_warn          = '330',
+  String $ng_procs_tot_crit          = '400',
+  String $ng_procs_tot_param         = 'RDST',
+  String $ng_procs_tot_ens           = 'present',
+# zombie procs
+  String $ng_procs_z_warn            = '10',
+  String $ng_procs_z_crit            = '30',
+  String $ng_procs_z_param           = 'Z',
+  String $ng_procs_z_ensure          = 'present',
+# load
+  String $ng_load_warn               = '5.00,4.00,3.00',
+  String $ng_load_crit               = '10.00,6.00,4.00',
+  String $ng_load_ensure             = 'present',
+
+# user settings
+  String $ng_user                    = 'nagios',
+  String $ng_u_comment               = 'Nagios service user',
+  String $ng_u_uid                   = '1004',
+  String $ng_user_home               = '/var/spool/nagios',
+  Optional[String] $ng_u_groups      = undef,
+  String $ng_user_shell              = '/bin/bash',
+
+# cgi settings
+  String $ng_context_help            = '1',
+  String $ng_pending_state           = '1',
+  String $ng_use_auth                = '1',
+  String $ng_use_ssl_auth            = '0',
+  Boolean $ng_enable_def_user        = false,
+  String $ng_def_user_name           = 'nagios_insecure',
+  String $ng_nagios_admin            = 'nagios_sec_adm',
+  String $ng_sysinfo_auth            = '',
+  String $ng_confinfo_auth           = '',
+  String $ng_command_auth            = '',
+  String $ng_hostview_auth           = '',
+  String $ng_serviceview_auth        = '',
+  String $ng_host_cmd_auth           = '',
+  String $ng_svc_cmd_auth            = '',
+  String $ng_readonly_auth           = '' ,
+  String $ng_statusmap_img           = 'smbackground.gd2',
+  Boolean $ng_use_colormap           = false,
+  String $ng_colormap_red            = '255',
+  String $ng_colormap_green          = '255',
+  String $ng_colormap_blue           = '255',
+  String $ng_statusmap_layout        = '6',
+  String $ng_wrl_layout              = '4',
+  Boolean $ng_incl_own_wrl           = false,
+  String $ng_statuswrl_include       = '',
+  String $ng_ping_syntax             = '/bin/ping -n -U -c 5 $HOSTADDRESS$',
+  String $ng_refresh_rate            = '90',
+  String $ng_result_limit            = '100',
+  String $ng_escape_html             = '1',
+  Boolean $ng_use_sound              = false,
+  String $ng_host_unreachable        = 'hostdown.wav',
+  String $ng_host_down               = 'hostdown.wav',
+  String $ng_svc_critical            = 'critical.wav',
+  String $ng_svc_warn                = 'warning.wav',
+  String $ng_svc_unknown             = 'warning.wav',
+  String $ng_normal_sound            = 'noproblem.wav',
+  String $ng_action_url_target       = '_blank',
+  String $ng_notes_url_target        = '_blank',
+  String $ng_lock_author_names       = '1',
+  Boolean $ng_enable_splunk          = false,
+  String $ng_splunk_url              = 'http://127.0.0.1:8000/',
+  String $ng_navbar_addresses        = '1',
+  String $ng_navbar_aliases          = '1',
+  String $ng_ack_no_sticky           = '0',
+  String $ng_ack_no_send             = '0',
+
+# selinux
+  Boolean $ng_use_selinux_tools      = true,
+
+# httpd
+  String $ng_required_hosts          = '',
+  String $ng_required_ips            = '127.0.0.0/8',
+  Boolean $ng_enable_index           = true,
+
+# certbot
+  Boolean $ng_enable_certbot         = true,
+  String $ng_certbot_webroot         = '/var/www/html',
+  String $ng_webserver_name          = "nagios.${::domain}",
+
+# main settings
+  String $ng_log_file                = '/var/log/nagios/nagios.log',
+  String $ng_max_check_attempts      = '10',
+  String $ng_object_cache_file       = '/var/spool/nagios/objects.cache',
+  String $ng_precached_obj_file      = '/var/spool/nagios/objects.precache',
+  String $ng_resource_file           = '/etc/nagios/private/resource.cfg',
+  String $ng_status_file             = '/var/log/nagios/status.dat',
+  String $ng_status_upd_interval     = '10',
+  String $ng_check_ext_commands      = '1',
+  String $ng_command_file            = '/var/spool/nagios/cmd/nagios.cmd',
+  Boolean $ng_enable_query_handler   = false,
+  String $ng_query_socket            = '/var/spool/nagios/cmd/nagios.qh',
+  String $ng_lock_file               = '/var/run/nagios/nagios.pid',
+  String $ng_temp_file               = '/var/spool/nagios/nagios.tmp',
+  String $ng_temp_path               = '/tmp',
+  String $ng_event_broker_options    = '-1',
+  String $ng_event_broker_module     = '',
+  String $ng_log_rotation_method     = 'h',
+  String $ng_log_archive_path        = '/var/log/nagios/archives',
+  String $ng_use_syslog              = '1',
+  String $ng_log_notifications       = '1',
+  String $ng_log_service_retries     = '1',
+  String $ng_log_host_retries        = '1',
+  String $ng_log_event_handlers      = '1',
+  String $ng_log_initial_states      = '0',
+  String $ng_log_current_states      = '1',
+  String $ng_log_external_commands   = '1',
+  String $ng_log_passive_checks      = '1',
+  String $ng_glob_host_evt_handler   = '',
+  String $ng_glob_svc_evt_handler    = '',
+  String $ng_svc_int_check_delay     = 's',
+  String $ng_max_svc_check_spread    = '30',
+  String $ng_svc_interleave_factor   = 's',
+  String $ng_host_int_check_delay    = 's',
+  String $ng_max_host_check_spread   = '30',
+  String $ng_max_concurrent_checks   = '0',
+  String $ng_check_res_reaper_freq   = '10',
+  String $ng_max_check_res_reap_time = '30',
+  String $ng_check_result_path       = '/var/spool/nagios/checkresults',
+  String $ng_max_check_res_file_age  = '3600',
+  String $ng_cached_h_check_horizon  = '15',
+  String $ng_cached_s_check_horizon  = '15',
+  String $ng_pred_host_dep_checks    = '1',
+  String $ng_pred_svc_dep_checks     = '1',
+  String $ng_soft_state_dependencies = '0',
+  String $ng_time_change_threshold   = '900',
+  String $ng_auto_reschedule_checks  = '0',
+  String $ng_auto_reschedule_intval  = '30',
+  String $ng_auto_reschedule_window  = '180',
+  String $ng_service_check_timeout   = '60',
+  String $ng_host_check_timeout      = '30',
+  String $ng_event_handler_timeout   = '30',
+  String $ng_notification_timeout    = '30',
+  String $ng_ocsp_timeout            = '5',
+  String $ng_perfdata_timeout        = '5',
+  String $ng_retain_state_inf        = '1',
+  String $ng_state_retention_file    = '/var/spool/nagios/retention.dat',
+  String $ng_retention_update_intval = '60',
+  String $ng_use_ret_program_state   = '1',
+  String $ng_use_ret_scheduling_info = '1',
+  String $ng_ret_host_attr_mask      = '0',
+  String $ng_ret_service_attr_mask   = '0',
+  String $ng_ret_proc_host_attr_mask = '0',
+  String $ng_ret_proc_svc_attr_mask  = '0',
+  String $ng_ret_contact_h_attr_mask = '0',
+  String $ng_ret_contact_s_attr_mask = '0',
+  String $ng_interval_length         = '60',
+  String $ng_check_for_updates       = '1',
+  String $ng_bare_update_check       = '0',
+  String $ng_use_aggr_host_checking  = '0',
+  String $ng_execute_service_checks  = '1',
+  String $ng_accept_pass_svc_checks  = '1',
+  String $ng_execute_host_checks     = '1',
+  String $ng_accept_pass_host_checks = '1',
+  String $ng_enable_notifications    = '1',
+  String $ng_enable_event_handlers   = '1',
+  String $ng_process_perf_data       = '0',
+  String $ng_host_perfdata_command   = 'process-host-perfdata',
+  String $ng_svc_perfdata_command    = 'process-service-perfdata',
+  String $ng_host_perfdata_file      = '/var/spool/nagios/host-perfdata',
+  String $ng_service_perfdata_file   = '/var/spool/nagios/service-perfdata',
+  String $ng_host_perfdata_template  = '[HOSTPERFDATA]\t$TIMET$\t$HOSTNAME$\t$HOSTEXECUTIONTIME$\t$HOSTOUTPUT$\t$HOSTPERFDATA$',
+  String $ng_svc_perfdata_template   = '[SERVICEPERFDATA]\t$TIMET$\t$HOSTNAME$\t$SERVICEDESC$\t$SERVICEEXECUTIONTIME$\t$SERVICELATENCY$\t$SERVICEOUTPUT$\t$SERVICEPERFDATA$',
+  String $ng_host_perfdata_file_mode = 'a',
+  String $ng_svc_perfdata_file_mode  = 'a',
+  String $ng_h_perfdata_proc_intval  = '0',
+  String $ng_s_perfdata_proc_intval  = '0',
+  String $ng_h_perfdata_proc_cmd     = 'process-host-perfdata-file',
+  String $ng_s_perfdata_proc_cmd     = 'process-service-perfdata-file',
+  String $ng_h_perfdata_proc_e_res   = '1',
+  String $ng_s_perfdata_proc_e_res   = '1',
+  String $ng_obsess_over_services    = '0',
+  String $ng_ocsp_command            = '',
+  String $ng_obsess_over_hosts       = '0',
+  String $ng_ochp_command            = '',
+  String $ng_translate_pass_h_checks = '0',
+  String $ng_pass_h_checks_are_soft  = '0',
+  String $ng_check_orphaned_svc      = '1',
+  String $ng_check_orphaned_hosts    = '1',
+  String $ng_check_service_freshness = '1',
+  String $ng_svc_fresh_check_intval  = '60',
+  String $ng_svc_check_timeout_state = 'c',
+  String $ng_check_host_freshness    = '0',
+  String $ng_host_fresh_check_intval = '60',
+  String $ng_add_freshness_latency   = '15',
+  String $ng_enable_flap_detection   = '1',
+  String $ng_low_svc_flap_threshold  = '5.0',
+  String $ng_high_svc_flap_threshold = '20.0',
+  String $ng_low_h_flap_threshold    = '5.0',
+  String $ng_high_h_flap_threshold   = '20.0',
+  String $ng_date_format             = 'us',
+  Boolean $ng_use_timezone_offset    = false,
+  String $ng_use_timezone            = '',
+  String $ng_illegal_obj_name_chars  = '`~!$%^&*|\'"<>?,()=',
+  String $ng_ill_macro_output_chars  = '`~$&|\'"<>',
+  String $ng_use_regexp_matching     = '0',
+  String $ng_true_regexp_matching    = '0',
+  String $ng_daemon_dumps_core       = '0',
+  String $ng_use_large_inst_tweaks   = '0',
+  String $ng_enable_env_macros       = '0',
+  String $ng_free_child_process_mem  = '1',
+  String $ng_child_proc_fork_twice   = '1',
+  String $ng_debug_level             = '0',
+  String $ng_debug_verbosity         = '1',
+  String $ng_debug_file              = '/var/spool/nagios/nagios.debug',
+  String $ng_max_debug_file_size     = '1000000',
+  String $ng_allow_empty_hostgroups  = '0',
+  String $ng_check_workers           = '',
+  String $ng_host_down_svc_checks    = '0',
+  Boolean $ng_enable_load_ctl_options = false,
+  String $ng_loadctl_options         = 'jobs_max=100;backoff_limit=10;rampup_change=5',
+
+# single nagios checks
+  Boolean $ng_enable_swap_check       = true,
+
+# installation
+  Array $reqpackages_server         = ['nagios','nagios-devel'],
+  Array $reqpackages_client         = ['net-snmp-utils','nagios-plugins','nagios-plugins-all','nagios-plugins-nrpe','nagios-common'],
+
+) {
+# service
+  $ng_service                 = 'nagios'
+  $ae_service                 = 'httpd'
+
+# directories
+  $ng_main_dir                = '/etc/nagios'
+  $ng_conf_d_dir              = "${ng_main_dir}/conf.d"
+  $ng_objects_dir             = "${ng_main_dir}/objects"
+  $ng_private_dir             = "${ng_main_dir}/private"
+  $ng_usr_incl                = '/usr/include/nagios'
+  $ng_lib_dir                 = '/usr/lib64/nagios'
+  $ng_log_dir                 = '/var/log/nagios'
+  $ng_log_archives            = "${ng_log_dir}/archives"
+  $ng_spool_dir               = '/var/spool/nagios'
+  $ng_usr_share               = '/usr/share/nagios'
+  $ng_share_html              = "${ng_usr_share}/html"
+  $ng_run_dir                 = '/var/run/nagios'
+  $ng_cmd_dir                 = "${ng_spool_dir}/cmd"
+  $ng_checkresults_dir        = "${ng_spool_dir}/checkresults"
+
+# files
+  $ng_main_config             = "${ng_main_dir}/nagios.cfg"
+  $ng_cgi_cfg_file            = "${ng_main_dir}/cgi.cfg"
+  $ng_cgi_cfg_erb             = 'cd_nagios/nagios/cgi_cfg.erb'
+  $ng_htpasswd_file           = "${ng_main_dir}/passwd"
+  $ng_htpasswd_head           = 'cd_nagios/nagios/htpasswd_head.erb'
+  $ng_htpasswd_rule           = 'cd_nagios/nagios/htpasswd_rule.erb'
+  $ng_taccgi_erb              = 'cd_nagios/selinux/taccgi.erb'
+  $ng_statcgi_erb             = 'cd_nagios/selinux/statuscgi.erb'
+  $ng_statdat_erb             = 'cd_nagios/selinux/statusdat.erb'
+  $ng_checknrpe_erb           = 'cd_nagios/selinux/checknrpe.erb'
+  $ng_checknagios_erb         = 'cd_nagios/selinux/checknagios.erb'
+  $ng_nagios_conf             = '/etc/httpd/conf.d/nagios.conf'
+  $ng_nagios_conf_erb         = 'cd_nagios/httpd/nagios_conf.erb'
+  $ng_welcome_conf            = '/etc/httpd/conf.d/welcome.conf'
+  $ng_welcome_conf_erb        = 'cd_nagios/httpd/welcome_conf.erb'
+  $ng_forward_conf            = '/etc/httpd/conf.d/nagios_forward.conf'
+  $ng_forward_conf_erb        = 'cd_nagios/httpd/forward_conf.erb'
+  $ng_get_cert_erb            = 'cd_nagios/certbot/get_cert.erb'
+  $ng_unless_get_cert         = 'cd_nagios/certbot/unless_get_cert.erb'
+  $ng_unless_renew_erb        = 'cd_nagios/certbot/unless_renew_cert.erb'
+  $ng_index_html_file         = '/var/www/html/index.html'
+  $ng_index_html_erb          = 'cd_nagios/httpd/index_html.erb'
+  $ng_ssl_vhost_file          = '/etc/httpd/conf.d/nagios_ssl.conf'
+  $ng_ssl_vhost_erb           = 'cd_nagios/httpd/nagios_ssl_vhost.erb'
+  $ng_nagios_cfg_file         = "${ng_main_dir}/nagios.cfg"
+  $ng_nagios_cfg_erb          = 'cd_nagios/nagios/nagios_cfg.erb'
+  $ng_resource_erb            = 'cd_nagios/nagios/resource_cfg.erb'
+  $ng_grep_erb                = 'cd_nagios/selinux/grep.erb'
+
+# certbot
+  $ng_certbot_main_dir        = '/etc/letsencrypt'
+  $ng_certbot_archive         = "${ng_certbot_main_dir}/archive"
+  $ng_certbot_check           = "${ng_certbot_archive}/${ng_webserver_name}/cert1.pem"
+  $ng_certbot_live            = "${ng_certbot_main_dir}/live"
+
+# nagios
+  $ng_target_templates        = "${ng_conf_d_dir}/nagios_templates.cfg"
+  $ng_templates_head_erb      = 'cd_nagios/nagios/templates_cfg_head.erb'
+  $ng_templates_rule_erb      = 'cd_nagios/nagios/templates_cfg_rule.erb'
+  $ng_tgt_timeperiods_base    = "${ng_conf_d_dir}/nagios_timeperiods.cfg"
+  $ng_tgt_timep_add           = "${ng_conf_d_dir}/nagios_timeperiods_add.cfg"
+  $ng_tgt_timep_head_erb      = 'cd_nagios/nagios/timeperiods_cfg_head.erb'
+  $ng_tgt_timep_rule_erb      = 'cd_nagios/nagios/timeperiods_cfg_rule.erb'
+  $ng_target_localhost        = "${ng_conf_d_dir}/nagios_localhost.cfg"
+  $ng_target_host             = "${ng_conf_d_dir}/nagios_host.cfg"
+  $ng_target_hostgroup_base   = "${ng_conf_d_dir}/nagios_hostgroups_base.cfg"
+  $ng_tgt_hostgroup_add       = "${ng_conf_d_dir}/nagios_hostgroups_add.cfg"
+  $ng_tgt_hostgrp_head_erb    = 'cd_nagios/nagios/hostgroups_cfg_head.erb'
+  $ng_tgt_hostgrp_rule_erb    = 'cd_nagios/nagios/hostgroups_cfg_rule.erb'
+  $ng_target_hostdep          = "${ng_conf_d_dir}/nagios_hostdependency.cfg"
+  $ng_target_hostesc          = "${ng_conf_d_dir}/nagios_hostescalation.cfg"
+  $ng_target_hostext          = "${ng_conf_d_dir}/nagios_hostextinfo.cfg"
+  $ng_target_service          = "${ng_conf_d_dir}/nagios_service.cfg"
+  $ng_target_svcgrp_base      = "${ng_conf_d_dir}/nagios_servicegroups_base.cfg"
+  $ng_tgt_servicegroup_add    = "${ng_conf_d_dir}/nagios_servicegroups_add.cfg"
+  $ng_tgt_svcgrp_head_erb     = 'cd_nagios/nagios/svcgroups_cfg_head.erb'
+  $ng_tgt_svcgrp_rule_erb     = 'cd_nagios/nagios/svcgroups_cfg_rule.erb'
+  $ng_target_base_contact     = "${ng_conf_d_dir}/nagios_contact_base.cfg"
+  $ng_target_add_contact      = "${ng_conf_d_dir}/nagios_contact_add.cfg"
+  $ng_contacts_head_erb       = 'cd_nagios/nagios/contacts_cfg_head.erb'
+  $ng_contacts_rule_erb       = 'cd_nagios/nagios/contacts_cfg_rule.erb'
+  $ng_tgt_contactgroup_base   = "${ng_conf_d_dir}/nagios_contactgroup_base.cfg"
+  $ng_tgt_contactgroup_add    = "${ng_conf_d_dir}/nagios_contactgroup_add.cfg"
+  $ng_cntctgrps_head_erb      = 'cd_nagios/nagios/contactgroups_cfg_head.erb'
+  $ng_cntctgrps_rule_erb      = 'cd_nagios/nagios/contactgroups_cfg_rule.erb'
+  $ng_target_command          = "${ng_conf_d_dir}/nagios_commands_base.cfg"
+  $ng_nagios_service_cmd      = 'check_nagios!/var/log/nagios/status.dat!5!/usr/sbin/nagios'
+
+# includes must be last
+  include cd_nagios::main::config
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html b/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html new file mode 100644 index 0000000..1ecc0b9 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html @@ -0,0 +1,392 @@ + + + + + + + Puppet Class: cd_nagios::selinux::config + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::selinux::config

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/selinux/config.pp +
+
+
+ +

Summary

+ Class manages all aspects of selinux for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::selinux::config.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/selinux/config.pp', line 6
+
+class cd_nagios::selinux::config (
+
+) inherits cd_nagios::params {
+  if $ng_use_selinux_tools == true {
+    require cd_selinux
+
+    # it appears that selinux behaves differently across different nodes,
+    # so all we can do for now is to create a list of the AVC alerts and come up
+    # with a solution on that later.
+
+    exec { 'create_avc_list':
+      command => 'sealert -a /var/log/audit/audit.log > avc_alerts',
+      cwd     => $ng_user_home,
+      path    => ['/usr/bin'],
+      creates => "${ng_user_home}/avc_alerts",
+    }
+
+    # sealert tac-cgi
+#    exec { 'create_policy_taccgi':
+#      command    => template($ng_taccgi_erb),
+#      path       => ['/usr/bin','/usr/sbin'],
+#      user       => $ng_user,
+#      cwd        => $ng_user_home,
+#      creates    => "${ng_user_home}/my-taccgi.pp",
+#      notify     => Exec['semodule_taccgi'],
+#    }
+
+#    exec { 'semodule_taccgi':
+#      command    => "semodule -i ${ng_user_home}/my-taccgi.pp",
+#      path       => ['/usr/bin','/usr/sbin'],
+#      user       => $ng_user,
+#      cwd        => $ng_user_home,
+#      require    => Exec['create_policy_taccgi'],
+#      refreshonly => true,
+#    }
+
+    # sealert status.cgi
+
+#    exec { 'create_policy_statuscgi':
+#      command    => template($ng_statcgi_erb),
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      creates    => "${ng_user_home}/my-statuscgi.pp",
+#      notify     => Exec['semodule_statuscgi'],
+#    }
+
+#    exec { 'semodule_statuscgi':
+#      command    => 'semodule -i my-statuscgi.pp',
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      require    => Exec['create_policy_statuscgi'],
+#      refreshonly => true,
+#      notify     => Service[$ng_service],
+#    }
+
+    # sealert check_nrpe
+
+#    exec { 'create_policy_checknrpe':
+#      command    => template($ng_checknrpe_erb),
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      creates    => "${ng_user_home}/my-checknrpe.pp",
+#      notify     => Exec['semodule_checknrpe'],
+#    }
+
+#    exec { 'semodule_checknrpe':
+#      command    => 'semodule -i my-checknrpe.pp',
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      require    => Exec['create_policy_checknrpe'],
+#      refreshonly => true,
+#      notify     => Service[$ng_service],
+#    }
+
+    # sealert check_nagios
+
+#    exec { 'create_policy_checknagios':
+#      command    => template($ng_checknagios_erb),
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      creates    => "${ng_user_home}/my-checknagios.pp",
+#      notify     => Exec['semodule_checknagios'],
+#    }
+
+#    exec { 'semodule_checknagios':
+#      command    => 'semodule -i my-checknagios.pp',
+#      path       => ['/usr/bin','/usr/sbin'],
+#      cwd        => $ng_user_home,
+#      require    => Exec['create_policy_checknagios'],
+#      refreshonly => true,
+#      notify     => Service[$ng_service],
+#    }
+
+    # sealert status.dat
+
+    exec { 'create_policy_statusdat':
+      command => template($ng_statdat_erb),
+      path    => ['/usr/bin','/usr/sbin'],
+      user    => $ng_user,
+      cwd     => $ng_user_home,
+      creates => "${ng_user_home}/my-http.pp",
+      notify  => Exec['semodule_statusdat'],
+    }
+
+    exec { 'semodule_statusdat':
+      command     => "semodule -i ${ng_user_home}/my-httpd.pp",
+      path        => ['/usr/bin','/usr/sbin'],
+      user        => $ng_user,
+      cwd         => $ng_user_home,
+      require     => Exec['create_policy_statusdat'],
+      refreshonly => true,
+      notify      => Service[$ng_service],
+    }
+
+    # sealert grep
+
+    exec { 'create_policy_grep':
+      command => template($ng_grep_erb),
+      path    => ['/usr/bin','/usr/sbin'],
+      user    => $ng_user,
+      cwd     => $ng_user_home,
+      creates => "${ng_user_home}/my-grep.pp",
+      notify  => Exec['semodule_statusdat'],
+    }
+
+    exec { 'semodule_grep':
+      command     => "semodule -i ${ng_user_home}/my-grep.pp",
+      path        => ['/usr/bin','/usr/sbin'],
+      user        => $ng_user,
+      cwd         => $ng_user_home,
+      require     => Exec['create_policy_grep'],
+      refreshonly => true,
+      notify      => Service[$ng_service],
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html new file mode 100644 index 0000000..53160fc --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html @@ -0,0 +1,171 @@ + + + + + + + Puppet Class: cd_nagios::server::access_rules + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::server::access_rules

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/server/access_rules.pp +
+
+
+ +

Summary

+ Class manages presence of /etc/nagios/phtpasswd file. + +

Overview

+
+
+ +

cd_nagios::server::access_rules.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::server::access { 'example':
+  ng_htpasswd_user     => 'example_user',
+  ng_htpasswd_password => 'example_password_encrypted',
+}
+ +
+ + + +
+ + + + + +
+
+
+
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+
+
# File 'manifests/server/access_rules.pp', line 11
+
+class cd_nagios::server::access_rules (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    # manage /etc/nagios/htpasswd file
+
+    concat { $ng_htpasswd_file:
+      ensure   => present,
+      path     => $ng_htpasswd_file,
+      owner    => 'root',
+      group    => 'apache',
+      mode     => '0640',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      notify   => Service[$ng_service],
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html new file mode 100644 index 0000000..5ad117b --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html @@ -0,0 +1,306 @@ + + + + + + + Puppet Class: cd_nagios::server::files + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::server::files

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/server/files.pp +
+
+
+ +

Summary

+ Class manages all configuration files required for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::server::files.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/server/files.pp', line 6
+
+class cd_nagios::server::files (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    if $ng_use_https == true {
+      if $ng_enable_certbot == true {
+        require cd_nagios::certbot::certs
+      }
+    }
+
+    require cd_nagios::main::dirs
+
+    # manage nagios.cfg
+
+    file { $ng_nagios_cfg_file:
+      ensure   => file,
+      path     => $ng_nagios_cfg_file,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0644',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      content  => template($ng_nagios_cfg_erb),
+      notify   => Service[$ng_service],
+    }
+
+    # manage cgi.cfg
+
+    file { $ng_cgi_cfg_file:
+      ensure   => file,
+      path     => $ng_cgi_cfg_file,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0644',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => nagios_etc_t,
+      seluser  => system_u,
+      content  => template($ng_cgi_cfg_erb),
+      notify   => Service[$ng_service],
+    }
+
+    ## Apache files
+    # since we use vhost files, we do not want the regular file to appear
+    # after upgrades to avoid conflicts
+
+    file { $ng_nagios_conf:
+      ensure   => absent,
+    }
+
+    file { $ng_forward_conf:
+      ensure   => file,
+      path     => $ng_forward_conf,
+      owner    => 'root',
+      group    => 'root',
+      mode     => '0644',
+      selrange => s0,
+      selrole  => object_r,
+      seltype  => httpd_config_t,
+      seluser  => system_u,
+      content  => template($ng_forward_conf_erb),
+      notify   => Service[$ae_service],
+    }
+
+    if $ng_use_https == true {
+      # create ssl vhost
+
+      file { $ng_ssl_vhost_file:
+        ensure   => file,
+        path     => $ng_ssl_vhost_file,
+        owner    => 'root',
+        group    => 'root',
+        mode     => '0644',
+        selrange => s0,
+        selrole  => object_r,
+        seltype  => httpd_config_t,
+        seluser  => system_u,
+        content  => template($ng_ssl_vhost_erb),
+        notify   => Service[$ae_service],
+      }
+    }
+
+    if $ng_use_https != true {
+      # remove ssl_vhost
+
+      file { $ng_ssl_vhost_file:
+        ensure => absent,
+      }
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html new file mode 100644 index 0000000..bd8f707 --- /dev/null +++ b/doc/puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html @@ -0,0 +1,506 @@ + + + + + + + Puppet Class: cd_nagios::server::service + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Puppet Class: cd_nagios::server::service

+
+ +
+
Inherits:
+
cd_nagios::params
+
+ + +
+
Defined in:
+
+ manifests/server/service.pp +
+
+
+ +

Summary

+ Class manages the service(s) for cd_nagios. + +

Overview

+
+
+ +

cd_nagios::server::service.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/server/service.pp', line 6
+
+class cd_nagios::server::service (
+
+) inherits cd_nagios::params {
+  if $::fqdn == $ng_nagios_server {
+    if $ng_include_nrpe == true {
+      require cd_nrpe
+    }
+
+    require cd_nagios::server::files
+    require cd_nagios::server::access_rules
+    require cd_nagios::nagios::objects::config
+    require cd_nagios::nagios::resources::resource
+
+    service { $ng_service:
+      ensure     => running,
+      hasstatus  => true,
+      hasrestart => true,
+      enable     => true,
+    }
+
+    @@nagios_host { 'localhost':
+      ensure              => $ng_ping_ensure,
+      alias               => 'localhost',
+      address             => '127.0.0.1',
+      use                 => 'linux-server',
+      target              => $ng_target_localhost,
+      hostgroups          => 'linux-servers',
+      contacts            => 'ops',
+      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':
+      check_command       => $ng_nagios_service_cmd,
+      use                 => 'generic-service',
+      host_name           => 'localhost',
+      notification_period => '24x7',
+      service_description => 'localhost_nagios_service',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+      contacts            => 'ops',
+    }
+
+    @@nagios_host { $::fqdn:
+      ensure              => $ng_ping_ensure,
+      alias               => $::hostname,
+      address             => $::fqdn,
+      use                 => 'linux-server',
+      target              => $ng_target_host,
+      hostgroups          => 'linux-servers',
+      contacts            => 'ops',
+      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_user],
+    }
+
+    @@nagios_service { "root_partition_${::hostname}":
+      ensure              => $ng_disk_ensure,
+      check_command       => "check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/",
+      use                 => 'generic-service',
+      host_name           => $::fqdn,
+      contacts            => 'ops',
+      notification_period => '24x7',
+      service_description => "${::hostname}_root_partition",
+      servicegroups       => 'linux-services',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    if $ng_enable_swap_check == true {
+      @@nagios_service { "Swap_Usage_${::hostname}":
+        ensure              => $ng_swap_ensure,
+        check_command       => "check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}",
+        use                 => 'generic-service',
+        host_name           => $::fqdn,
+        contacts            => 'ops',
+        notification_period => '24x7',
+        service_description => "${::hostname}_swap_usage",
+        servicegroups       => 'linux-services',
+        target              => $ng_target_service,
+        owner               => $ng_user,
+        group               => $ng_user,
+        mode                => '0640',
+      }
+    }
+
+    @@nagios_service { "Local_Users_${::hostname}":
+      ensure              => $ng_users_ensure,
+      check_command       => "check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}",
+      use                 => 'generic-service',
+      host_name           => $::fqdn,
+      contacts            => 'ops',
+      notification_period => '24x7',
+      service_description => "${::hostname}_local_users",
+      servicegroups       => 'linux-services',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    @@nagios_service { "Total Processes_${::hostname}":
+      ensure              => $ng_procs_tot_ens,
+      check_command       => "check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}",
+      use                 => 'generic-service',
+      host_name           => $::fqdn,
+      contacts            => 'ops',
+      notification_period => '24x7',
+      service_description => "${::hostname}_total_processes",
+      servicegroups       => 'linux-services',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    @@nagios_service { "Zombie Processes_${::hostname}":
+      ensure              => $ng_procs_z_ensure,
+      check_command       => "check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}",
+      use                 => 'generic-service',
+      host_name           => $::fqdn,
+      contacts            => 'ops',
+      notification_period => '24x7',
+      service_description => "${::hostname}_zombie_processes",
+      servicegroups       => 'linux-services',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    @@nagios_service { "Current_Load_${::hostname}":
+      ensure              => $ng_load_ensure,
+      check_command       => "check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}",
+      use                 => 'generic-service',
+      host_name           => $::fqdn,
+      contacts            => 'ops',
+      notification_period => '24x7',
+      service_description => "${::hostname}_current_load",
+      servicegroups       => 'linux-services',
+      target              => $ng_target_service,
+      owner               => $ng_user,
+      group               => $ng_user,
+      mode                => '0640',
+    }
+
+    resources { ['nagios_host',
+        'nagios_hostgroup',
+        'nagios_hostdependency',
+        'nagios_hostescalation',
+        'nagios_hostextinfo',
+        'nagios_service',
+        'nagios_servicegroup',
+        'nagios_servicedependency',
+        'nagios_serviceescalation',
+        'nagios_serviceextinfo',
+        'nagios_contact',
+        'nagios_contactgroup',
+        'nagios_command',
+      'nagios_timeperiod']:
+        purge  => true,
+    }
+
+    # collect resources and populate /etc/nagios/conf.d/nagios_*.cfg
+    Nagios_host <<||>> { notify  => Service['nagios'] }
+    Nagios_hostgroup <<||>> { notify  => Service['nagios'] }
+    Nagios_hostdependency <<||>> { notify  => Service['nagios'] }
+    Nagios_hostescalation <<||>> { notify  => Service['nagios'] }
+    Nagios_hostextinfo <<||>> { notify  => Service['nagios'] }
+    Nagios_service <<||>> { notify  => Service['nagios'] }
+    Nagios_servicegroup <<||>> { notify  => Service['nagios'] }
+    Nagios_servicedependency <<||>> { notify  => Service['nagios'] }
+    Nagios_serviceescalation <<||>> { notify  => Service['nagios'] }
+    Nagios_serviceextinfo <<||>> { notify  => Service['nagios'] }
+    Nagios_contact <<||>> { notify  => Service['nagios'] }
+    Nagios_contactgroup <<||>> { notify  => Service['nagios'] }
+    Nagios_command <<||>> { notify  => Service['nagios'] }
+    Nagios_timeperiod <<||>> { notify  => Service['nagios'] }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_type_list.html b/doc/puppet_defined_type_list.html new file mode 100644 index 0000000..e5a56d4 --- /dev/null +++ b/doc/puppet_defined_type_list.html @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + Defined Type List + + + + + + diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html new file mode 100644 index 0000000..317e6ed --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html @@ -0,0 +1,261 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::add_contact + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::add_contact

+
+
+
Defined in:
+
+ manifests/nagios/objects/add_contact.pp +
+
+
+ +

Summary

+ Define manages additional contacts known to NAGIOS through external +Puppet rules, and populates /etc/nagios/conf.d/nagios_add_contact.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_contact.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_contact { 'example_user':
+  ng_contact_name   =>  'example_user',
+  ng_contact_alias  =>  'Example User',
+  ng_contact_groups =>  'admins',
+  ng_contact_email  =>  'example@example.net',
+}
+ +
+

Parameters:

+
    + +
  • + + ng_contact_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the contact short name.

    +
    + +
  • + +
  • + + ng_contact_use + + + (String) + + + (defaults to: 'generic-contact') + + + — +
    +

    which contact template to use

    +
    + +
  • + +
  • + + ng_contact_alias + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the contact alias (long name).

    +
    + +
  • + +
  • + + ng_contact_email + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the contact email address.

    +
    + +
  • + +
  • + + ng_contact_groups + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    specify the contact group for the contact.

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+
+
# File 'manifests/nagios/objects/add_contact.pp', line 19
+
+define cd_nagios::nagios::objects::add_contact (
+
+  Optional[String] $ng_contact_name    = undef,
+  String $ng_contact_use               = 'generic-contact',
+  Optional[String] $ng_contact_alias   = undef,
+  Optional[String] $ng_contact_email   = undef,
+  Optional[String] $ng_contact_groups  = undef,
+
+) {
+  $ng_nagios_server       = $::cd_nagios::params::ng_nagios_server
+  $ng_target_add_contact  = $::cd_nagios::params::ng_target_add_contact
+  $ng_contacts_rule_erb   = $::cd_nagios::params::ng_contacts_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_target_add_contact,
+      content => template($ng_contacts_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html new file mode 100644 index 0000000..7cdd6e9 --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html @@ -0,0 +1,208 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::add_contactgroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::add_contactgroups

+
+
+
Defined in:
+
+ manifests/nagios/objects/add_contactgroups.pp +
+
+
+ +

Summary

+ Define populates /etc/nagios/conf.d/nagios_add_contactgroups through +external puppet rules. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_contactgroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+

Parameters:

+
    + +
  • + + ng_contactgroup_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the short name of the contact group.

    +
    + +
  • + +
  • + + ng_contactgroup_alias + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the alias (long name) of the contact group

    +
    + +
  • + +
  • + + ng_contactgroup_register + + + (String) + + + (defaults to: '1') + + + — +
    +

    Specify whether the contact group should be registered in Nagios.

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+
+
# File 'manifests/nagios/objects/add_contactgroups.pp', line 13
+
+define cd_nagios::nagios::objects::add_contactgroups (
+
+  Optional[String] $ng_contactgroup_name     = undef,
+  Optional[String] $ng_contactgroup_alias    = undef,
+  String $ng_contactgroup_register           = '1',
+
+) {
+  $ng_nagios_server         = $cd_nagios::params::ng_nagios_server
+  $ng_tgt_contactgroup_add  = $cd_nagios::params::ng_tgt_contactgroup_add
+  $ng_cntctgrps_rule_erb    = $cd_nagios::params::ng_cntctgrps_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_tgt_contactgroup_add,
+      content => template($ng_cntctgrps_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html new file mode 100644 index 0000000..508261d --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html @@ -0,0 +1,219 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::add_hostgroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::add_hostgroups

+
+
+
Defined in:
+
+ manifests/nagios/objects/add_hostgroups.pp +
+
+
+ +

Summary

+ define populates /etc/nagios/conf.d/nagios_hostgroups_add through +external Puppet rules. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_hostgroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_hostgroups { 'example_hostgroup':
+  ng_hostgroup_name   =>  'example_hostgroup',
+  ng_hostgroup_alias  =>  'Example Hostgroup',
+}
+ +
+

Parameters:

+
    + +
  • + + ng_hostgroup_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the hostgroup short name.

    +
    + +
  • + +
  • + + ng_hostgroup_alias + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the hostgroup alias (long name).

    +
    + +
  • + +
  • + + ng_hostgroup_register + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to register the hostgroup.

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+
+
# File 'manifests/nagios/objects/add_hostgroups.pp', line 15
+
+define cd_nagios::nagios::objects::add_hostgroups (
+
+  Optional[String] $ng_hostgroup_name      = undef,
+  Optional[String] $ng_hostgroup_alias     = undef,
+  String $ng_hostgroup_register            = '1',
+
+) {
+  $ng_nagios_server         = $cd_nagios::params::ng_nagios_server
+  $ng_tgt_hostgroup_add     = $cd_nagios::params::ng_tgt_hostgroup_add
+  $ng_tgt_hostgrp_rule_erb  = $cd_nagios::params::ng_tgt_hostgrp_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_tgt_hostgroup_add,
+      content => template($ng_tgt_hostgrp_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html new file mode 100644 index 0000000..01dff47 --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html @@ -0,0 +1,221 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::add_servicegroups + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::add_servicegroups

+
+
+
Defined in:
+
+ manifests/nagios/objects/add_servicegroups.pp +
+
+
+ +

Summary

+ define populates /etc/nagios/conf.d/nagios_servicegroups_add through +external Puppet rules. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_servicegroups.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +

License:

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_servicegroups { 'example_servicegroup':
+  ng_servicegroup_name   => 'example_servicegroup',
+  ng_servicegroup_alias  => 'Example servicegroup',
+}
+ +
+

Parameters:

+
    + +
  • + + ng_servicegroup_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the servicegroup short name

    +
    + +
  • + +
  • + + ng_servicegroup_alias + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the servicegroup alias (long name).

    +
    + +
  • + +
  • + + ng_servicegroup_register + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether you want to register the servicegroup

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+
+
# File 'manifests/nagios/objects/add_servicegroups.pp', line 18
+
+define cd_nagios::nagios::objects::add_servicegroups (
+
+  Optional[String] $ng_servicegroup_name      = undef,
+  Optional[String] $ng_servicegroup_alias     = undef,
+  String $ng_servicegroup_register            = '1',
+
+) {
+  $ng_nagios_server         = $cd_nagios::params::ng_nagios_server
+  $ng_tgt_servicegroup_add  = $cd_nagios::params::ng_tgt_servicegroup_add
+  $ng_tgt_svcgrp_rule_erb   = $cd_nagios::params::ng_tgt_svcgrp_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_tgt_servicegroup_add,
+      content => template($ng_tgt_svcgrp_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html new file mode 100644 index 0000000..5838b5b --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html @@ -0,0 +1,346 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::add_timeperiods + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::add_timeperiods

+
+
+
Defined in:
+
+ manifests/nagios/objects/add_timeperiods.pp +
+
+
+ +

Summary

+ define populates /etc/nagios/conf.d/nagios_timeperiods_add through +extermal Puppet rules. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::add_timeperiods.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+ +
+

Examples:

+ + +
cd_nagios::nagios::objects::add_timeperiods { 'example_timeperiod':
+  ng_timeperiod_name   => 'example_timeperiod',
+  ng_timeperiod_alias  => 'Example timeperiod',
+  ng_timep_monday      => '00:00-00:00',
+  ng_timep_tuesday     => '00:00-00:00',
+  ng_timep_wednesday   => '00:00-00:00',
+  ng_timep_thursday    => '00:00-00:00',
+  ng_timep_friday      => '00:00-00:00',
+  ng_timep_saturday    => '00:00-00:00',
+  ng_timep_sunday      => '00:00-00:00',
+}
+ +
+

Parameters:

+
    + +
  • + + ng_timep_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the timeperiod short name.

    +
    + +
  • + +
  • + + ng_timep_alias + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Specify the timeperiod alias (long name)

    +
    + +
  • + +
  • + + ng_timep_monday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Monday

    +
    + +
  • + +
  • + + ng_timep_tuesday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Tuesday

    +
    + +
  • + +
  • + + ng_timep_wednesday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Wednesday.

    +
    + +
  • + +
  • + + ng_timep_thursday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Thursday

    +
    + +
  • + +
  • + + ng_timep_friday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Friday

    +
    + +
  • + +
  • + + ng_timep_saturday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Saturday

    +
    + +
  • + +
  • + + ng_timep_sunday + + + (String) + + + (defaults to: '00:00-00:00') + + + — +
    +

    Specify the desired hours for Sunday.

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+
+
# File 'manifests/nagios/objects/add_timeperiods.pp', line 28
+
+define cd_nagios::nagios::objects::add_timeperiods (
+
+  Optional[String] $ng_timep_name       = undef,
+  Optional[String] $ng_timep_alias      = undef,
+  String $ng_timep_monday               = '00:00-00:00',
+  String $ng_timep_tuesday              = '00:00-00:00',
+  String $ng_timep_wednesday            = '00:00-00:00',
+  String $ng_timep_thursday             = '00:00-00:00',
+  String $ng_timep_friday               = '00:00-00:00',
+  String $ng_timep_saturday             = '00:00-00:00',
+  String $ng_timep_sunday               = '00:00-00:00',
+
+) {
+  $ng_nagios_server         = $cd_nagios::params::ng_nagios_server
+  $ng_tgt_timep_add         = $cd_nagios::params::ng_tgt_timep_add
+  $ng_tgt_timep_rule_erb    = $cd_nagios::params::ng_tgt_timep_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_tgt_timep_add,
+      content => template($ng_tgt_timep_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html new file mode 100644 index 0000000..2f1a4cb --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html @@ -0,0 +1,765 @@ + + + + + + + Defined Type: cd_nagios::nagios::objects::templates + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::objects::templates

+
+
+
Defined in:
+
+ manifests/nagios/objects/templates.pp +
+
+
+ +

Summary

+ Define manages populates /etc/nagios/conf.d/templates.cfg. + +

Overview

+
+
+ +

cd_nagios::nagios::objects::templates.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com) notifications. for the defined service or host.

+ +
+
+ + + +
+

Parameters:

+
    + +
  • + + ng_template_object + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    the object type for the templates. Valid options are contact, host and service.

    +
    + +
  • + +
  • + + ng_template_object_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    populates the name field, i.e. generic-contact, generic-host, generic-service.

    +
    + +
  • + +
  • + + ng_svc_notification_period + + + (String) + + + (defaults to: '24x7') + + + — +
    +

    Period in which to send out notifications for service events, i.e. 24x7.

    +
    + +
  • + +
  • + + ng_host_notification_period + + + (String) + + + (defaults to: '24x7') + + + — +
    +

    Period in which to send out notifications for host events , i.e. 24x7.

    +
    + +
  • + +
  • + + ng_service_notification_options + + + (String) + + + (defaults to: 'w,u,c,r,f,s') + + + — +
    +

    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).

    +
    + +
  • + +
  • + + ng_host_notification_options + + + (String) + + + (defaults to: 'd,u,r,f,s') + + + — +
    +

    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).

    +
    + +
  • + +
  • + + ng_service_notification_commands + + + (String) + + + (defaults to: 'notify-service-by-email') + + + — +
    +

    Command to use for service event notification. Command must be defined in commands.cfg

    +
    + +
  • + +
  • + + ng_host_notification_commands + + + (String) + + + (defaults to: 'notify-host-by-email') + + + — +
    +

    Command to use for host event notification. Command must be defined in commands.cfg.

    +
    + +
  • + +
  • + + ng_object_register + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether to register the object to Nagios. Since this is a template definition, we do not want to register those.

    +
    + +
  • + +
  • + + ng_template_object_use + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    Which template to use for a given host or service definition, i.e. generic-host, generic-service etc.

    +
    + +
  • + +
  • + + ng_notifications_enabled + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether notifications are enabled. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_event_handler_enabled + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether event handlers are enabled. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_flap_detection_enabled + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether flap detection is enabled. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_process_perf_data + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to process performance data. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_retain_status_information + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to retain status information. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_retain_nonstatus_information + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to retain non-status information. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_notification_period + + + (String) + + + (defaults to: '24x7') + + + — +
    +

    Which period in to send out

    +
    + +
  • + +
  • + + ng_notification_interval + + + (String) + + + (defaults to: '30') + + + — +
    +

    how often (in minutes) we should resend notifications for the current status.

    +
    + +
  • + +
  • + + ng_check_period + + + (String) + + + (defaults to: '24x7') + + + — +
    +

    Which period in to run checks for the defined object.

    +
    + +
  • + +
  • + + ng_max_check_attempts + + + (String) + + + (defaults to: '10') + + + — +
    +

    how often to check the defined object maximal.

    +
    + +
  • + +
  • + + ng_notification_options + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    see ng_service_notification_options and ng_host_notification_options.

    +
    + +
  • + +
  • + + ng_contact_groups + + + (String) + + + (defaults to: 'admins') + + + — +
    +

    contact groups for the defined object. Specified contact group must exit in contact_groups

    +
    + +
  • + +
  • + + ng_active_checks_enabled + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to enable active checks. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_passive_checks_enabled + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to enable passive checks. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_parallelize_check + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to parallelize checks Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_obsess_over_service + + + (String) + + + (defaults to: '1') + + + — +
    +

    Whether to obsess over the service. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_check_freshness + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether to check freshness. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_is_volatile + + + (String) + + + (defaults to: '0') + + + — +
    +

    Whether the service is volatile. Valid options are 0 and 1.

    +
    + +
  • + +
  • + + ng_check_interval + + + (String) + + + (defaults to: '5') + + + — +
    +

    How often to check the service under normal conditions.

    +
    + +
  • + +
  • + + ng_retry_interval + + + (String) + + + (defaults to: '1') + + + — +
    +

    Re-check the service every x minutes until a hard state can be determined.

    +
    + +
  • + +
  • + + ng_host_check_command + + + (String) + + + (defaults to: 'check-host-alive') + + + — +
    +

    the check command for host checks

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+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
+
+
# File 'manifests/nagios/objects/templates.pp', line 79
+
+define cd_nagios::nagios::objects::templates (
+  Optional[String] $ng_template_object        = undef,
+  Optional[String] $ng_template_object_name   = undef,
+  String $ng_svc_notification_period          = '24x7',
+  String $ng_host_notification_period         = '24x7',
+  String $ng_service_notification_options     = 'w,u,c,r,f,s',
+  String $ng_host_notification_options        = 'd,u,r,f,s',
+  String $ng_service_notification_commands    = 'notify-service-by-email',
+  String $ng_host_notification_commands       = 'notify-host-by-email',
+  String $ng_object_register                  = '0',
+  Optional[String] $ng_template_object_use    = undef,
+  String $ng_notifications_enabled            = '1',
+  String $ng_event_handler_enabled            = '1',
+  String $ng_flap_detection_enabled           = '1',
+  String $ng_process_perf_data                = '1',
+  String $ng_retain_status_information        = '1',
+  String $ng_retain_nonstatus_information     = '1',
+  String $ng_notification_period              = '24x7',
+  String $ng_notification_interval            = '30',
+  String $ng_check_period                     = '24x7',
+  String $ng_check_interval                   = '5',
+  String $ng_retry_interval                   = '1',
+  String $ng_max_check_attempts               = '10',
+  String $ng_host_check_command               = 'check-host-alive',
+  Optional[String] $ng_notification_options   = undef,
+  String $ng_contact_groups                   = 'admins',
+  String $ng_active_checks_enabled            = '1',
+  String $ng_passive_checks_enabled           = '1',
+  String $ng_parallelize_check                = '1',
+  String $ng_obsess_over_service              = '1',
+  String $ng_check_freshness                  = '0',
+  String $ng_is_volatile                    = '0',
+
+) {
+  $ng_nagios_server       = $cd_nagios::params::ng_nagios_server
+  $ng_target_templates    = $cd_nagios::params::ng_target_templates
+  $ng_templates_rule_erb  = $cd_nagios::params::ng_templates_rule_erb
+
+  if $::fqdn == $ng_nagios_server {
+    concat::fragment { $name:
+      target  => $ng_target_templates,
+      content => template($ng_templates_rule_erb),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html new file mode 100644 index 0000000..e2aa877 --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html @@ -0,0 +1,227 @@ + + + + + + + Defined Type: cd_nagios::nagios::resources::resource_df + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::nagios::resources::resource_df

+
+
+
Defined in:
+
+ manifests/nagios/resources/resource_df.pp +
+
+
+ +

Summary

+ define manages the resources in/etc/nagios/private/resources.cfg + +

Overview

+
+
+ +

cd_nagios::nagios::resources::resource_df.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+

Parameters:

+
    + +
  • + + ng_user_arg_name + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    the name of user argument i.e. $user1$

    +
    + +
  • + +
  • + + ng_user_arg_value + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    the value of t user argument i.e. $user1$

    +
    + +
  • + +
  • + + ng_user_arg_comment + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    the argument i.e. $user1$

    +
    + +
  • + +
  • + + ng_resource_rule_erb + + + (String) + + + (defaults to: 'cd_nagios/nagios/resource_cfg_rule.erb') + + + — +
    +

    resource rule #

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+
+
# File 'manifests/nagios/resources/resource_df.pp', line 10
+
+define cd_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           = 'cd_nagios/nagios/resource_cfg_rule.erb',
+
+) {
+  $ng_nagios_server = $cd_nagios::params::ng_nagios_server
+  $ng_resource_file = $cd_nagios::params::ng_resource_file
+
+  if $fqdn == $ng_nagios_server {
+    concat::fragment { "rule_${name}":
+      target  => $ng_resource_file,
+      content => template($ng_resource_rule_erb),
+      order   => '000',
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html b/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html new file mode 100644 index 0000000..1e772f8 --- /dev/null +++ b/doc/puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html @@ -0,0 +1,193 @@ + + + + + + + Defined Type: cd_nagios::server::access + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Defined Type: cd_nagios::server::access

+
+
+
Defined in:
+
+ manifests/server/access.pp +
+
+
+ +

Summary

+ Define manages user- and password rules for accessing nagios. + +

Overview

+
+
+ +

cd_nagios::server::access.pp Module name: cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)

+ +
+
+ + + +
+

Parameters:

+
    + +
  • + + ng_htpasswd_user + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    user name for the /etc/nagios/passwd file

    +
    + +
  • + +
  • + + ng_htpasswd_password + + + (Optional[String]) + + + (defaults to: undef) + + + — +
    +

    the encrypted password for the /etc/nagios/passwd file.

    +
    + +
  • + +
+ + + +
+ + + + + +
+
+
+
+9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+
+
# File 'manifests/server/access.pp', line 9
+
+define cd_nagios::server::access (
+
+  Optional[String] $ng_htpasswd_user     = undef,
+  Optional[String] $ng_htpasswd_password = undef,
+
+) {
+  $ng_nagios_server = $cd_nagios::params::ng_nagios_server
+  $ng_htpasswd_file = $cd_nagios::params::ng_htpasswd_file
+  $ng_htpasswd_rule = $cd_nagios::params::ng_htpasswd_rule
+  $ng_service       = $cd_nagios::params::ng_service
+
+  if $::fqdn == $ng_nagios_server {
+    # create password rules
+
+    concat::fragment { $name:
+      target  => $ng_htpasswd_file,
+      content => template($ng_htpasswd_rule),
+    }
+  }
+}
+
+
+
+ + + +
+ + \ No newline at end of file diff --git a/doc/top-level-namespace.html b/doc/top-level-namespace.html new file mode 100644 index 0000000..5d6b54b --- /dev/null +++ b/doc/top-level-namespace.html @@ -0,0 +1,98 @@ + + + + + + + Top Level Namespace + + — Documentation by YARD 0.9.36 + + + + + + + + + + + + + + + + + + + +
+ + +

Top Level Namespace + + + +

+
+ + + + + + + + + + + +
+ + + + + + + + + + +
+ + + +
+ + \ No newline at end of file From d231dc658027d1efced3bde50c2a32fb8abfeebd Mon Sep 17 00:00:00 2001 From: Jenkins Server Date: Wed, 21 May 2025 12:04:17 +0200 Subject: [PATCH 2/2] Recommit for updates in build 3 --- doc/file.README.html | 20 ++++++++++---------- doc/index.html | 20 ++++++++++---------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/doc/file.README.html b/doc/file.README.html index 18d8129..89e95af 100644 --- a/doc/file.README.html +++ b/doc/file.README.html @@ -60,7 +60,7 @@

Readme

-

+

[[TOC]]

@@ -166,21 +166,21 @@

All dependencies must be included in the catalogue.

Deployment

@@ -204,7 +204,7 @@

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 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 is available to automate this task for you as well within a few minutes.

SELINUX

diff --git a/doc/index.html b/doc/index.html index 560e9d4..f94d522 100644 --- a/doc/index.html +++ b/doc/index.html @@ -60,7 +60,7 @@

Readme

-

+

[[TOC]]

@@ -166,21 +166,21 @@

All dependencies must be included in the catalogue.

Deployment

@@ -204,7 +204,7 @@

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 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 is available to automate this task for you as well within a few minutes.

SELINUX