# manage pnp4nagios class nagios::pnp4nagios { include nagios::defaults::pnp4nagios package { [ 'pnp4nagios', 'pnp4nagios-web-config-nagios3']: ensure => installed, require => Package['nagios'] } # unfortunatly we can't use the nagios_host and nagios_service # definition to define templates, so we need to copy a file here. # see http://projects.reductivelabs.com/issues/1180 for this limitation file { 'pnp4nagios-templates.cfg': path => "${nagios::defaults::vars::int_cfgdir}/pnp4nagios-templates.cfg", source => [ 'puppet:///modules/site_nagios/pnp4nagios/pnp4nagios-templates.cfg', 'puppet:///modules/nagios/pnp4nagios/pnp4nagios-templates.cfg' ], mode => '0644', owner => root, group => root, notify => Service['nagios'], require => Package['nagios']; } file { 'apache.conf': path => '/etc/pnp4nagios/apache.conf', source => ['puppet:///modules/site_nagios/pnp4nagios/apache.conf', 'puppet:///modules/nagios/pnp4nagios/apache.conf' ], mode => '0644', owner => root, group => root, notify => Service['apache'], require => [ Package['apache2'], Package['pnp4nagios'] ], } # run npcd as daemon file { '/etc/default/npcd': path => '/etc/default/npcd', source => [ 'puppet:///modules/site_nagios/pnp4nagios/npcd', 'puppet:///modules/nagios/pnp4nagios/npcd' ], mode => '0644', owner => root, group => root, notify => Service['npcd'], require => [ Package['nagios'], Package['pnp4nagios'] ]; } service { 'npcd': ensure => running, enable => true, hasstatus => true, require => Package['pnp4nagios'], } # modify action.gif file { '/usr/share/nagios3/htdocs/images/action.gif': path => '/usr/share/nagios3/htdocs/images/action.gif', source => [ 'puppet:///modules/site_nagios/pnp4nagios/action.gif', 'puppet:///modules/nagios/pnp4nagios/action.gif' ], mode => '0644', owner => root, group => root, notify => Service['nagios'], require => Package['nagios']; } }