summaryrefslogtreecommitdiff
path: root/manifests/cron/base.pp
blob: 7b40da6ac3e185e61f7eb91f1b4109c9ff5dc3a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# manifests/cron/base.pp
class puppet::cron::base inherits puppet::base {

  case $operatingsystem {
    debian: { if $lsbdistcodename != 'lenny' { $stop_service = true } else { $stop_service = false }  }
    openbsd, ubuntu: { $stop_service = false }
    default: { $stop_service = true }
  }
        
  Service['puppet']{
    enable => false,
  }

  if $stop_service == true {
    $puppet_majorversion = regsubst($puppetversion,'^(\d+\.\d+).*$','\1')
    if $puppet_majorversion == '2.6' {  
      Service['puppet']{
        ensure => stopped,
      }
    } else {
      Service['puppet']{
        hasstatus => false,
        pattern => 'puppetd',
      }
      # this works only on < 2.6
      exec { 'stop_puppet':
        command => 'kill `cat /var/run/puppet/puppetd.pid`',
        onlyif => 'test -f /var/run/puppet/puppetd.pid',
        require => Service['puppet'],
      }
    }
  }
}