diff --git a/README b/README index a84b510..88eef47 100644 --- a/README +++ b/README @@ -186,12 +186,24 @@ apt::cron::download This class sets up cron-apt so that it downloads upgradable packages, does not actually do any upgrade and emails when the output changes. +cron-apt defaults to run at 4 AM. You may want to set the +$apt_cron_hours variable before you include the class: its value will +be passed as the "hours" parameter of a cronjob. Example: + + # Run cron-apt every three hours + $apt_cron_hours = "*/3" + +Note that the default 4 AM cronjob won't be disabled. + apt::cron::dist-upgrade ----------------------- This class sets up cron-apt so that it dist-upgrades the system and emails when upgrades are performed. +See apt::cron::download above if you need to run cron-apt more often +than once a day. + apt::dselect ------------ diff --git a/manifests/cron/base.pp b/manifests/cron/base.pp index de55772..7ccfce6 100644 --- a/manifests/cron/base.pp +++ b/manifests/cron/base.pp @@ -1,4 +1,20 @@ class apt::cron::base { package { cron-apt: ensure => installed } + + case $apt_cron_hours { + '': {} + default: { + # cron-apt defaults to run every night at 4 o'clock + # so we try not to run at the same time. + cron { 'apt_cron_every_N_hours': + command => 'test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt', + user => root, + hour => "${apt_cron_hours}", + minute => 10, + require => Package['cron-apt'], + } + } + } + }