summaryrefslogtreecommitdiff
path: root/puppet/modules/nagios/manifests/init.pp
blob: e3421a0aabcfd8d13cf364fab2d3feb14dc92d25 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#
# nagios module
# nagios.pp - everything nagios related
#
# Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at>
# Copyright 2008, admin(at)immerda.ch
# Copyright 2008, Puzzle ITC GmbH
# Marcel Haerry haerry+puppet(at)puzzle.ch
# Simon Josi josi+puppet(at)puzzle.ch
#
# This program is free software; you can redistribute
# it and/or modify it under the terms of the GNU
# General Public License version 3 as published by
# the Free Software Foundation.
#

# manage nagios
class nagios(
  $httpd              = 'apache',
  $allow_external_cmd = false,
  $manage_shorewall   = false,
  $manage_munin       = false,
  $service_atboot     = true,
  $purge_resources    = true,
  $gpgkey_checks      = {},
  $storeconfigs       = true
) {
  case $nagios::httpd {
    'absent': { }
    'lighttpd': { include ::lighttpd }
    'apache': {
      include ::apache
      if $::operatingsystem == 'Debian' {
        include ::nagios::debian::apache
      }
    }
    default: { include ::apache }
  }
  case $::operatingsystem {
    'centos': {
      $cfgdir = '/etc/nagios'
      include ::nagios::centos
    }
    'debian': {
      $cfgdir = '/etc/nagios3'
      include ::nagios::debian
    }
    default: {
      fail("No such operatingsystem: ${::operatingsystem} yet defined")
    }
  }
  if $manage_munin {
    include ::nagios::munin
  }
  create_resources('nagios::service::gpgkey',$gpgkey_checks)
}