summaryrefslogtreecommitdiff
path: root/manifests/client.pp
diff options
context:
space:
mode:
authormh <mh@d66ca3ae-40d7-4aa7-90d4-87d79ca94279>2008-04-24 13:26:14 +0000
committermh <mh@d66ca3ae-40d7-4aa7-90d4-87d79ca94279>2008-04-24 13:26:14 +0000
commit9dca19736cd11ed42cfdb8aed30c8628b22231cb (patch)
treefddac14151d5157edc5dd6c1f51f3f82e834479e /manifests/client.pp
parentb1381333f577b0b4c6ff17a2cfff1abfa58c00e3 (diff)
merged with puzzle upstream
git-svn-id: https://svn/ipuppet/trunk/modules/munin@1254 d66ca3ae-40d7-4aa7-90d4-87d79ca94279
Diffstat (limited to 'manifests/client.pp')
-rw-r--r--manifests/client.pp168
1 files changed, 46 insertions, 122 deletions
diff --git a/manifests/client.pp b/manifests/client.pp
index 8181845..69e9f2e 100644
--- a/manifests/client.pp
+++ b/manifests/client.pp
@@ -11,47 +11,14 @@ class munin::client {
default => $munin_host
}
- case $operatingsystem {
- darwin: { include munin::client::darwin }
- debian: {
- include munin::client::debian
- include munin::plugins::debian
- }
- ubuntu: {
- info ( "Trying to configure Ubuntu's munin with Debian class" )
- include munin::client::debian
- include munin::plugins::debian
- }
- gentoo: {
- include munin::client::gentoo
- include munin::plugins::gentoo
- }
- centos: {
- include munin::client::centos
- include munin::plugins::centos
- }
- default: { fail ("Don't know how to handle munin on $operatingsystem") }
- }
-
- case $kernel {
- linux: {
- case $vserver {
- guest: { include munin::plugins::vserver }
- default: {
- include munin::plugins::linux
- }
- }
- }
- default: {
- err( "Don't know which munin plugins to install for $kernel" )
- }
- }
- case $virtual {
- physical: { include munin::plugins::physical }
- xen0: { include munin::plugins::dom0 }
- xenu: { include munin::plugins::domU }
+ case $operatingsystem {
+ darwin: { include munin::client::darwin }
+ debian: { include munin::client::debian }
+ ubuntu: { include munin::client::ubuntu }
+ centos: { include munin::client::centos }
+ gentoo: { include munin::client::gentoo }
+ default: { include munin::client::base }
}
-
}
define munin::register()
@@ -66,7 +33,7 @@ define munin::register()
@@file { "${NODESDIR}/${name}_${munin_port_real}":
ensure => present,
content => template("munin/defaultclient.erb"),
- tag => 'munin',
+ tag => 'munin',
}
}
@@ -75,12 +42,34 @@ define munin::register_snmp()
@@file { "munin_snmp_${name}": path => "${NODESDIR}/${name}",
ensure => present,
content => template("munin/snmpclient.erb"),
- tag => 'munin',
+ tag => 'munin',
}
}
-class munin::client::darwin
-{
+class munin::client::base {
+ package { "munin-node": ensure => installed }
+ service { "munin-node":
+ ensure => running,
+ hasstatus => true,
+ hasrestart => true,
+ require => Package[munin-node],
+ }
+ file {
+ "/etc/munin/":
+ ensure => directory,
+ mode => 0755, owner => root, group => 0;
+ "/etc/munin/munin-node.conf":
+ content => template("munin/munin-node.conf.$operatingsystem.$lsbdistrelease"),
+ mode => 0644, owner => root, group => 0,
+ # this has to be installed before the package, so the postinst can
+ # boot the munin-node without failure!
+ before => Package["munin-node"],
+ }
+ munin::register { $fqdn: }
+ include munin::plugins::base
+}
+
+class munin::client::darwin {
file { "/usr/share/snmp/snmpd.conf":
mode => 744,
content => template("munin/darwin_snmpd.conf.erb"),
@@ -102,95 +91,30 @@ class munin::client::darwin
munin::register_snmp { $fqdn: }
}
-class munin::client::debian
-{
- package { "munin-node": ensure => installed }
+class munin::client::debian inherits munin::client::base {
# the plugin will need that
package { "iproute": ensure => installed }
- file {
- "/etc/munin/":
- ensure => directory,
- mode => 0755, owner => root, group => 0;
- "/etc/munin/munin-node.conf":
- content => template("munin/munin-node.conf.${operatingsystem}.${lsbdistcodename}"),
- mode => 0644, owner => root, group => 0,
- # this has to be installed before the package, so the postinst can
- # boot the munin-node without failure!
- before => Package["munin-node"],
- notify => Service["munin-node"],
- }
-
- service { "munin-node":
- ensure => running,
+ Service["munin-node"]{
# sarge's munin-node init script has no status
hasstatus => $lsbdistcodename ? { sarge => false, default => true }
}
-
- munin::register { $fqdn: }
-
# workaround bug in munin_node_configure
- munin::plugin { "postfix_mailvolume": ensure => absent }
+ plugin { "postfix_mailvolume": ensure => absent }
+ include munin::plugins::debian
}
-class munin::client::gentoo
-{
- $acpi_available = "absent"
- package { 'munin-node':
- name => 'munin',
- ensure => present,
- category => $operatingsystem ? {
- gentoo => 'net-analyzer',
- default => '',
- },
- }
-
- file {
- "/etc/munin/":
- ensure => directory,
- mode => 0755, owner => root, group => 0;
- "/etc/munin/munin-node.conf":
- content => template("munin/munin-node.conf.Gentoo."),
- mode => 0644, owner => root, group => 0,
- # this has to be installed before the package, so the postinst can
- # boot the munin-node without failure!
- before => Package["munin-node"],
- # notify => Service["munin"],
- }
-
- service { "munin-node":
- ensure => running,
- }
-
- munin::register { $fqdn: }
-}
+class munin::client::ubuntu inherits munin::client::debian {}
-class munin::client::centos
-{
- package { 'munin-node':
- ensure => present,
+class munin::client::gentoo inherits munin::client::base {
+ Package['munin-node'] {
+ name => 'munin',
+ category => 'net-analyzer',
}
-
- file {
- "/etc/munin/":
- ensure => directory,
- mode => 0755, owner => root, group =>0;
- "/etc/munin/munin-node.conf":
- content => template("munin/munin-node.conf.CentOS."),
- mode => 0644, owner => root, group => 0,
- # this has to be installed before the package, so the postinst can
- # boot the munin-node without failure!
- before => Package["munin-node"],
- notify => Service["munin-node"],
- }
-
- service { "munin-node":
- ensure => running,
- }
-
- munin::register { $fqdn: }
-
+ include munin::plugins::gentoo
}
-
+class munin::client::centos inherits munin::client::base {
+ include munin::plugins::centos
+}