summaryrefslogtreecommitdiff
path: root/manifests/client.pp
diff options
context:
space:
mode:
authorMarcel Haerry <haerry@puzzle.ch>2009-04-15 12:00:48 +0200
committermh <mh@immerda.ch>2009-06-02 11:46:59 +0200
commit6465fd8dca9cf73c625109e1ea78fb53f2d56d50 (patch)
tree6753d0599708b0d7c2bbd9a7e04cf4dd8f80a5db /manifests/client.pp
parentcf52fd778bbd7c30ad445c4ff4b1014796b0804e (diff)
finally implemented snmp client
Diffstat (limited to 'manifests/client.pp')
-rw-r--r--manifests/client.pp26
1 files changed, 20 insertions, 6 deletions
diff --git a/manifests/client.pp b/manifests/client.pp
index c59369b..9524edf 100644
--- a/manifests/client.pp
+++ b/manifests/client.pp
@@ -38,13 +38,27 @@ define munin::register()
}
}
-define munin::register_snmp()
+# snmp_testplugin: the plugin we use to test if it's set
+define munin::register_snmp(
+ $snmpd_testplugin = 'load'
+)
{
- @@file { "munin_snmp_${name}": path => "${NODESDIR}/${name}",
- ensure => present,
- content => template("munin/snmpclient.erb"),
- tag => 'munin',
- }
+ $munin_port_real = $munin_port ? { '' => 4949, default => $munin_port }
+ $munin_host_real = $munin_host ? {
+ '' => '*',
+ 'fqdn' => '*',
+ default => $munin_host
+ }
+ exec{"register_snmp_munin_for_${name}":
+ command => "munin-node-configure-snmp ${name} | sh",
+ unless => "test -e /etc/munin/plugins/snmp_${name}_${snmpd_testplugin}",
+ }
+ @@file { "munin_snmp_${name}": path => "${NODESDIR}/${name}",
+ ensure => present,
+ content => template("munin/snmpclient.erb"),
+ require => Exec["register_snmp_munin_for_${name}"],
+ tag => 'munin',
+ }
}
class munin::client::base {