unattended_upgrades: Allow changing legacy_origin
[puppet-modules/puppetlabs-apt.git] / manifests / unattended_upgrades.pp
index 7e3ccc44b07637ee1a21d86b88f68a7eb03d516d..028ffc647c0ba74dbcdc6d2d4c258d70eab3f211 100644 (file)
@@ -14,6 +14,7 @@
 # file and in /etc/cron.daily/apt
 #
 class apt::unattended_upgrades (
+  $legacy_origin       = $::apt::params::legacy_origin,
   $origins             = $::apt::params::origins,
   $blacklist           = [],
   $update              = '1',
@@ -28,6 +29,7 @@ class apt::unattended_upgrades (
   $remove_unused       = true,
   $auto_reboot         = false,
   $dl_limit            = 'NONE',
+  $randomsleep         = undef,
   $enable              = '1',
   $backup_interval     = '0',
   $backup_level        = '3',
@@ -39,6 +41,7 @@ class apt::unattended_upgrades (
 ) inherits ::apt::params {
 
   validate_bool(
+    $legacy_origin,
     $auto_fix,
     $minimal_steps,
     $install_on_shutdown,
@@ -48,22 +51,31 @@ class apt::unattended_upgrades (
   )
   validate_array($origins)
 
+  if $randomsleep {
+    unless is_numeric($randomsleep) {
+      fail('randomsleep must be numeric')
+    }
+  }
+
   package { 'unattended-upgrades':
     ensure => present,
   }
 
-  File {
+  file { '/etc/apt/apt.conf.d/50unattended-upgrades':
     ensure  => file,
     owner   => 'root',
     group   => 'root',
     mode    => '0644',
+    content => template('apt/_header.erb', 'apt/50unattended-upgrades.erb'),
     require => Package['unattended-upgrades'],
   }
 
-  file {
-    '/etc/apt/apt.conf.d/50unattended-upgrades':
-      content => template('apt/50unattended-upgrades.erb');
-    '/etc/apt/apt.conf.d/10periodic':
-      content => template('apt/10periodic.erb');
+  file { '/etc/apt/apt.conf.d/10periodic':
+    ensure  => file,
+    owner   => 'root',
+    group   => 'root',
+    mode    => '0644',
+    content => template('apt/_header.erb', 'apt/10periodic.erb'),
+    require => Package['unattended-upgrades'],
   }
 }