summaryrefslogtreecommitdiff
path: root/manifests/agent.pp
diff options
context:
space:
mode:
authorKeith Burdis <keith@burdis.org>2013-02-08 14:40:28 +0000
committerKeith Burdis <keith@burdis.org>2013-02-08 14:40:28 +0000
commit3401c1162efe67b90bcf755daa5ee2d90876b5d9 (patch)
tree7219f0ea6d734985554be9d78f158c97329b891e /manifests/agent.pp
parent1cb0872bdc363c7f2181908647d25b78a9a1064a (diff)
Use the default system repository by default. Restructured agent configs to be cleaner and more maintainable.
Diffstat (limited to 'manifests/agent.pp')
-rw-r--r--manifests/agent.pp83
1 files changed, 15 insertions, 68 deletions
diff --git a/manifests/agent.pp b/manifests/agent.pp
index 2ce6bb8..8ed872a 100644
--- a/manifests/agent.pp
+++ b/manifests/agent.pp
@@ -1,78 +1,25 @@
class check_mk::agent (
- $version,
- $filestore = 'puppet:///files/check_mk',
+ $filestore = undef,
$ip_whitelist = undef,
$port = '6556',
$server_dir = '/usr/bin',
$use_cache = false,
$user = 'root',
+ $version = undef,
$workspace = '/root/check_mk',
) {
- if ! defined(Package['xinetd']) {
- package { 'xinetd':
- ensure => present,
- }
- }
- if ! defined(File[$workspace]) {
- file { $workspace:
- ensure => directory,
- }
- }
- file { "${workspace}/check_mk-agent-${version}.noarch.rpm":
- ensure => present,
- source => "${filestore}/check_mk-agent-${version}.noarch.rpm",
- require => Package['xinetd'],
- }
- file { "${workspace}/check_mk-agent-logwatch-${version}.noarch.rpm":
- ensure => present,
- source => "${filestore}/check_mk-agent-logwatch-${version}.noarch.rpm",
- require => Package['xinetd'],
- }
- package { 'check_mk-agent':
- ensure => present,
- provider => 'rpm',
- source => "${workspace}/check_mk-agent-${version}.noarch.rpm",
- require => File["${workspace}/check_mk-agent-${version}.noarch.rpm"],
- }
- package { 'check_mk-agent-logwatch':
- ensure => present,
- provider => 'rpm',
- source => "${workspace}/check_mk-agent-logwatch-${version}.noarch.rpm",
- require => [
- File["${workspace}/check_mk-agent-logwatch-${version}.noarch.rpm"],
- Package['check_mk-agent'],
- ],
- }
- if $use_cache {
- $server = "${server_dir}/check_mk_caching_agent"
- }
- else {
- $server = "${server_dir}/check_mk_agent"
- }
- 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 => Service['xinetd'],
- }
- if ! defined(Service['xinetd']) {
- service { 'xinetd':
- ensure => 'running',
- enable => true,
- }
- }
- exec { 'check_mk-refresh-inventory':
- command => '/usr/bin/cmk -I',
- schedule => 'daily',
- }
+ class check_mk::agent::install {
+ version => $version,
+ filestore => $filestore,
+ workspace => $workspace,
+ }
+ class check_mk::agent::config {
+ ip_whitelist => $ip_whitelist,
+ port => $port,
+ use_cache => $use_cache,
+ user => $user,
+ require => Class['check_mk::agent::install'],
+ }
+ include check_mk::agent::service
@@check_mk::host { $::fqdn: }
}