diff --git a/clarified/manifests/init.pp b/clarified/manifests/init.pp index f241c48..e5c7e7e 100644 --- a/clarified/manifests/init.pp +++ b/clarified/manifests/init.pp @@ -91,18 +91,16 @@ class clarified::recorder { owner => "root", group => "root", source => "puppet:///files/packages/${clarified_recorder_package}", - before => Exec["/usr/local/src/clarified-recorder-linux.sh"], + notify => Exec["rm -f /usr/local/probe"], } exec { "rm -f /usr/local/probe": path => "/bin:/usr/bin:/sbin:/usr/sbin", onlyif => "test -h /usr/local/probe", - subscribe => File["/usr/local/src/clarified-recorder-linux.sh"], before => Exec["/usr/local/src/clarified-recorder-linux.sh"], refreshonly => true, } exec { "/usr/local/src/clarified-recorder-linux.sh": creates => "/usr/local/probe", - notify => Service["clarified-probe"], } exec { "clarified-functions": @@ -133,6 +131,7 @@ class clarified::recorder { refreshonly => true, before => Service["clarified-probe"], } + service { "clarified-probe": enable => true, } @@ -174,10 +173,21 @@ class clarified::recorder { # collab => [ "collabname:PageName" ], # } # -define clarified::probe($interface="", $snaplen="65535", $keeptime="100GB", - $blocksize="1GB", $filter="", $remoteport="10000", - $collab=[], $probeopt="", $remoteopt="", - $probe=true, $remote=true) { +define clarified::probe( + $interface=undef, + $snaplen="65535", + $keeptime="100GB", + $blocksize="1GB", + $filter="", + $remoteport="10000", + $collab=[], + $probeopt="", + $remoteopt="", + $probe=true, + $remote=true +) { + + Class["clarified::recorder"] -> Clarified::Probe[$name] if $interface { $interface_real = $interface @@ -209,15 +219,16 @@ define clarified::probe($interface="", $snaplen="65535", $keeptime="100GB", } service { "probe-${name}": - ensure => $probe ? { + ensure => $probe ? { true => running, false => stopped, }, - provider => "base", - start => "/etc/clarified/probe.d/${name} start", - restart => "/etc/clarified/probe.d/${name} restart", - stop => "pkill -f /var/run/probe/${name}.pid", - status => "pgrep -f /var/run/probe/${name}.pid", + provider => "base", + start => "/etc/clarified/probe.d/${name} start", + restart => "/etc/clarified/probe.d/${name} restart", + stop => "pkill -f /var/run/probe/${name}.pid", + status => "pgrep -f /var/run/probe/${name}.pid", + subscribe => Exec["/usr/local/src/clarified-recorder-linux.sh"], } file { "/etc/clarified/remote.d/${name}": @@ -237,15 +248,17 @@ define clarified::probe($interface="", $snaplen="65535", $keeptime="100GB", } service { "remote-${name}": - ensure => $remote ? { + ensure => $remote ? { true => running, false => stopped, }, - provider => "base", - start => "/etc/clarified/remote.d/${name} start", - restart => "/etc/clarified/remote.d/${name} restart", - stop => "pkill -f /var/run/remote/${name}.pid", - status => "pgrep -f /var/run/remote/${name}.pid", + provider => "base", + start => "/etc/clarified/remote.d/${name} start", + restart => "/etc/clarified/remote.d/${name} restart", + stop => "pkill -f /var/run/remote/${name}.pid", + status => "pgrep -f /var/run/remote/${name}.pid", + require => Service["probe-${name}"], + subscribe => Exec["/usr/local/src/clarified-recorder-linux.sh"], } }