summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvarac <varacanero@zeromail.org>2013-01-26 22:36:52 +0100
committervarac <varacanero@zeromail.org>2013-01-26 22:36:52 +0100
commitec829830c0063ad6a7227770b8e1dd5f88387509 (patch)
treed70613f0ec67920b1d154671d9477289f9d1dacf
parent0853614480216262cc21bad8cd113780158231d8 (diff)
added $stored_config, possible to disable collection of exported resources
On masterless setups, this module would otherwise complain
-rw-r--r--manifests/apache.pp4
-rw-r--r--manifests/base.pp158
-rw-r--r--manifests/init.pp3
-rw-r--r--manifests/stored_config.pp19
4 files changed, 97 insertions, 87 deletions
diff --git a/manifests/apache.pp b/manifests/apache.pp
index a90d0ee..70f41ca 100644
--- a/manifests/apache.pp
+++ b/manifests/apache.pp
@@ -1,13 +1,15 @@
class nagios::apache(
$allow_external_cmd = false,
$manage_shorewall = false,
- $manage_munin = false
+ $manage_munin = false,
+ $stored_config = true
) {
class{'nagios':
httpd => 'apache',
allow_external_cmd => $allow_external_cmd,
manage_munin => $manage_munin,
manage_shorewall => $manage_shorewall,
+ stored_config => $stored_config
}
case $::operatingsystem {
diff --git a/manifests/base.pp b/manifests/base.pp
index 5a1f3a1..3a0765a 100644
--- a/manifests/base.pp
+++ b/manifests/base.pp
@@ -75,91 +75,79 @@ class nagios::base {
mode => '0750', owner => root, group => nagios,
require => Package['nagios'],
}
- Nagios_command <<||>>
- Nagios_contactgroup <<||>>
- Nagios_contact <<||>>
- Nagios_hostdependency <<||>>
- Nagios_hostescalation <<||>>
- Nagios_hostextinfo <<||>>
- Nagios_hostgroup <<||>>
- Nagios_host <<||>>
- Nagios_servicedependency <<||>>
- Nagios_serviceescalation <<||>>
- Nagios_servicegroup <<||>>
- Nagios_serviceextinfo <<||>>
- Nagios_service <<||>>
- Nagios_timeperiod <<||>>
-
- Nagios_command <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_command.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_contact <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_contact.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_contactgroup <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_contactgroup.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_host <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_host.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_hostdependency <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostdependency.cfg",
- notify => Service['nagios'],
- require => Package['nagios'],
- }
- Nagios_hostescalation <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostescalation.cfg",
- notify => Service['nagios'],
- require => Package['nagios'],
- }
- Nagios_hostextinfo <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostextinfo.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_hostgroup <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostgroup.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_service <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_service.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_servicegroup <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_servicegroup.cfg",
- notify => Service['nagios'],
- require => Package['nagios'],
- }
- Nagios_servicedependency <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_servicedependency.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_serviceescalation <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_serviceescalation.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_serviceextinfo <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_serviceextinfo.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
- Nagios_timeperiod <||> {
- target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_timeperiod.cfg",
- require => [ File['nagios_confd'], Package['nagios'] ],
- notify => Service['nagios'],
- }
+ if ( $nagios::stored_config == true ) {
+ include nagios::stored_config
+ }
+ Nagios_command <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_command.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_contact <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_contact.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_contactgroup <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_contactgroup.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_host <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_host.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_hostdependency <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostdependency.cfg",
+ notify => Service['nagios'],
+ require => Package['nagios'],
+ }
+ Nagios_hostescalation <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostescalation.cfg",
+ notify => Service['nagios'],
+ require => Package['nagios'],
+ }
+ Nagios_hostextinfo <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostextinfo.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_hostgroup <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_hostgroup.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_service <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_service.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_servicegroup <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_servicegroup.cfg",
+ notify => Service['nagios'],
+ require => Package['nagios'],
+ }
+ Nagios_servicedependency <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_servicedependency.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_serviceescalation <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_serviceescalation.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_serviceextinfo <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_serviceextinfo.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
+ Nagios_timeperiod <||> {
+ target => "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_timeperiod.cfg",
+ require => [ File['nagios_confd'], Package['nagios'] ],
+ notify => Service['nagios'],
+ }
file{[ "${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_command.cfg",
"${nagios::defaults::vars::int_cfgdir}/conf.d/nagios_contact.cfg",
diff --git a/manifests/init.pp b/manifests/init.pp
index 5cbd3f3..1221950 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -19,7 +19,8 @@ class nagios(
$httpd = 'apache',
$allow_external_cmd = false,
$manage_shorewall = false,
- $manage_munin = false
+ $manage_munin = false,
+ $stored_config = true
) {
case $nagios::httpd {
'absent': { }
diff --git a/manifests/stored_config.pp b/manifests/stored_config.pp
new file mode 100644
index 0000000..5afda04
--- /dev/null
+++ b/manifests/stored_config.pp
@@ -0,0 +1,19 @@
+class nagios::stored_config {
+ # collect exported resources
+
+ Nagios_command <<||>>
+ Nagios_contactgroup <<||>>
+ Nagios_contact <<||>>
+ Nagios_hostdependency <<||>>
+ Nagios_hostescalation <<||>>
+ Nagios_hostextinfo <<||>>
+ Nagios_hostgroup <<||>>
+ Nagios_host <<||>>
+ Nagios_servicedependency <<||>>
+ Nagios_serviceescalation <<||>>
+ Nagios_servicegroup <<||>>
+ Nagios_serviceextinfo <<||>>
+ Nagios_service <<||>>
+ Nagios_timeperiod <<||>>
+
+}