summaryrefslogtreecommitdiff
path: root/puppet/modules/check_mk/manifests/agent/config.pp
diff options
context:
space:
mode:
authorMicah <micah@leap.se>2016-07-12 16:46:32 -0400
committerMicah <micah@leap.se>2016-07-12 16:46:32 -0400
commit56a771a3008d10720dd05fd815aeafbacdd1e08e (patch)
tree4b96fc087072834759eafd6949391de73ac43737 /puppet/modules/check_mk/manifests/agent/config.pp
parenta75fea409bf8e62e55ba341672c202aab5fa480e (diff)
git subrepo clone https://leap.se/git/puppet_check_mk puppet/modules/check_mk
subrepo: subdir: "puppet/modules/check_mk" merged: "aa02571" upstream: origin: "https://leap.se/git/puppet_check_mk" branch: "master" commit: "aa02571" git-subrepo: version: "0.3.0" origin: "https://github.com/ingydotnet/git-subrepo" commit: "1e79595" Change-Id: I6cb060eb80966dd6ae346f7a8105289caa9ccbaf
Diffstat (limited to 'puppet/modules/check_mk/manifests/agent/config.pp')
-rw-r--r--puppet/modules/check_mk/manifests/agent/config.pp59
1 files changed, 59 insertions, 0 deletions
diff --git a/puppet/modules/check_mk/manifests/agent/config.pp b/puppet/modules/check_mk/manifests/agent/config.pp
new file mode 100644
index 00000000..8ee5f185
--- /dev/null
+++ b/puppet/modules/check_mk/manifests/agent/config.pp
@@ -0,0 +1,59 @@
+class check_mk::agent::config (
+ $ip_whitelist = '',
+ $port,
+ $server_dir,
+ $keydir,
+ $authdir,
+ $authfile = undef,
+ $use_cache,
+ $user,
+ $method = 'xinetd',
+ $generate_sshkey = false,
+ $sshuser = undef,
+ $hostname = $::fqdn
+) {
+ if $use_cache {
+ $server = "${server_dir}/check_mk_caching_agent"
+ } else {
+ $server = "${server_dir}/check_mk_agent"
+ }
+
+ case $method {
+ 'xinetd': {
+ if $ip_whitelist {
+ $only_from = join($ip_whitelist, ' ')
+ } else {
+ $only_from = undef
+ }
+
+ file { '/etc/xinetd.d/check_mk':
+ ensure => present,
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ content => template('check_mk/agent/check_mk.erb'),
+ require => Package['check_mk-agent','check_mk-agent-logwatch'],
+ notify => Class['check_mk::agent::service'],
+ }
+ }
+
+ 'ssh': {
+ if $generate_sshkey {
+ check_mk::agent::generate_sshkey { "check_mk_key_${hostname}":
+ keydir => $keydir,
+ authdir => $authdir,
+ authfile => $authfile,
+ sshuser => $sshuser,
+ hostname => $hostname
+ }
+ }
+
+ # make sure the xinetd method is not configured
+ file { '/etc/xinetd.d/check_mk':
+ ensure => absent;
+ }
+ }
+
+ default : {}
+ }
+}