# # example: # cronapt::mailon-mailto { dist: # mailon => "upgrade", # mailto => "seguridad@localhost" # } define cronapt::mailon-mailto ( $mailon, $mailto ) { include cronapt # the following file needs to have the same name as the action conf file. file { "/etc/cron-apt/config.d/4-upgrade": ensure => "present", content => "MAILON=\"$mailon\"\nMAILTO=\"$mailto\"\n", require => Package["cron-apt"] } } class cronapt { package { "cron-apt": ensure => installed } file { "/etc/cron-apt/action.d/3-download": ensure => absent, require => Package["cron-apt"] } file { "/etc/cron-apt/action.d/4-upgrade": ensure => "present", content => "upgrade -y -o APT::Get::Show-Upgraded=true\n", require => Package["cron-apt"] } file { "/etc/cron-apt/action.d/5-clean": ensure => "present", content => "autoclean -y -q -q\n", require => Package["cron-apt"] } file { "/etc/cron.d/cron-apt": content => "# cron-apt cron job, managed by puppet\n0 8 * * * root test -x /usr/sbin/cron-apt && /usr/sbin/cron-apt\n", ensure => present, require => Package['cron-apt'] } }