Merge branch 'master' of sourcecode.confdroid.com:12ww1160/cd_nagios into HEAD

This commit is contained in:
2024-12-19 10:55:29 +01:00
48 changed files with 18107 additions and 0 deletions

302
doc/_index.html Normal file
View File

@@ -0,0 +1,302 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = null;
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1 class="noborder title">Documentation by YARD 0.9.26</h1>
<div id="listing">
<h1 class="alphaindex">Alphabetic Index</h1>
<h2>Puppet Class Listing A-Z</h2>
<table>
<tr>
<td valign='top' width="33%">
<ul id="alpha_C" class="alpha">
<li class="letter">C</li>
<ul>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios.html" title="puppet_classes::cd_nagios (puppet_class)">cd_nagios</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html" title="puppet_classes::cd_nagios::certbot::certs (puppet_class)">cd_nagios::certbot::certs</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html" title="puppet_classes::cd_nagios::client::target (puppet_class)">cd_nagios::client::target</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::cd_nagios::firewall::iptables (puppet_class)">cd_nagios::firewall::iptables</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::cd_nagios::main::config (puppet_class)">cd_nagios::main::config</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html" title="puppet_classes::cd_nagios::main::dirs (puppet_class)">cd_nagios::main::dirs</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::cd_nagios::main::install (puppet_class)">cd_nagios::main::install</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html" title="puppet_classes::cd_nagios::main::user (puppet_class)">cd_nagios::main::user</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_contact_rules (puppet_class)">cd_nagios::nagios::objects::add_contact_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_contactgroups_rules (puppet_class)">cd_nagios::nagios::objects::add_contactgroups_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_hostgroup_rules (puppet_class)">cd_nagios::nagios::objects::add_hostgroup_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_servicegroup_rules (puppet_class)">cd_nagios::nagios::objects::add_servicegroup_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_timeperiod_rules (puppet_class)">cd_nagios::nagios::objects::add_timeperiod_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html" title="puppet_classes::cd_nagios::nagios::objects::commands (puppet_class)">cd_nagios::nagios::objects::commands</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html" title="puppet_classes::cd_nagios::nagios::objects::config (puppet_class)">cd_nagios::nagios::objects::config</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html" title="puppet_classes::cd_nagios::nagios::objects::contactgroups (puppet_class)">cd_nagios::nagios::objects::contactgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html" title="puppet_classes::cd_nagios::nagios::objects::contacts (puppet_class)">cd_nagios::nagios::objects::contacts</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html" title="puppet_classes::cd_nagios::nagios::objects::hostgroups (puppet_class)">cd_nagios::nagios::objects::hostgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html" title="puppet_classes::cd_nagios::nagios::objects::servicegroups (puppet_class)">cd_nagios::nagios::objects::servicegroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html" title="puppet_classes::cd_nagios::nagios::objects::template_rules (puppet_class)">cd_nagios::nagios::objects::template_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html" title="puppet_classes::cd_nagios::nagios::objects::timeperiods (puppet_class)">cd_nagios::nagios::objects::timeperiods</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html" title="puppet_classes::cd_nagios::nagios::resources::resource (puppet_class)">cd_nagios::nagios::resources::resource</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html" title="puppet_classes::cd_nagios::selinux::config (puppet_class)">cd_nagios::selinux::config</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html" title="puppet_classes::cd_nagios::server::access_rules (puppet_class)">cd_nagios::server::access_rules</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html" title="puppet_classes::cd_nagios::server::files (puppet_class)">cd_nagios::server::files</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html" title="puppet_classes::cd_nagios::server::service (puppet_class)">cd_nagios::server::service</a></span>
</li>
</ul>
</ul>
</td>
</tr>
</table>
<h2>Defined Type Listing A-Z</h2>
<table>
<tr>
<td valign='top' width="33%">
<ul id="alpha_C" class="alpha">
<li class="letter">C</li>
<ul>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact.html" title="puppet_defined_types::cd_nagios::nagios::objects::add_contact (puppet_defined_type)">cd_nagios::nagios::objects::add_contact</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups.html" title="puppet_defined_types::cd_nagios::nagios::objects::add_contactgroups (puppet_defined_type)">cd_nagios::nagios::objects::add_contactgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroups.html" title="puppet_defined_types::cd_nagios::nagios::objects::add_hostgroups (puppet_defined_type)">cd_nagios::nagios::objects::add_hostgroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroups.html" title="puppet_defined_types::cd_nagios::nagios::objects::add_servicegroups (puppet_defined_type)">cd_nagios::nagios::objects::add_servicegroups</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiods.html" title="puppet_defined_types::cd_nagios::nagios::objects::add_timeperiods (puppet_defined_type)">cd_nagios::nagios::objects::add_timeperiods</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplates.html" title="puppet_defined_types::cd_nagios::nagios::objects::templates (puppet_defined_type)">cd_nagios::nagios::objects::templates</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource_df.html" title="puppet_defined_types::cd_nagios::nagios::resources::resource_df (puppet_defined_type)">cd_nagios::nagios::resources::resource_df</a></span>
</li>
<li>
<span class='object_link'><a href="puppet_defined_types/cd_nagios_3A_3Aserver_3A_3Aaccess.html" title="puppet_defined_types::cd_nagios::server::access (puppet_defined_type)">cd_nagios::server::access</a></span>
</li>
</ul>
</ul>
</td>
</tr>
</table>
<h2>File Listing</h2>
<ul id="files" class="index_inline_list">
<li class="r1"><a href="index.html" title="README">README</a></li>
</ul>
<div class="clear"></div>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

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

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

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

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

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

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

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

@@ -0,0 +1,361 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
File: README
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "";
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="file_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">File: README</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1>
<p><a href="https://pipelines.confdroid.com/job/cd_nagios/"><img
src="https://pipelines.confdroid.com/buildStatus/icon?job=cd_nagios"></a></p>
<p>[[<em>TOC</em>]]</p>
<h2 id="label-Synopsis">Synopsis</h2>
<p>Nagios is a powerful open source software solution for monitoring your IT
environments.</p>
<p><code>cd_nagios</code> is a Puppet module allowing to fully automate the
setup &amp; configuration of the Nagios server, as well as actively adding
client hosts and services to the monitoring environment through defines and
<code>PuppetDB</code>.</p>
<h2 id="label-WARNING">WARNING</h2>
<p><strong><em>Attention: Never use this puppet module on systems which have
been previously configured manually. It is impossible to predict how and
what would have been configured, hence previous configurations outside the
scope of this module may be overwritten! Automated configurations require a
test environment to verify that the module suits the purpose intended by
the user, as well as tune the parameters, before deploying into live
production</em></strong></p>
<h2 id="label-Features">Features</h2>
<p>Installation:</p>
<ul><li>
<p>Nagios Server instance:</p>
</li><li>
<p>install httpd via cd_apache</p>
</li><li>
<p>install Nagios server binaries on Nagios server</p>
</li><li>
<p>Nagios clients:</p>
</li><li>
<p>install client binaries like nagios plugins etc.</p>
</li><li>
<p>include NRPE via <code>cd_nrpe</code> (optional)</p>
</li></ul>
<p>Configuration</p>
<ul><li>
<p>configure all aspects of Nagios on server</p>
</li><li>
<p>manage nagios service user</p>
</li><li>
<p>manage directories (filesystem permissions, selinux )</p>
</li><li>
<p>manage <code>cgi.cfg</code> through parameters</p>
</li><li>
<p>manage <code>nagios.cfg</code> through parameters</p>
</li><li>
<p>manage Nagios users through external Puppet rules via define</p>
</li><li>
<p>manage Nagios commands through Puppet exports</p>
</li><li>
<p>manage Nagios template definitions through external Puppet rules via define</p>
</li><li>
<p>manage Nagios main contacts through Puppet exports. Additional contacts can
be created through external Puppet rules via define, to avoid having to
alter the module code.</p>
</li><li>
<p>manage Nagios main contact groups through Puppet exports. Additional
contact groups can be created through external Puppet rules via define, to
avoid having to alter the module code.</p>
</li><li>
<p>manage Nagios main host groups through Puppet exports. Additional host
groups can be created through external Puppet rules via define, to avoid
having to alter the module code.</p>
</li><li>
<p>manage Nagios main service groups through Puppet exports. Additional
service groups can be created through external Puppet rules via define, to
avoid having to alter the module code.</p>
</li><li>
<p>manage Nagios main time periods through Puppet exports. Additional time
periods can be created through external Puppet rules via define, to avoid
having to alter the module code.</p>
</li><li>
<p>configure firewall (optional)</p>
</li><li>
<p>configure selinux policies (optional)</p>
</li><li>
<p>configure forwarding http to https (optional)</p>
</li><li>
<p>manage TLS certificates through certbot (optional)</p>
</li><li>
<p>manage <code>$user$</code> arguments in resource file via define</p>
</li></ul>
<p>Service</p>
<ul><li>
<p>manage Nagios service on server</p>
</li></ul>
<p>Monitoring</p>
<ul><li>
<p>monitor Nagios host</p>
</li><li>
<p>monitor Nagios service</p>
</li><li>
<p>monitor clients:</p>
</li><li>
<p>ping</p>
</li><li>
<p>root partition</p>
</li><li>
<p>swap usage</p>
</li><li>
<p>logged-in local users</p>
</li><li>
<p>amount of total processes</p>
</li><li>
<p>amount of zombie processes</p>
</li><li>
<p>current Load</p>
</li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
<p>See the full Puppet documentation including parameters in
<code>docs/index.html</code></p>
<h2 id="label-Dependencies">Dependencies</h2>
<p>All dependencies must be included in the catalogue.</p>
<ul><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_resources">cd_resources</a>
for Yum repos.</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_apache">cd_apache</a>
for installing httpd</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_firewall">cd_firewall</a>
or <a href="https://github.com/puppetlabs/puppetlabs-firewall">puppetlabs
firewall</a> (optional)</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_selinux">cd_selinux</a>
for selinux policy adjustments</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_certbot">cd_certbot</a>
to auto-manage TLS certificates (optional)</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_nrpe">cd_nrpe</a> to
manage NRPE (optional)</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_stdlib">cd_stdlib</a>
or <a href="https://github.com/puppetlabs/puppetlabs-stdlib">puppetlabs
stdlib</a> to facilitate concat</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_stdlib">cd_concat</a>
or <a href="https://github.com/puppetlabs/puppetlabs-concat">puppetlabs
concat</a> to concatenate configuration files from different sources.</p>
</li></ul>
<h2 id="label-Deployment">Deployment</h2>
<ul><li>
<p>native Puppet deployment</p>
</li></ul>
<p>via site.pp or nodes.pp</p>
<pre class="code ruby"><code class="ruby">node &#39;example.example.net&#39; {
include cd_nagios
}
</code></pre>
<ul><li>
<p>through Foreman:</p>
</li></ul>
<p>In order to apply parameters through Foreman,
<strong>cd_nagios::params</strong> must be added to the host or host group
in question.</p>
<p>See <a
href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">more
details about class deployment on Confdroid.com</a>.</p>
<h2 id="label-PuppetDB">PuppetDB</h2>
<p>A working instance of PuppetDB connected to the Puppet master is required
for this to work. Installation and configuration of PuppetDB is out of
scope for this module, however <a
href="https://sourcecode.confdroid.com/12WW1160/cd_puppetdb">cd_puppetdb</a>
is available to automate this task for you as well within a few minutes.</p>
<h2 id="label-SELINUX">SELINUX</h2>
<p>All files and directories are configured with correct selinux context. If
selinux is disabled, these contexts are ignored.</p>
<h2 id="label-Certbot">Certbot</h2>
<p>This module can optionally setup <a
href="https://certbot.eff.org/">certbot</a> TLS certificate management for
the front-end GUI. In order to do so, set <code>$ng_enable_certbot</code>
as well as <code>$ng_use_https</code> to <code>true</code> (default).
Effectively, this will manage the certs before even installing Nagios, so
there will be no problems with the Nagios showing up with a self-signed
certificate. Once enabled, the module will go and try to obtain a
certificate automatically. For this to work, you need to have proper DNS
resolution set up for your domain / nagios server. Certs are also
automatically renewed.</p>
<p>If you prefer to use https but use self-signed certs or your own CA, simply
set to false. This will point the SSL vhost config file to the default
location for TLS certificates.</p>
<h2 id="label-httpd+vHost+files">httpd vHost files</h2>
<p>by default, Nagios creates its own <code>nagios.conf</code> file, which is
not a vhost file and relies on the main <code>ssl.conf</code>. However, as
Nagios might be running on a regular web server with various other web
instances (not recommended through for performance reasons), we do not want
to manage <code>ssl.conf</code> directly, hence the module creates a vhost
for the SSL host.</p>
<h2 id="label-Client+Connections">Client Connections</h2>
<p>In order to monitor clients, NAGIOS must be able to connect to them. There
are multiple ways of doing so, the most common ones being NRPE and SSH. So
far this module works through the usage of NRPE, which by default is
enabled. Class cd_nagios::client::nrpe configures <code>nrpe.cfg</code> and
opens the required firewall port on clients (optional,default).</p>
<h2 id="label-Known+Problems">Known Problems</h2>
<ul><li>
<p>Collected resources import ordering problem: The module might try to import
collected facts before nagios is even installed.</p>
</li></ul>
<h2 id="label-Support">Support</h2>
<ul><li>
<p>OS: CentOS 7</p>
</li><li>
<p>Puppet 5</p>
</li></ul>
<h2 id="label-Tests">Tests</h2>
<ul><li>
<p>Puppet Lint</p>
</li><li>
<p>excluded tests:</p>
<ul><li>
<p><code>--no-class_inherits_from_params_class-check</code>:relevant only to
non-supported outdated puppet versions</p>
</li><li>
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting
parameters from params class. the lint check does not distinguish between
facts and inherited parameters.</p>
</li><li>
<p><code>--no-80chars-check</code>: it is not always possible to stay within
80 characters, although typically only occurring on the parameter vault
<code>params.pp</code>.</p>
</li><li>
<p><code>--no-arrow_alignment-check</code>: this check leads to actually not
having am easily readable arrow alignment, as this checks <code>per
block</code>, not per class.</p>
</li></ul>
</li><li>
<p>Puppet Parser</p>
</li><li>
<p>ERB Template Parser</p>
</li><li>
<p>Test for unwanted UTF8 files in the Puppet code (see tests/UTF_Files)</p>
</li><li>
<p>Markdown-lint</p>
</li><li>
<p>Spellcheck</p>
</li><li>
<p>Sonar Quality Gate</p>
</li></ul>
<h2 id="label-Contact+Us">Contact Us</h2>
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
<h2 id="label-Disclaimer">Disclaimer</h2>
<p>ConfDroid as entity is entirely independent from Puppet. We provide custom
configuration modules, written for specific purposes and specific
environments. The modules are tested and supported only as documented, and
require testing in designated environments (i.e. lab or development
environments) for parameter tuning etc. before deploying into production
environments.</p>
</div></div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

17
doc/frames.html Normal file
View File

@@ -0,0 +1,17 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Documentation by YARD 0.9.26</title>
</head>
<script type="text/javascript">
var match = unescape(window.location.hash).match(/^#!(.+)/);
var name = match ? match[1] : 'index.html';
name = name.replace(/^(\w+):\/\//, '').replace(/^\/\//, '');
window.top.location = name;
</script>
<noscript>
<h1>Oops!</h1>
<h2>YARD requires JavaScript!</h2>
</noscript>
</html>

361
doc/index.html Normal file
View File

@@ -0,0 +1,361 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
File: README
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<link rel="stylesheet" href="css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "";
relpath = '';
</script>
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="_index.html">Index</a> &raquo;
<span class="title">File: README</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><div id='filecontents'>
<h1 id="label-Readme">Readme</h1>
<p><a href="https://pipelines.confdroid.com/job/cd_nagios/"><img
src="https://pipelines.confdroid.com/buildStatus/icon?job=cd_nagios"></a></p>
<p>[[<em>TOC</em>]]</p>
<h2 id="label-Synopsis">Synopsis</h2>
<p>Nagios is a powerful open source software solution for monitoring your IT
environments.</p>
<p><code>cd_nagios</code> is a Puppet module allowing to fully automate the
setup &amp; configuration of the Nagios server, as well as actively adding
client hosts and services to the monitoring environment through defines and
<code>PuppetDB</code>.</p>
<h2 id="label-WARNING">WARNING</h2>
<p><strong><em>Attention: Never use this puppet module on systems which have
been previously configured manually. It is impossible to predict how and
what would have been configured, hence previous configurations outside the
scope of this module may be overwritten! Automated configurations require a
test environment to verify that the module suits the purpose intended by
the user, as well as tune the parameters, before deploying into live
production</em></strong></p>
<h2 id="label-Features">Features</h2>
<p>Installation:</p>
<ul><li>
<p>Nagios Server instance:</p>
</li><li>
<p>install httpd via cd_apache</p>
</li><li>
<p>install Nagios server binaries on Nagios server</p>
</li><li>
<p>Nagios clients:</p>
</li><li>
<p>install client binaries like nagios plugins etc.</p>
</li><li>
<p>include NRPE via <code>cd_nrpe</code> (optional)</p>
</li></ul>
<p>Configuration</p>
<ul><li>
<p>configure all aspects of Nagios on server</p>
</li><li>
<p>manage nagios service user</p>
</li><li>
<p>manage directories (filesystem permissions, selinux )</p>
</li><li>
<p>manage <code>cgi.cfg</code> through parameters</p>
</li><li>
<p>manage <code>nagios.cfg</code> through parameters</p>
</li><li>
<p>manage Nagios users through external Puppet rules via define</p>
</li><li>
<p>manage Nagios commands through Puppet exports</p>
</li><li>
<p>manage Nagios template definitions through external Puppet rules via define</p>
</li><li>
<p>manage Nagios main contacts through Puppet exports. Additional contacts can
be created through external Puppet rules via define, to avoid having to
alter the module code.</p>
</li><li>
<p>manage Nagios main contact groups through Puppet exports. Additional
contact groups can be created through external Puppet rules via define, to
avoid having to alter the module code.</p>
</li><li>
<p>manage Nagios main host groups through Puppet exports. Additional host
groups can be created through external Puppet rules via define, to avoid
having to alter the module code.</p>
</li><li>
<p>manage Nagios main service groups through Puppet exports. Additional
service groups can be created through external Puppet rules via define, to
avoid having to alter the module code.</p>
</li><li>
<p>manage Nagios main time periods through Puppet exports. Additional time
periods can be created through external Puppet rules via define, to avoid
having to alter the module code.</p>
</li><li>
<p>configure firewall (optional)</p>
</li><li>
<p>configure selinux policies (optional)</p>
</li><li>
<p>configure forwarding http to https (optional)</p>
</li><li>
<p>manage TLS certificates through certbot (optional)</p>
</li><li>
<p>manage <code>$user$</code> arguments in resource file via define</p>
</li></ul>
<p>Service</p>
<ul><li>
<p>manage Nagios service on server</p>
</li></ul>
<p>Monitoring</p>
<ul><li>
<p>monitor Nagios host</p>
</li><li>
<p>monitor Nagios service</p>
</li><li>
<p>monitor clients:</p>
</li><li>
<p>ping</p>
</li><li>
<p>root partition</p>
</li><li>
<p>swap usage</p>
</li><li>
<p>logged-in local users</p>
</li><li>
<p>amount of total processes</p>
</li><li>
<p>amount of zombie processes</p>
</li><li>
<p>current Load</p>
</li></ul>
<h2 id="label-Repo+Documentation">Repo Documentation</h2>
<p>See the full Puppet documentation including parameters in
<code>docs/index.html</code></p>
<h2 id="label-Dependencies">Dependencies</h2>
<p>All dependencies must be included in the catalogue.</p>
<ul><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_resources">cd_resources</a>
for Yum repos.</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_apache">cd_apache</a>
for installing httpd</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_firewall">cd_firewall</a>
or <a href="https://github.com/puppetlabs/puppetlabs-firewall">puppetlabs
firewall</a> (optional)</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_selinux">cd_selinux</a>
for selinux policy adjustments</p>
</li><li>
<p><a
href="https://sourcecode.confdroid.com/12WW1160/cd_certbot">cd_certbot</a>
to auto-manage TLS certificates (optional)</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_nrpe">cd_nrpe</a> to
manage NRPE (optional)</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_stdlib">cd_stdlib</a>
or <a href="https://github.com/puppetlabs/puppetlabs-stdlib">puppetlabs
stdlib</a> to facilitate concat</p>
</li><li>
<p><a href="https://sourcecode.confdroid.com/12WW1160/cd_stdlib">cd_concat</a>
or <a href="https://github.com/puppetlabs/puppetlabs-concat">puppetlabs
concat</a> to concatenate configuration files from different sources.</p>
</li></ul>
<h2 id="label-Deployment">Deployment</h2>
<ul><li>
<p>native Puppet deployment</p>
</li></ul>
<p>via site.pp or nodes.pp</p>
<pre class="code ruby"><code class="ruby">node &#39;example.example.net&#39; {
include cd_nagios
}
</code></pre>
<ul><li>
<p>through Foreman:</p>
</li></ul>
<p>In order to apply parameters through Foreman,
<strong>cd_nagios::params</strong> must be added to the host or host group
in question.</p>
<p>See <a
href="https://confdroid.com/2017/05/deploying-our-puppet-modules/">more
details about class deployment on Confdroid.com</a>.</p>
<h2 id="label-PuppetDB">PuppetDB</h2>
<p>A working instance of PuppetDB connected to the Puppet master is required
for this to work. Installation and configuration of PuppetDB is out of
scope for this module, however <a
href="https://sourcecode.confdroid.com/12WW1160/cd_puppetdb">cd_puppetdb</a>
is available to automate this task for you as well within a few minutes.</p>
<h2 id="label-SELINUX">SELINUX</h2>
<p>All files and directories are configured with correct selinux context. If
selinux is disabled, these contexts are ignored.</p>
<h2 id="label-Certbot">Certbot</h2>
<p>This module can optionally setup <a
href="https://certbot.eff.org/">certbot</a> TLS certificate management for
the front-end GUI. In order to do so, set <code>$ng_enable_certbot</code>
as well as <code>$ng_use_https</code> to <code>true</code> (default).
Effectively, this will manage the certs before even installing Nagios, so
there will be no problems with the Nagios showing up with a self-signed
certificate. Once enabled, the module will go and try to obtain a
certificate automatically. For this to work, you need to have proper DNS
resolution set up for your domain / nagios server. Certs are also
automatically renewed.</p>
<p>If you prefer to use https but use self-signed certs or your own CA, simply
set to false. This will point the SSL vhost config file to the default
location for TLS certificates.</p>
<h2 id="label-httpd+vHost+files">httpd vHost files</h2>
<p>by default, Nagios creates its own <code>nagios.conf</code> file, which is
not a vhost file and relies on the main <code>ssl.conf</code>. However, as
Nagios might be running on a regular web server with various other web
instances (not recommended through for performance reasons), we do not want
to manage <code>ssl.conf</code> directly, hence the module creates a vhost
for the SSL host.</p>
<h2 id="label-Client+Connections">Client Connections</h2>
<p>In order to monitor clients, NAGIOS must be able to connect to them. There
are multiple ways of doing so, the most common ones being NRPE and SSH. So
far this module works through the usage of NRPE, which by default is
enabled. Class cd_nagios::client::nrpe configures <code>nrpe.cfg</code> and
opens the required firewall port on clients (optional,default).</p>
<h2 id="label-Known+Problems">Known Problems</h2>
<ul><li>
<p>Collected resources import ordering problem: The module might try to import
collected facts before nagios is even installed.</p>
</li></ul>
<h2 id="label-Support">Support</h2>
<ul><li>
<p>OS: CentOS 7</p>
</li><li>
<p>Puppet 5</p>
</li></ul>
<h2 id="label-Tests">Tests</h2>
<ul><li>
<p>Puppet Lint</p>
</li><li>
<p>excluded tests:</p>
<ul><li>
<p><code>--no-class_inherits_from_params_class-check</code>:relevant only to
non-supported outdated puppet versions</p>
</li><li>
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting
parameters from params class. the lint check does not distinguish between
facts and inherited parameters.</p>
</li><li>
<p><code>--no-80chars-check</code>: it is not always possible to stay within
80 characters, although typically only occurring on the parameter vault
<code>params.pp</code>.</p>
</li><li>
<p><code>--no-arrow_alignment-check</code>: this check leads to actually not
having am easily readable arrow alignment, as this checks <code>per
block</code>, not per class.</p>
</li></ul>
</li><li>
<p>Puppet Parser</p>
</li><li>
<p>ERB Template Parser</p>
</li><li>
<p>Test for unwanted UTF8 files in the Puppet code (see tests/UTF_Files)</p>
</li><li>
<p>Markdown-lint</p>
</li><li>
<p>Spellcheck</p>
</li><li>
<p>Sonar Quality Gate</p>
</li></ul>
<h2 id="label-Contact+Us">Contact Us</h2>
<p><a href="https://confdroid.com/contact/">contact Us</a></p>
<h2 id="label-Disclaimer">Disclaimer</h2>
<p>ConfDroid as entity is entirely independent from Puppet. We provide custom
configuration modules, written for specific purposes and specific
environments. The modules are tested and supported only as documented, and
require testing in designated environments (i.e. lab or development
environments) for parameter tuning etc. before deploying into production
environments.</p>
</div></div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

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

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

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

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

4
doc/js/jquery.js vendored Normal file

File diff suppressed because one or more lines are too long

236
doc/puppet_class_list.html Normal file
View File

@@ -0,0 +1,236 @@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8" />
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
<title>Puppet Class List</title>
<base id="base_target" target="_parent" />
</head>
<body>
<div id="content">
<div class="fixed_header">
<h1 id="full_list_header">Puppet Class List</h1>
<div id="full_list_nav">
<span><a target="_self" href="puppet_class_list.html">
Puppet Classes
</a></span>
<span><a target="_self" href="puppet_defined_type_list.html">
Defined Types
</a></span>
</div>
<div id="search">Search: <input type="text" /></div>
</div>
<ul id="full_list" class="puppet_class">
<li id="object_puppet_classes::cd_nagios" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios.html" title="puppet_classes::cd_nagios (puppet_class)">cd_nagios</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::certbot::certs" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Acertbot_3A_3Acerts.html" title="puppet_classes::cd_nagios::certbot::certs (puppet_class)">cd_nagios::certbot::certs</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::client::target" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aclient_3A_3Atarget.html" title="puppet_classes::cd_nagios::client::target (puppet_class)">cd_nagios::client::target</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::firewall::iptables" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::cd_nagios::firewall::iptables (puppet_class)">cd_nagios::firewall::iptables</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::main::config" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::cd_nagios::main::config (puppet_class)">cd_nagios::main::config</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::main::dirs" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Adirs.html" title="puppet_classes::cd_nagios::main::dirs (puppet_class)">cd_nagios::main::dirs</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::main::install" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::cd_nagios::main::install (puppet_class)">cd_nagios::main::install</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::main::user" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Amain_3A_3Auser.html" title="puppet_classes::cd_nagios::main::user (puppet_class)">cd_nagios::main::user</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::add_contact_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contact_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_contact_rules (puppet_class)">cd_nagios::nagios::objects::add_contact_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::add_contactgroups_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_contactgroups_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_contactgroups_rules (puppet_class)">cd_nagios::nagios::objects::add_contactgroups_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::add_hostgroup_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_hostgroup_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_hostgroup_rules (puppet_class)">cd_nagios::nagios::objects::add_hostgroup_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::add_servicegroup_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_servicegroup_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_servicegroup_rules (puppet_class)">cd_nagios::nagios::objects::add_servicegroup_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::add_timeperiod_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aadd_timeperiod_rules.html" title="puppet_classes::cd_nagios::nagios::objects::add_timeperiod_rules (puppet_class)">cd_nagios::nagios::objects::add_timeperiod_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::commands" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acommands.html" title="puppet_classes::cd_nagios::nagios::objects::commands (puppet_class)">cd_nagios::nagios::objects::commands</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::config" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aconfig.html" title="puppet_classes::cd_nagios::nagios::objects::config (puppet_class)">cd_nagios::nagios::objects::config</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::contactgroups" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontactgroups.html" title="puppet_classes::cd_nagios::nagios::objects::contactgroups (puppet_class)">cd_nagios::nagios::objects::contactgroups</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::contacts" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Acontacts.html" title="puppet_classes::cd_nagios::nagios::objects::contacts (puppet_class)">cd_nagios::nagios::objects::contacts</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::hostgroups" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Ahostgroups.html" title="puppet_classes::cd_nagios::nagios::objects::hostgroups (puppet_class)">cd_nagios::nagios::objects::hostgroups</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::servicegroups" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Aservicegroups.html" title="puppet_classes::cd_nagios::nagios::objects::servicegroups (puppet_class)">cd_nagios::nagios::objects::servicegroups</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::template_rules" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atemplate_rules.html" title="puppet_classes::cd_nagios::nagios::objects::template_rules (puppet_class)">cd_nagios::nagios::objects::template_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::objects::timeperiods" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aobjects_3A_3Atimeperiods.html" title="puppet_classes::cd_nagios::nagios::objects::timeperiods (puppet_class)">cd_nagios::nagios::objects::timeperiods</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::nagios::resources::resource" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Anagios_3A_3Aresources_3A_3Aresource.html" title="puppet_classes::cd_nagios::nagios::resources::resource (puppet_class)">cd_nagios::nagios::resources::resource</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::params" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::selinux::config" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aselinux_3A_3Aconfig.html" title="puppet_classes::cd_nagios::selinux::config (puppet_class)">cd_nagios::selinux::config</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::server::access_rules" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Aaccess_rules.html" title="puppet_classes::cd_nagios::server::access_rules (puppet_class)">cd_nagios::server::access_rules</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::server::files" class="even">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Afiles.html" title="puppet_classes::cd_nagios::server::files (puppet_class)">cd_nagios::server::files</a></span>
</div>
</li>
<li id="object_puppet_classes::cd_nagios::server::service" class="odd">
<div class="item">
<span class='object_link'><a href="puppet_classes/cd_nagios_3A_3Aserver_3A_3Aservice.html" title="puppet_classes::cd_nagios::server::service (puppet_class)">cd_nagios::server::service</a></span>
</div>
</li>
</ul>
</div>
</body>
</html>

View File

@@ -0,0 +1,137 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/init.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class initialises the cd_nagios Module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::init.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@confdroid.com) License: This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 2017 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
23
24
25</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/init.pp', line 23</span>
class cd_nagios {
include cd_nagios::params
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,230 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::certbot::certs
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::certbot::certs";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::certbot::certs</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::certbot::certs</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/certbot/certs.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages all configuration files required for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::certbot::certs.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/certbot/certs.pp', line 23</span>
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 { &#39;create_cert&#39;:
command =&gt; template($ng_get_cert_erb),
cwd =&gt; &#39;/tmp&#39;,
path =&gt; [&#39;/bin&#39;,&#39;/usr/bin&#39;],
provider =&gt; &#39;shell&#39;,
unless =&gt; template(&#39;cd_nagios/certbot/unless_get_cert.erb&#39;),
notify =&gt; Service[&#39;httpd&#39;],
creates =&gt; $ng_certbot_check,
}
# renew certs
exec { &#39;renew_cert&#39;:
command =&gt; &#39;certbot renew&#39;,
cwd =&gt; &#39;/tmp&#39;,
path =&gt; [&#39;/bin&#39;,&#39;/usr/bin&#39;,&#39;/opt/&#39;],
provider =&gt; &#39;shell&#39;,
notify =&gt; Service[&#39;httpd&#39;],
unless =&gt; template($ng_unless_renew_erb),
}
}
}
else {
# do nothing as we are not using https and certbot is not required then
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,382 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::client::target
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::client::target";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::client::target</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::client::target</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/client/target.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
CLass manages Nagios targets for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::client::target.pp Module name: nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com) License: This file is part of nagios.</p>
<p>nagios is used for providing automatic configuration of Nagios targets.
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/client/target.pp', line 23</span>
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 =&gt; $ng_ping_ensure,
alias =&gt; $::hostname,
address =&gt; $::fqdn,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_host,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; &#39;ops&#39;,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_user],
}
@@nagios_service { &quot;root_partition_${::hostname}&quot;:
ensure =&gt; $ng_disk_ensure,
check_command =&gt; &quot;check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_root_partition&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
if $ng_enable_swap_check == true {
@@nagios_service { &quot;Swap_Usage_${::hostname}&quot;:
ensure =&gt; $ng_swap_ensure,
check_command =&gt; &quot;check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_swap_usage&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
@@nagios_service { &quot;Local_Users_${::hostname}&quot;:
ensure =&gt; $ng_users_ensure,
check_command =&gt; &quot;check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_local_users&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Total Processes_${::hostname}&quot;:
ensure =&gt; $ng_procs_tot_ens,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_total_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Zombie Processes_${::hostname}&quot;:
ensure =&gt; $ng_procs_z_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_zombie_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Current_Load_${::hostname}&quot;:
ensure =&gt; $ng_load_ensure,
check_command =&gt; &quot;check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_current_load&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,204 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::firewall::iptables
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::firewall::iptables";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::firewall::iptables</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::firewall::iptables</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/firewall/iptables.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
manage firewall settings through cd_firewall or puppetlabs-firewall
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::firewall::iptables.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com) License: This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of &lt;service /
purpose&gt; Copyright (C) 2017 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/firewall/iptables.pp', line 24</span>
class cd_nagios::firewall::iptables (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
if $ng_use_https != true {
firewall { &quot;${ng_fw_order}${ng_http_port} port ${ng_http_port}&quot;:
proto =&gt; [&#39;tcp&#39;,&#39;udp&#39;],
dport =&gt; $ng_http_port,
action =&gt; &#39;accept&#39;,
}
}
if $ng_use_https == true {
firewall { &quot;${ng_fw_order}${ng_https_port} port ${ng_https_port}&quot;:
proto =&gt; [&#39;tcp&#39;,&#39;udp&#39;],
dport =&gt; $ng_https_port,
action =&gt; &#39;accept&#39;,
}
if $ng_http_https_fw == true {
firewall { &quot;${ng_fw_order}${ng_http_port} port ${ng_http_port}&quot;:
proto =&gt; [&#39;tcp&#39;,&#39;udp&#39;],
dport =&gt; $ng_http_port,
action =&gt; &#39;accept&#39;,
}
}
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,195 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::main::config
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::main::config";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::main::config</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::main::config</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/config.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages all aspects of configuring the module logic for
cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::main::config.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/config.pp', line 24</span>
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
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

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

View File

@@ -0,0 +1,213 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::main::install
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::main::install";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::main::install</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::main::install</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/install.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manage all aspects of installing binaries required for
cd_nagios
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::main::install.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios.
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/install.pp', line 24</span>
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&#39;ll need httpd installed
require cd_apache
package {$reqpackages_server:
ensure =&gt; $pkg_ensure,
}
package {$reqpackages_client:
ensure =&gt; $pkg_ensure,
}
}
# if we are not the nagios server, install client packages
if $::fqdn != $ng_nagios_server {
package {$reqpackages_client:
ensure =&gt; $pkg_ensure,
}
# if we want to use NRPE, install it
if $ng_include_nrpe == true {
require cd_nrpe
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,194 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::main::user
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::main::user";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::main::user</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::main::user</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/main/user.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages service users for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::main::user.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/main/user.pp', line 23</span>
class cd_nagios::main::user (
) inherits cd_nagios::params {
require cd_nagios::main::install
group { $ng_user:
ensure =&gt; present,
name =&gt; $ng_user,
gid =&gt; $ng_u_uid,
allowdupe =&gt; false,
}
user { $ng_user:
ensure =&gt; present,
name =&gt; $ng_user,
allowdupe =&gt; false,
comment =&gt; $ng_u_comment,
uid =&gt; $ng_u_uid,
gid =&gt; $ng_user,
groups =&gt; $ng_u_groups,
managehome =&gt; true,
home =&gt; $ng_user_home,
shell =&gt; $ng_user_shell,
require =&gt; Group[$ng_user],
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,217 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::add_contact_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::add_contact_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_contact_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::add_contact_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contact_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_add_contact.cfg through
concat.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_contact_rules.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>cd_nagios::nagios::objects::add_contact { &#39;example_user&#39;:</p>
</div></p>
<pre class="example code"><code>ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contact_rules.pp', line 30</span>
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 =&gt; present,
path =&gt; $ng_target_add_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;contact_header&#39;:
target =&gt; $ng_target_add_contact,
content =&gt; template($ng_contacts_head_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,215 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::add_contactgroups_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::add_contactgroups_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_contactgroups_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::add_contactgroups_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contactgroups_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_add_contactgroups.cfg file
and populates through define and external puppet rules
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_contactgroups_rules.pp Module name:
cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_contactgroups { &#39;example_group&#39;:
ng_contactgroup_name =&gt; &#39;example_group&#39;,
ng_contactgroup_alias =&gt; &#39;Example Group&#39;,
ng_contactgroup_register =&gt; &#39;1&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contactgroups_rules.pp', line 30</span>
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 =&gt; present,
path =&gt; $ng_tgt_contactgroup_add,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;contactgroups_header&#39;:
target =&gt; $ng_tgt_contactgroup_add,
content =&gt; template($ng_cntctgrps_head_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,214 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::add_hostgroup_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::add_hostgroup_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_hostgroup_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::add_hostgroup_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_hostgroup_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_hostgroups_add.cfg and
additional hostgroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_hostgroup_rules.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_hostgroup_rules.pp', line 29</span>
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 =&gt; present,
path =&gt; $ng_tgt_hostgroup_add,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;hostgroups_header&#39;:
target =&gt; $ng_tgt_hostgroup_add,
content =&gt; template($ng_tgt_hostgrp_head_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,214 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::add_servicegroup_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::add_servicegroup_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_servicegroup_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::add_servicegroup_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_servicegroup_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_servicegroups_add.cfg and
additional servicegroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_servicegroup_rules.pp Module name:
cd_nagios Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example Servicegroup&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_servicegroup_rules.pp', line 29</span>
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 =&gt; present,
path =&gt; $ng_tgt_servicegroup_add,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;servicegroups_header&#39;:
target =&gt; $ng_tgt_servicegroup_add,
content =&gt; template($ng_tgt_svcgrp_head_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,221 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::add_timeperiod_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::add_timeperiod_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_timeperiod_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::add_timeperiod_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_timeperiod_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios_conf.d/nagios_timeperiods_add.cfg and
add. hostgroups through external Puppet rules via define.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_timeperiod_rules.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/. }</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>cd_nagios::nagios::objects::add_timeperiods { &#39;example_timeperiod&#39;:</p>
</div></p>
<pre class="example code"><code>ng_timep_name =&gt; &#39;example_timeperiod&#39;,
ng_timep_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_timeperiod_rules.pp', line 35</span>
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 =&gt; present,
path =&gt; $ng_tgt_timep_add,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
# manage file header
concat::fragment { &#39;timeperiods_header&#39;:
target =&gt; $ng_tgt_timep_add,
content =&gt; template($ng_tgt_timep_head_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

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

View File

@@ -0,0 +1,182 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::config
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::config";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::config</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::config</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/config.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages the nagios objects definitions.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::server::nagios::objects::config.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/config.pp', line 23</span>
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
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,237 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::contactgroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::contactgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::contactgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::contactgroups</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/contactgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages base contactgroups which always should be there.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::contactgroups.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>@@nagios_contactgroup { &#39;admins&#39;:
ensure =&gt; present,
alias =&gt; &#39;Nagios Administrators&#39;,
contactgroup_name =&gt; &#39;admins&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/contactgroups.pp', line 34</span>
class cd_nagios::nagios::objects::contactgroups (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
@@nagios_contactgroup { &#39;admins&#39;:
ensure =&gt; present,
alias =&gt; &#39;Nagios Administrators&#39;,
contactgroup_name =&gt; &#39;admins&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}
@@nagios_contactgroup { &#39;operations&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations Team&#39;,
contactgroup_name =&gt; &#39;operations&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}
@@nagios_contactgroup { &#39;support&#39;:
ensure =&gt; present,
alias =&gt; &#39;Support Team&#39;,
contactgroup_name =&gt; &#39;support&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_contactgroup_base,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,280 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::contacts
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::contacts";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::contacts</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::contacts</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/contacts.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages basic contacts known to NAGIOS through Puppet exports,
and populates /etc/nagios/conf.d/nagios_base_contacts.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::contacts.pp Module name: cd_nagios Author: Arne
Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>@@nagios_contact { &#39;admin&#39;:
ensure =&gt; present,
alias =&gt; &#39;Nagios Admin&#39;,
contact_name =&gt; &#39;admin&#39;,
contactgroups =&gt; &#39;admins&#39;,
email =&gt; &quot;admin@${::domain}&quot;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;nagios&#39;,
mode =&gt; &#39;0664&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/contacts.pp', line 39</span>
class cd_nagios::nagios::objects::contacts (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
# admin contact
@@nagios_contact { &#39;admin&#39;:
ensure =&gt; present,
alias =&gt; &#39;Nagios Admin&#39;,
contact_name =&gt; &#39;admin&#39;,
contactgroups =&gt; &#39;admins&#39;,
email =&gt; &quot;admin@${::domain}&quot;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
# ops contact
@@nagios_contact { &#39;ops&#39;:
ensure =&gt; present,
alias =&gt; &#39;Operations&#39;,
contact_name =&gt; &#39;ops&#39;,
contactgroups =&gt; &#39;operations&#39;,
email =&gt; &quot;ops@${::domain}&quot;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
# support contact
@@nagios_contact { &#39;support&#39;:
ensure =&gt; present,
alias =&gt; &#39;support&#39;,
contact_name =&gt; &#39;support&#39;,
contactgroups =&gt; &#39;support&#39;,
email =&gt; &quot;support@${::domain}&quot;,
can_submit_commands =&gt; &#39;1&#39;,
register =&gt; &#39;1&#39;,
use =&gt; &#39;generic-contact&#39;,
target =&gt; $ng_target_base_contact,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,551 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::hostgroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::hostgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::hostgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::hostgroups</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/hostgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages basic hostgroups known to NAGIOS through Puppet
exports, and populates /etc/nagios/conf.d/nagios_base_hostgroups.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::hostgroups.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/hostgroups.pp', line 24</span>
class cd_nagios::nagios::objects::hostgroups (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
# linux servers
@@nagios_hostgroup { &#39;linux-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;linux-servers&#39;,
alias =&gt; &#39;Linux Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# RHEL servers
@@nagios_hostgroup { &#39;rhel-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;rhel-servers&#39;,
alias =&gt; &#39;RHEL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# CentOS servers
@@nagios_hostgroup { &#39;centos-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;centos-servers&#39;,
alias =&gt; &#39;CentOS Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# SuSE servers
@@nagios_hostgroup { &#39;suse-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;suse-servers&#39;,
alias =&gt; &#39;SuSE Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Unix servers
@@nagios_hostgroup { &#39;unix-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;unix-servers&#39;,
alias =&gt; &#39;Unix Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Solaris servers
@@nagios_hostgroup { &#39;solaris-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;solaris-servers&#39;,
alias =&gt; &#39;Solaris Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# AIX servers
@@nagios_hostgroup { &#39;aix-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;aix-servers&#39;,
alias =&gt; &#39;AIX Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Windows servers
@@nagios_hostgroup { &#39;windows-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;windows-servers&#39;,
alias =&gt; &#39;Windows Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Netware servers
@@nagios_hostgroup { &#39;netware-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;netware-servers&#39;,
alias =&gt; &#39;Netware Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# DB servers
@@nagios_hostgroup { &#39;db-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;db-servers&#39;,
alias =&gt; &#39;DB Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Oracle servers
@@nagios_hostgroup { &#39;oracle-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;oracle-servers&#39;,
alias =&gt; &#39;Oracle Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# MySQL servers
@@nagios_hostgroup { &#39;mysql-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;mysql-servers&#39;,
alias =&gt; &#39;MySQL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# MSSQL servers
@@nagios_hostgroup { &#39;mssql-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;mssql-servers&#39;,
alias =&gt; &#39;MSSQL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# NOSQL servers
@@nagios_hostgroup { &#39;nosql-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;nosql-servers&#39;,
alias =&gt; &#39;NOSQL Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
# Hadoop servers
@@nagios_hostgroup { &#39;hadoop-servers&#39;:
ensure =&gt; present,
hostgroup_name =&gt; &#39;hadoop-servers&#39;,
alias =&gt; &#39;HADOOP Servers&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_hostgroup_base,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,235 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::servicegroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::servicegroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::servicegroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::servicegroups</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/servicegroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages basic hostgroups known to NAGIOS through Puppet
exports, and populates /etc/nagios/conf.d/nagios_base_hostgroups.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::servicegroups.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/servicegroups.pp', line 24</span>
class cd_nagios::nagios::objects::servicegroups (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
# network services
@@nagios_servicegroup { &#39;network-services&#39;:
ensure =&gt; present,
servicegroup_name =&gt; &#39;network-services&#39;,
alias =&gt; &#39;Network Services&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_svcgrp_base,
}
# linux services
@@nagios_servicegroup { &#39;linux-services&#39;:
ensure =&gt; present,
servicegroup_name =&gt; &#39;linux-services&#39;,
alias =&gt; &#39;Linux Services&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_svcgrp_base,
}
# database services
@@nagios_servicegroup { &#39;database-services&#39;:
ensure =&gt; present,
servicegroup_name =&gt; &#39;database-services&#39;,
alias =&gt; &#39;Database Services&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_target_svcgrp_base,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,305 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::template_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::template_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::template_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::template_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/template_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages /etc/nagios/conf.d/nagios_templates.cfg through
concat.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::template_rules.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>cd_nagios::nagios::objects::templates { &#39;generic contact&#39;:</p>
</div></p>
<pre class="example code"><code>ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/template_rules.pp', line 28</span>
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 =&gt; present,
path =&gt; $ng_target_templates,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
concat::fragment { &#39;template_header&#39;:
target =&gt; $ng_target_templates,
content =&gt; template($ng_templates_head_erb),
order =&gt; &#39;000&#39;,
}
# basic templates
cd_nagios::nagios::objects::templates { &#39;generic contact&#39;:
ng_template_object =&gt; &#39;contact&#39;,
ng_template_object_name =&gt; &#39;generic-contact&#39;,
}
cd_nagios::nagios::objects::templates { &#39;generic-host&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-host&#39;,
}
cd_nagios::nagios::objects::templates { &#39;linux-server&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;linux-server&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
cd_nagios::nagios::objects::templates { &#39;windows-server&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;windows-server&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
cd_nagios::nagios::objects::templates { &#39;generic-switch&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-switch&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
cd_nagios::nagios::objects::templates { &#39;generic-printer&#39;:
ng_template_object =&gt; &#39;host&#39;,
ng_template_object_name =&gt; &#39;generic-printer&#39;,
ng_template_object_use =&gt; &#39;generic-host&#39;,
ng_notification_options =&gt; &#39;d,u,r&#39;,
}
cd_nagios::nagios::objects::templates { &#39;generic-service&#39;:
ng_template_object =&gt; &#39;service&#39;,
ng_template_object_name =&gt; &#39;generic-service&#39;,
ng_max_check_attempts =&gt; &#39;3&#39;,
ng_notification_options =&gt; &#39;w,u,c,r&#39;,
}
cd_nagios::nagios::objects::templates { &#39;local-service&#39;:
ng_template_object =&gt; &#39;service&#39;,
ng_template_object_name =&gt; &#39;local-service&#39;,
ng_max_check_attempts =&gt; &#39;4&#39;,
ng_template_object_use =&gt; &#39;generic-service&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,285 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::objects::timeperiods
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::objects::timeperiods";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::timeperiods</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::objects::timeperiods</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/timeperiods.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages main timeperiods for NAGIOS through Puppet exports,
and populates /etc/nagios/conf.d/nagios_timeperiods_base.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::timeperiods.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/timeperiods.pp', line 24</span>
class cd_nagios::nagios::objects::timeperiods (
) inherits cd_nagios::params {
if $::fqdn == $ng_nagios_server {
@@nagios_timeperiod { &#39;24x7&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;24x7&#39;,
alias =&gt; &#39;24 Hours A Day, 7 Days A Week&#39;,
monday =&gt; &#39;00:00-24:00&#39;,
tuesday =&gt; &#39;00:00-24:00&#39;,
wednesday =&gt; &#39;00:00-24:00&#39;,
thursday =&gt; &#39;00:00-24:00&#39;,
friday =&gt; &#39;00:00-24:00&#39;,
saturday =&gt; &#39;00:00-24:00&#39;,
sunday =&gt; &#39;00:00-24:00&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
@@nagios_timeperiod { &#39;office_hours&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;office_hours&#39;,
alias =&gt; &#39;Office hours only, 5 Days A Week 09-05&#39;,
monday =&gt; &#39;09:00-17:00&#39;,
tuesday =&gt; &#39;09:00-17:00&#39;,
wednesday =&gt; &#39;09:00-17:00&#39;,
thursday =&gt; &#39;09:00-17:00&#39;,
friday =&gt; &#39;09:00-17:00&#39;,
saturday =&gt; &#39;00:00-00:00&#39;,
sunday =&gt; &#39;00:00-00:00&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
@@nagios_timeperiod { &#39;out_of_hours&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;out_of_hours&#39;,
alias =&gt; &#39;Outside Office hours only&#39;,
monday =&gt; &#39;17:00-09:00&#39;,
tuesday =&gt; &#39;17:00-09:00&#39;,
wednesday =&gt; &#39;17:00-09:00&#39;,
thursday =&gt; &#39;17:00-09:00&#39;,
friday =&gt; &#39;17:00-09:00&#39;,
saturday =&gt; &#39;00:00-24:00&#39;,
sunday =&gt; &#39;00:00-24:00&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
@@nagios_timeperiod { &#39;none&#39;:
ensure =&gt; present,
timeperiod_name =&gt; &#39;none&#39;,
alias =&gt; &#39;No Time Is A Good Time&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
register =&gt; &#39;1&#39;,
target =&gt; $ng_tgt_timeperiods_base,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,234 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::nagios::resources::resource
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::nagios::resources::resource";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::nagios::resources::resource</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::nagios::resources::resource</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/resources/resource.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages the resource config file header.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::resources::resource.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/. }</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<p class="example_title"><div class='inline'>
<p>concat::fragment { “user_rule_plugins”:</p>
</div></p>
<pre class="example code"><code>ng_user_arg_name =&gt; &quot;$user1$&quot;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins&#39;,
ng_user_arg_comment =&gt; &quot;Sets $USER1$ to be the path to the plugins&quot;,</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/resources/resource.pp', line 28</span>
class cd_nagios::nagios::resources::resource (
) inherits cd_nagios::params {
if $fqdn == $ng_nagios_server {
concat { $ng_resource_file:
ensure =&gt; present,
owner =&gt; &#39;root&#39;,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
concat::fragment { &#39;header&#39;:
target =&gt; $ng_resource_file,
content =&gt; template($ng_resource_erb),
order =&gt; &#39;000&#39;,
}
# plugins rule
cd_nagios::nagios::resources::resource_df { &#39;user_rule_plugins&#39;:
ng_user_arg_name =&gt; &#39;USER1&#39;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins/&#39;,
ng_user_arg_comment =&gt; &#39;Sets user1 to be the path to the plugins&#39;,
}
# eventhandlers rule
cd_nagios::nagios::resources::resource_df { &#39;user_rule_eventhandlers&#39;:
ng_user_arg_name =&gt; &#39;USER2&#39;,
ng_user_arg_value =&gt; &#39;/usr/lib64/nagios/plugins/eventhandlers/&#39;,
ng_user_arg_comment =&gt; &#39;Sets user2 to be the path to the eventhandlers&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,416 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::selinux::config
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::selinux::config";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::selinux::config</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::selinux::config</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/selinux/config.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages all aspects of selinux for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::selinux::config.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/selinux/config.pp', line 23</span>
class cd_nagios::selinux::config (
) inherits cd_nagios::params {
if $ng_use_selinux_tools == true {
require cd_selinux
# it appears that selinux hehaves differently accross 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 { &#39;create_avc_list&#39;:
command =&gt; &#39;sealert -a /var/log/audit/audit.log &gt; avc_alerts&#39;,
cwd =&gt; $ng_user_home,
path =&gt; [&#39;/usr/bin&#39;],
creates =&gt; &quot;${ng_user_home}/avc_alerts&quot;,
}
# sealert tac-cgi
# exec { &#39;create_policy_taccgi&#39;:
# command =&gt; template($ng_taccgi_erb),
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# user =&gt; $ng_user,
# cwd =&gt; $ng_user_home,
# creates =&gt; &quot;${ng_user_home}/my-taccgi.pp&quot;,
# notify =&gt; Exec[&#39;semodule_taccgi&#39;],
# }
# exec { &#39;semodule_taccgi&#39;:
# command =&gt; &quot;semodule -i ${ng_user_home}/my-taccgi.pp&quot;,
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# user =&gt; $ng_user,
# cwd =&gt; $ng_user_home,
# require =&gt; Exec[&#39;create_policy_taccgi&#39;],
# refreshonly =&gt; true,
# }
# sealert status.cgi
# exec { &#39;create_policy_statuscgi&#39;:
# command =&gt; template($ng_statcgi_erb),
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# creates =&gt; &quot;${ng_user_home}/my-statuscgi.pp&quot;,
# notify =&gt; Exec[&#39;semodule_statuscgi&#39;],
# }
# exec { &#39;semodule_statuscgi&#39;:
# command =&gt; &#39;semodule -i my-statuscgi.pp&#39;,
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# require =&gt; Exec[&#39;create_policy_statuscgi&#39;],
# refreshonly =&gt; true,
# notify =&gt; Service[$ng_service],
# }
# sealert check_nrpe
# exec { &#39;create_policy_checknrpe&#39;:
# command =&gt; template($ng_checknrpe_erb),
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# creates =&gt; &quot;${ng_user_home}/my-checknrpe.pp&quot;,
# notify =&gt; Exec[&#39;semodule_checknrpe&#39;],
# }
# exec { &#39;semodule_checknrpe&#39;:
# command =&gt; &#39;semodule -i my-checknrpe.pp&#39;,
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# require =&gt; Exec[&#39;create_policy_checknrpe&#39;],
# refreshonly =&gt; true,
# notify =&gt; Service[$ng_service],
# }
# selart check_nagios
# exec { &#39;create_policy_checknagios&#39;:
# command =&gt; template($ng_checknagios_erb),
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# creates =&gt; &quot;${ng_user_home}/my-checknagios.pp&quot;,
# notify =&gt; Exec[&#39;semodule_checknagios&#39;],
# }
# exec { &#39;semodule_checknagios&#39;:
# command =&gt; &#39;semodule -i my-checknagios.pp&#39;,
# path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
# cwd =&gt; $ng_user_home,
# require =&gt; Exec[&#39;create_policy_checknagios&#39;],
# refreshonly =&gt; true,
# notify =&gt; Service[$ng_service],
# }
# sealert status.dat
exec { &#39;create_policy_statusdat&#39;:
command =&gt; template($ng_statdat_erb),
path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
user =&gt; $ng_user,
cwd =&gt; $ng_user_home,
creates =&gt; &quot;${ng_user_home}/my-http.pp&quot;,
notify =&gt; Exec[&#39;semodule_statusdat&#39;],
}
exec { &#39;semodule_statusdat&#39;:
command =&gt; &quot;semodule -i ${ng_user_home}/my-httpd.pp&quot;,
path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
user =&gt; $ng_user,
cwd =&gt; $ng_user_home,
require =&gt; Exec[&#39;create_policy_statusdat&#39;],
refreshonly =&gt; true,
notify =&gt; Service[$ng_service],
}
# sealert grep
exec { &#39;create_policy_grep&#39;:
command =&gt; template($ng_grep_erb),
path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
user =&gt; $ng_user,
cwd =&gt; $ng_user_home,
creates =&gt; &quot;${ng_user_home}/my-grep.pp&quot;,
notify =&gt; Exec[&#39;semodule_statusdat&#39;],
}
exec { &#39;semodule_grep&#39;:
command =&gt; &quot;semodule -i ${ng_user_home}/my-grep.pp&quot;,
path =&gt; [&#39;/usr/bin&#39;,&#39;/usr/sbin&#39;],
user =&gt; $ng_user,
cwd =&gt; $ng_user_home,
require =&gt; Exec[&#39;create_policy_grep&#39;],
refreshonly =&gt; true,
notify =&gt; Service[$ng_service],
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,195 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::server::access_rules
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::server::access_rules";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::server::access_rules</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::server::access_rules</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/access_rules.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages presennce of /etc/nagios/phtpasswd file.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::server::access_rules.pp Module name: cd_nagios Author: Arne
Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::server::access { &#39;example&#39;:
ng_htpasswd_user =&gt; &#39;example_user&#39;,
ng_htpasswd_password =&gt; &#39;example_password_encrypted&#39;,
}</code></pre>
</div>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/access_rules.pp', line 28</span>
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 =&gt; present,
path =&gt; $ng_htpasswd_file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;apache&#39;,
mode =&gt; &#39;0640&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
notify =&gt; Service[$ng_service],
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,332 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::server::files
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::server::files";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::server::files</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::server::files</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/files.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages all configuration files required for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::server::files.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/files.pp', line 23</span>
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 =&gt; file,
path =&gt; $ng_nagios_cfg_file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
content =&gt; template($ng_nagios_cfg_erb),
notify =&gt; Service[$ng_service],
}
# manage cgi.cfg
file { $ng_cgi_cfg_file:
ensure =&gt; file,
path =&gt; $ng_cgi_cfg_file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; nagios_etc_t,
seluser =&gt; system_u,
content =&gt; template($ng_cgi_cfg_erb),
notify =&gt; 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 =&gt; absent,
}
file { $ng_forward_conf:
ensure =&gt; file,
path =&gt; $ng_forward_conf,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; httpd_config_t,
seluser =&gt; system_u,
content =&gt; template($ng_forward_conf_erb),
notify =&gt; Service[$ae_service],
}
if $ng_use_https == true {
# create ssl vhost
file { $ng_ssl_vhost_file:
ensure =&gt; file,
path =&gt; $ng_ssl_vhost_file,
owner =&gt; &#39;root&#39;,
group =&gt; &#39;root&#39;,
mode =&gt; &#39;0644&#39;,
selrange =&gt; s0,
selrole =&gt; object_r,
seltype =&gt; httpd_config_t,
seluser =&gt; system_u,
content =&gt; template($ng_ssl_vhost_erb),
notify =&gt; Service[$ae_service],
}
}
if $ng_use_https != true {
# remove ssl_vhost
file { $ng_ssl_vhost_file:
ensure =&gt; absent,
}
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,534 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_nagios::server::service
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::cd_nagios::server::service";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_nagios::server::service</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_nagios::server::service</h1>
<div class="box_info">
<dl>
<dt>Inherits:</dt>
<dd><span class='object_link'><a href="cd_nagios_3A_3Aparams.html" title="puppet_classes::cd_nagios::params (puppet_class)">cd_nagios::params</a></span></dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/service.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class manages the service(s) for cd_nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::server::service.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/service.pp', line 23</span>
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 =&gt; running,
hasstatus =&gt; true,
hasrestart =&gt; true,
enable =&gt; true,
}
@@nagios_host { &#39;localhost&#39;:
ensure =&gt; $ng_ping_ensure,
alias =&gt; &#39;localhost&#39;,
address =&gt; &#39;127.0.0.1&#39;,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_localhost,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; &#39;ops&#39;,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_service],
}
@@nagios_service { &#39;check_nagios_localhost&#39;:
check_command =&gt; $ng_nagios_service_cmd,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; &#39;localhost&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &#39;localhost_nagios_service&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
contacts =&gt; &#39;ops&#39;,
}
@@nagios_host { $::fqdn:
ensure =&gt; $ng_ping_ensure,
alias =&gt; $::hostname,
address =&gt; $::fqdn,
use =&gt; &#39;linux-server&#39;,
target =&gt; $ng_target_host,
hostgroups =&gt; &#39;linux-servers&#39;,
contacts =&gt; &#39;ops&#39;,
max_check_attempts =&gt; $ng_max_check_attempts,
notification_period =&gt; &#39;24x7&#39;,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
check_command =&gt; &quot;check_ping!${ng_ping_warn}!${ng_ping_crit}&quot;,
notify =&gt; Service[$ng_user],
}
@@nagios_service { &quot;root_partition_${::hostname}&quot;:
ensure =&gt; $ng_disk_ensure,
check_command =&gt; &quot;check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_root_partition&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
if $ng_enable_swap_check == true {
@@nagios_service { &quot;Swap_Usage_${::hostname}&quot;:
ensure =&gt; $ng_swap_ensure,
check_command =&gt; &quot;check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_swap_usage&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
}
@@nagios_service { &quot;Local_Users_${::hostname}&quot;:
ensure =&gt; $ng_users_ensure,
check_command =&gt; &quot;check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_local_users&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Total Processes_${::hostname}&quot;:
ensure =&gt; $ng_procs_tot_ens,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_total_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Zombie Processes_${::hostname}&quot;:
ensure =&gt; $ng_procs_z_ensure,
check_command =&gt; &quot;check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_zombie_processes&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
@@nagios_service { &quot;Current_Load_${::hostname}&quot;:
ensure =&gt; $ng_load_ensure,
check_command =&gt; &quot;check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}&quot;,
use =&gt; &#39;generic-service&#39;,
host_name =&gt; $::fqdn,
contacts =&gt; &#39;ops&#39;,
notification_period =&gt; &#39;24x7&#39;,
service_description =&gt; &quot;${::hostname}_current_load&quot;,
servicegroups =&gt; &#39;linux-services&#39;,
target =&gt; $ng_target_service,
owner =&gt; $ng_user,
group =&gt; $ng_user,
mode =&gt; &#39;0640&#39;,
}
resources { [ &#39;nagios_host&#39;,
&#39;nagios_hostgroup&#39;,
&#39;nagios_hostdependency&#39;,
&#39;nagios_hostescalation&#39;,
&#39;nagios_hostextinfo&#39;,
&#39;nagios_service&#39;,
&#39;nagios_servicegroup&#39;,
&#39;nagios_servicedependency&#39;,
&#39;nagios_serviceescalation&#39;,
&#39;nagios_serviceextinfo&#39;,
&#39;nagios_contact&#39;,
&#39;nagios_contactgroup&#39;,
&#39;nagios_command&#39;,
&#39;nagios_timeperiod&#39; ]:
purge =&gt; true,
}
# collect resources and populate /etc/nagios/conf.d/nagios_*.cfg
Nagios_host &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostgroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostdependency &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostescalation &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_hostextinfo &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_service &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_servicegroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_servicedependency &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_serviceescalation &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_serviceextinfo &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_contact &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_contactgroup &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_command &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
Nagios_timeperiod &lt;&lt;||&gt;&gt; { notify =&gt; Service[&#39;nagios&#39;] }
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

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

View File

@@ -0,0 +1,285 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::add_contact
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::add_contact";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_contact</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::add_contact</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contact.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define manages additional contacts known to NAGIOS through external
Puppet rules, and populates /etc/nagios/conf.d/nagios_add_contact.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_contact.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_contact { &#39;example_user&#39;:
ng_contact_name =&gt; &#39;example_user&#39;,
ng_contact_alias =&gt; &#39;Example User&#39;,
ng_contact_groups =&gt; &#39;admins&#39;,
ng_contact_email =&gt; &#39;example@example.net&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_contact_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact short name.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_use</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;generic-contact&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which contact template to use</p>
</div>
</li>
<li>
<span class='name'>ng_contact_alias</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_contact_email</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the contact email address.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_groups</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specidy the contact group for the contact.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contact.pp', line 36</span>
define cd_nagios::nagios::objects::add_contact (
$ng_contact_name = undef,
$ng_contact_use = &#39;generic-contact&#39;,
$ng_contact_alias = undef,
$ng_contact_email = undef,
$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 =&gt; $ng_target_add_contact,
content =&gt; template($ng_contacts_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,234 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::add_contactgroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::add_contactgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_contactgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::add_contactgroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_contactgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define populates /etc/nagios/conf.d/nagios_add_contactgroups through
external puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_contactgroups.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_contactgroup_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the short name of the contact group.</p>
</div>
</li>
<li>
<span class='name'>ng_contactgroup_alias</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the alias (long name) of the contact group</p>
</div>
</li>
<li>
<span class='name'>ng_contactgroup_register</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify whether the contact group should be registered in Nagios.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_contactgroups.pp', line 30</span>
define cd_nagios::nagios::objects::add_contactgroups (
$ng_contactgroup_name = undef,
$ng_contactgroup_alias = undef,
$ng_contactgroup_register = &#39;1&#39;,
) {
$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 =&gt; $ng_tgt_contactgroup_add,
content =&gt; template($ng_cntctgrps_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,245 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::add_hostgroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::add_hostgroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_hostgroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::add_hostgroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_hostgroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_hostgroups_add through
extermal Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_hostgroups.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_hostgroups { &#39;example_hostgroup&#39;:
ng_hostgroup_name =&gt; &#39;example_hostgroup&#39;,
ng_hostgroup_alias =&gt; &#39;Example Hostgroup&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_hostgroup_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the hostgroup short name.</p>
</div>
</li>
<li>
<span class='name'>ng_hostgroup_alias</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the hostgroup alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_hostgroup_register</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to register the hostgroup.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_hostgroups.pp', line 32</span>
define cd_nagios::nagios::objects::add_hostgroups (
$ng_hostgroup_name = undef,
$ng_hostgroup_alias = undef,
$ng_hostgroup_register = &#39;1&#39;,
) {
$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 =&gt; $ng_tgt_hostgroup_add,
content =&gt; template($ng_tgt_hostgrp_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,243 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::add_servicegroups
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::add_servicegroups";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_servicegroups</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::add_servicegroups</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_servicegroups.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_servicegroups_add through
extermal Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_servicegroups.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_servicegroups { &#39;example_servicegroup&#39;:
ng_servicegroup_name =&gt; &#39;example_servicegroup&#39;,
ng_servicegroup_alias =&gt; &#39;Example servicegroup&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_servicegroup_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the servicegroup short name</p>
</div>
</li>
<li>
<span class='name'>ng_servicegroup_alias</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the servicegroup alias (long name).</p>
</div>
</li>
<li>
<span class='name'>ng_servicegroup_register</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether you want to register the servicegroup</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_servicegroups.pp', line 34</span>
define cd_nagios::nagios::objects::add_servicegroups (
$ng_servicegroup_name = undef,
$ng_servicegroup_alias = undef,
$ng_servicegroup_register = &#39;1&#39;,
) {
$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 =&gt; $ng_tgt_servicegroup_add,
content =&gt; template($ng_tgt_svcgrp_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,370 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::add_timeperiods
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::add_timeperiods";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::add_timeperiods</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::add_timeperiods</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/add_timeperiods.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define populates /etc/nagios/conf.d/nagios_timeperiods_add through
extermal Puppet rules.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::add_timeperiods.pp Module name: cd_nagios
Author: Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/</p>
</div>
</div>
<div class="tags">
<div class="examples">
<p class="tag_title">Examples:</p>
<pre class="example code"><code>cd_nagios::nagios::objects::add_timeperiods { &#39;example_timeperiod&#39;:
ng_timeperiod_name =&gt; &#39;example_timeperiod&#39;,
ng_timeperiod_alias =&gt; &#39;Example timeperiod&#39;,
ng_timep_monday =&gt; &#39;00:00-00:00&#39;,
ng_timep_tuesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_wednesday =&gt; &#39;00:00-00:00&#39;,
ng_timep_thursday =&gt; &#39;00:00-00:00&#39;,
ng_timep_friday =&gt; &#39;00:00-00:00&#39;,
ng_timep_saturday =&gt; &#39;00:00-00:00&#39;,
ng_timep_sunday =&gt; &#39;00:00-00:00&#39;,
}</code></pre>
</div>
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_timep_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the timeperiod short name.</p>
</div>
</li>
<li>
<span class='name'>ng_timep_alias</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the timeperiod alias (long name)</p>
</div>
</li>
<li>
<span class='name'>ng_timep_monday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Monday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_tuesday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Tuesday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_wednesday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Wednesday.</p>
</div>
</li>
<li>
<span class='name'>ng_timep_thursday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Thursday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_friday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Friday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_saturday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Saturday</p>
</div>
</li>
<li>
<span class='name'>ng_timep_sunday</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;00:00-00:00&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify the desired hours for Sunday.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/add_timeperiods.pp', line 45</span>
define cd_nagios::nagios::objects::add_timeperiods (
$ng_timep_name = undef,
$ng_timep_alias = undef,
$ng_timep_monday = &#39;00:00-00:00&#39;,
$ng_timep_tuesday = &#39;00:00-00:00&#39;,
$ng_timep_wednesday = &#39;00:00-00:00&#39;,
$ng_timep_thursday = &#39;00:00-00:00&#39;,
$ng_timep_friday = &#39;00:00-00:00&#39;,
$ng_timep_saturday = &#39;00:00-00:00&#39;,
$ng_timep_sunday = &#39;00:00-00:00&#39;,
) {
$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 =&gt; $ng_tgt_timep_add,
content =&gt; template($ng_tgt_timep_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,821 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::objects::templates
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::objects::templates";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::objects::templates</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::objects::templates</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/objects/templates.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define manages populates /etc/nagios/conf.d/templates.cfg.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::objects::templates.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.
notifications. for the defined service or host.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_template_object</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the object type for the templates. Valid options are <code>contact</code>,
<code>host</code> and <code>service</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_template_object_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>populates the name field, i.e. <code>generic-contact</code>,
<code>generic-host</code>, <code>generic-service</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_svc_notification_period</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Period in which to send out notifications for service events, i.e.
<code>24x7</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_period</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Period in which to send out notifications for host events , i.e.
<code>24x7</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_service_notification_options</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;w,u,c,r,f,s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>What service events to send out notifications for: w = notify on WARNING
service states, u = notify on UNKNOWN service states, c = notify on
CRITICAL service states, r = notify on service recoveries (OK states), f =
notify when the service starts and stops flapping. n = none (the contact
will not receive any type of service notifications).</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_options</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;d,u,r,f,s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>What host events to send out notifications for: d = notify on DOWN host
states, u = notify on UNREACHABLE host states, r = notify on host
recoveries (UP states), f = notify when the host starts and stops flapping,
s = notify when host or service scheduled downtime starts and ends. n =
none (the contact will not receive any type of host notifications).</p>
</div>
</li>
<li>
<span class='name'>ng_service_notification_commands</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;notify-service-by-email&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Command to use for service event notification. Command must be defined in
commands.cfg</p>
</div>
</li>
<li>
<span class='name'>ng_host_notification_commands</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;notify-host-by-email&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Command to use for host event notification. Command must be defined in
commands.cfg.</p>
</div>
</li>
<li>
<span class='name'>ng_object_register</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to register the object to Nagios. Since this is a template
definition, we do not want to register those.</p>
</div>
</li>
<li>
<span class='name'>ng_template_object_use</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>Which template to use for a given host or service definition, i.e.
<code>generic-host</code>, <code>generic-service</code> etc.</p>
</div>
</li>
<li>
<span class='name'>ng_notifications_enabled</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether notifications are enabled. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_event_handler_enabled</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether event handlers are enabled. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_flap_detection_enabled</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether flap detection is enabled. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_process_perf_data</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to process performance data. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_retain_status_information</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to retain status information. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_retain_nonstatus_information</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to retain non-status information. Valid options are <code>0</code>
and <code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_notification_period</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Which period in to send out</p>
</div>
</li>
<li>
<span class='name'>ng_notification_interval</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;30&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whoe often (in minutes) we should resend notifications for the current
status.</p>
</div>
</li>
<li>
<span class='name'>ng_check_period</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;24x7&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Which period in to run checks for the defined object.</p>
</div>
</li>
<li>
<span class='name'>ng_max_check_attempts</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;10&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>how often to check the defined object maximal.</p>
</div>
</li>
<li>
<span class='name'>ng_notification_options</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>see <code>ng_service_notification_options</code> and
<code>ng_host_notification_options</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_contact_groups</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;admins&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>contact groups for the defined oject. Specified contact group must exit in
contact_groups</p>
</div>
</li>
<li>
<span class='name'>ng_active_checks_enabled</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to enable active checks. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_passive_checks_enabled</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to enable passive checks. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_parallelize_check</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to parallelize checks Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_obsess_over_service</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to obsess over the service. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_check_freshness</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to check freshness. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_is_volatile</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether the service is volatile. Valid options are <code>0</code> and
<code>1</code>.</p>
</div>
</li>
<li>
<span class='name'>ng_check_interval</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;5&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>How often to check the service under normal conditions.</p>
</div>
</li>
<li>
<span class='name'>ng_retry_interval</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;1&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Re-check the service every x minutes until a hard state can be determined.</p>
</div>
</li>
<li>
<span class='name'>ng_host_check_command</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;check-host-alive&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the check command for host checks</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
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</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/objects/templates.pp', line 96</span>
define cd_nagios::nagios::objects::templates (
$ng_template_object = undef,
$ng_template_object_name = undef,
$ng_svc_notification_period = &#39;24x7&#39;,
$ng_host_notification_period = &#39;24x7&#39;,
$ng_service_notification_options = &#39;w,u,c,r,f,s&#39;,
$ng_host_notification_options = &#39;d,u,r,f,s&#39;,
$ng_service_notification_commands = &#39;notify-service-by-email&#39;,
$ng_host_notification_commands = &#39;notify-host-by-email&#39;,
$ng_object_register = &#39;0&#39;,
$ng_template_object_use = undef,
$ng_notifications_enabled = &#39;1&#39;,
$ng_event_handler_enabled = &#39;1&#39;,
$ng_flap_detection_enabled = &#39;1&#39;,
$ng_process_perf_data = &#39;1&#39;,
$ng_retain_status_information = &#39;1&#39;,
$ng_retain_nonstatus_information = &#39;1&#39;,
$ng_notification_period = &#39;24x7&#39;,
$ng_notification_interval = &#39;30&#39;,
$ng_check_period = &#39;24x7&#39;,
$ng_check_interval = &#39;5&#39;,
$ng_retry_interval = &#39;1&#39;,
$ng_max_check_attempts = &#39;10&#39;,
$ng_host_check_command = &#39;check-host-alive&#39;,
$ng_notification_options = undef,
$ng_contact_groups = &#39;admins&#39;,
$ng_active_checks_enabled = &#39;1&#39;,
$ng_passive_checks_enabled = &#39;1&#39;,
$ng_parallelize_check = &#39;1&#39;,
$ng_obsess_over_service = &#39;1&#39;,
$ng_check_freshness = &#39;0&#39;,
$ng_is_volatile = &#39;0&#39;,
) {
$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 =&gt; $ng_target_templates,
content =&gt; template($ng_templates_rule_erb),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,238 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::nagios::resources::resource_df
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::nagios::resources::resource_df";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::nagios::resources::resource_df</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::nagios::resources::resource_df</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/nagios/resources/resource_df.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
define manages the resources in/etc/nagios/private/resources.cfg
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::nagios::resources::resource_df.pp Module name: cd_nagios Author:
Arne Teuke (arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_user_arg_name</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the name of the user argument i.e. $user1$</p>
</div>
</li>
<li>
<span class='name'>ng_user_arg_value</span>
<span class='type'>(<tt>Any</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
</li>
<li>
<span class='name'>ng_user_arg_comment</span>
<span class='type'>(<tt>Any</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
</li>
<li>
<span class='name'>ng_resource_rule_erb</span>
<span class='type'>(<tt>Any</tt>)</span>
<em class="default">(defaults to: <tt>&#39;cd_nagios/nagios/resource_cfg_rule.erb&#39;</tt>)</em>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/nagios/resources/resource_df.pp', line 24</span>
define cd_nagios::nagios::resources::resource_df (
$ng_user_arg_name = undef,
$ng_user_arg_value = undef,
$ng_user_arg_comment = undef,
$ng_resource_rule_erb = &#39;cd_nagios/nagios/resource_cfg_rule.erb&#39;,
) {
$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 { &quot;rule_${name}&quot;:
target =&gt; $ng_resource_file,
content =&gt; template($ng_resource_rule_erb),
order =&gt; &#39;000&#39;,
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,219 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Defined Type: cd_nagios::server::access
&mdash; Documentation by YARD 0.9.26
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_defined_types::cd_nagios::server::access";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_defined_type_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Defined Types</span></span>
&raquo;
<span class="title">cd_nagios::server::access</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Defined Type: cd_nagios::server::access</h1>
<div class="box_info">
<dl>
<dt>Defined in:</dt>
<dd>
manifests/server/access.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Define manages user- and password rules for accessing nagios.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_nagios::server::access.pp Module name: cd_nagios Author: Arne Teuke
(arne_teuke@ConfDroid.com)</p>
<h1 id="label-License-3A">License:</h1>
<p>This file is part of cd_nagios.</p>
<p>cd_nagios is used for providing automatic configuration of Nagios
Copyright (C) 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.</p>
<p>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.</p>
<p>You should have received a copy of the GNU General Public License along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>ng_htpasswd_user</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>user name for the /etc/nagios/passwd file</p>
</div>
</li>
<li>
<span class='name'>ng_htpasswd_password</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the encrypted password for the /etc/nagios/passwd file.</p>
</div>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/server/access.pp', line 26</span>
define cd_nagios::server::access (
$ng_htpasswd_user = undef,
$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 =&gt; $ng_htpasswd_file,
content =&gt; template($ng_htpasswd_rule),
}
}
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>

View File

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