1 # Class: apt::unattended_upgrades
3 # This class manages the unattended-upgrades package and related configuration
6 # origins are the repositories to automatically upgrade included packages
7 # blacklist is a list of packages to not automatically upgrade
8 # update is how often to run "apt-get update" in days
9 # download is how often to run "apt-get upgrade --download-only" in days
10 # upgrade is how often to upgrade packages included in the origins list in days
11 # autoclean is how often to run "apt-get autoclean" in days
13 # information on the other options can be found in the 50unattended-upgrades
14 # file and in /etc/cron.daily/apt
16 class apt::unattended_upgrades (
17 $legacy_origin = $::apt::params::legacy_origin,
18 $origins = $::apt::params::origins,
25 $minimal_steps = false,
26 $install_on_shutdown = false,
28 $mail_only_on_error = false,
29 $remove_unused = true,
34 $backup_interval = '0',
39 $download_delta = '0',
41 ) inherits ::apt::params {
52 validate_array($origins)
55 unless is_numeric($randomsleep) {
56 fail('randomsleep must be numeric')
60 package { 'unattended-upgrades':
64 file { '/etc/apt/apt.conf.d/50unattended-upgrades':
69 content => template('apt/_header.erb', 'apt/50unattended-upgrades.erb'),
70 require => Package['unattended-upgrades'],
73 file { '/etc/apt/apt.conf.d/10periodic':
78 content => template('apt/_header.erb', 'apt/10periodic.erb'),
79 require => Package['unattended-upgrades'],