Gitlab Community Edition Instance

Skip to content
Snippets Groups Projects
puppet_agent.pp 1.57 KiB
Newer Older
  • Learn to ignore specific revisions
  • # puppet agent auf cron umstellen
    
    class ubuntu_server::puppet_agent($nightly_only=false,$on_reboot_once=true){
    
    
        $puppet_cron_time = fqdn_rand(28,'puppet_cron_time') + 1
    
        $puppet_cron_time_plus_30 = $puppet_cron_time + 30
    
    
        File{
            owner => root,
            group => root,
            mode => 644,
        }
    
    
        if $nightly_only == true {
    
            file{'/etc/cron.d/puppet-cron':
    
                ensure  => present,
    
                content => "${puppet_cron_time},${puppet_cron_time_plus_30} 2-5/1 * * * root puppet agent --onetime --no-daemonize --logdest syslog\n",
    
            } -> Service['puppet']
        } else {
            file{'/etc/cron.d/puppet-cron':
    
                ensure  => present,
    
                content => "${puppet_cron_time},${puppet_cron_time_plus_30} * * * * root puppet agent --onetime --no-daemonize --logdest syslog\n",
    
            } -> Service['puppet']
        }
    
    
        if $on_reboot_once == true {
    
            file{'/etc/cron.d/puppet-cron-reboot':
    
                ensure  => present,
    
                content => "@reboot root sleep 3m ; puppet agent --onetime --no-daemonize --logdest syslog\n",
            } -> Service['puppet']
        }
    
    
        file{'/etc/rsyslog.d/31-puppet-agent.conf':
            ensure => present,
    
            source => 'puppet:///modules/ubuntu_server/etc/rsyslog.d/31-puppet-agent.conf',
    
        } ~> Service['rsyslog']
    
    
        file{'/etc/logrotate.d/puppet-agent':
            ensure => present,
    
            source => 'puppet:///modules/ubuntu_server/etc/logrotate.d/puppet-agent',
    
        service{'rsyslog':
            ensure => running,
        }
    
    
        service{'puppet':
            ensure => stopped,
            enable => false,
        }
    
    }