From f11e3d475345059220402a44a97da491c85d2b5a Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 25 Jun 2013 11:31:22 -0400 Subject: remove unnecessary before dependency on the /etc/apt/preferences file in unattended_upgrades.pp --- manifests/unattended_upgrades.pp | 6 ------ 1 file changed, 6 deletions(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index b9d19c3..3492e5f 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -18,10 +18,4 @@ class apt::unattended_upgrades { Apt_conf['50unattended-upgrades'] { notify => undef } - - if $apt::custom_preferences != false { - Apt_conf['50unattended-upgrades'] { - before => File['apt_config'], - } - } } -- cgit v1.2.3 From 9a3068016feffa328bf6e0f265e316eb813b7ee8 Mon Sep 17 00:00:00 2001 From: varac Date: Sun, 14 Apr 2013 14:54:10 +0200 Subject: using distribution sprecific files again --- files/50unattended-upgrades | 20 -------------------- files/Debian/50unattended-upgrades | 14 ++++++++++++++ files/Debian/50unattended-upgrades.lenny | 13 +++++++++++++ files/Debian/50unattended-upgrades.squeeze | 13 +++++++++++++ files/Debian/50unattended-upgrades.wheezy | 14 ++++++++++++++ files/Ubuntu/50unattended-upgrades | 16 ++++++++++++++++ files/lenny/50unattended-upgrades | 13 ------------- files/squeeze/50unattended-upgrades | 14 -------------- manifests/unattended_upgrades.pp | 8 ++++---- 9 files changed, 74 insertions(+), 51 deletions(-) delete mode 100644 files/50unattended-upgrades create mode 100644 files/Debian/50unattended-upgrades create mode 100644 files/Debian/50unattended-upgrades.lenny create mode 100644 files/Debian/50unattended-upgrades.squeeze create mode 100644 files/Debian/50unattended-upgrades.wheezy create mode 100644 files/Ubuntu/50unattended-upgrades delete mode 100644 files/lenny/50unattended-upgrades delete mode 100644 files/squeeze/50unattended-upgrades (limited to 'manifests/unattended_upgrades.pp') diff --git a/files/50unattended-upgrades b/files/50unattended-upgrades deleted file mode 100644 index 329c95c..0000000 --- a/files/50unattended-upgrades +++ /dev/null @@ -1,20 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Origins-Pattern { - // Debian - "${distro_id} ${distro_codename}"; - "${distro_id} ${distro_codename}-updates"; - "${distro_id} ${distro_codename}-security"; - "${distro_id} Backports:${distro_codename}-backports"; - // Ubuntu specific - "${distro_id} ${distro_codename}-security"; - "${distro_id} ${distro_codename}-backports"; - "${distro_id} ${distro_codename}-proposed"; -}; - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; -Unattended-Upgrade::MailOnlyOnError "true"; diff --git a/files/Debian/50unattended-upgrades b/files/Debian/50unattended-upgrades new file mode 100644 index 0000000..0901ad3 --- /dev/null +++ b/files/Debian/50unattended-upgrades @@ -0,0 +1,14 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { + "${distro_id}:stable"; + "${distro_id}:${distro_codename}-security"; + "${distro_id}:${distro_codename}-updates"; + "${distro_id} Backports:${distro_codename}-backports"; +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; diff --git a/files/Debian/50unattended-upgrades.lenny b/files/Debian/50unattended-upgrades.lenny new file mode 100644 index 0000000..d55bb29 --- /dev/null +++ b/files/Debian/50unattended-upgrades.lenny @@ -0,0 +1,13 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { + "Debian oldstable"; + "Debian-Security oldstable"; +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; + diff --git a/files/Debian/50unattended-upgrades.squeeze b/files/Debian/50unattended-upgrades.squeeze new file mode 100644 index 0000000..38da1f4 --- /dev/null +++ b/files/Debian/50unattended-upgrades.squeeze @@ -0,0 +1,13 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { + "${distro_id} stable"; + "${distro_id} ${distro_codename}-security"; + "${distro_id} ${distro_codename}-backports"; +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; diff --git a/files/Debian/50unattended-upgrades.wheezy b/files/Debian/50unattended-upgrades.wheezy new file mode 100644 index 0000000..4463406 --- /dev/null +++ b/files/Debian/50unattended-upgrades.wheezy @@ -0,0 +1,14 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { + "${distro_id}:testing"; + "${distro_id}:${distro_codename}-security"; + "${distro_id}:${distro_codename}-updates"; + "${distro_id} Backports:${distro_codename}-backports"; +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; diff --git a/files/Ubuntu/50unattended-upgrades b/files/Ubuntu/50unattended-upgrades new file mode 100644 index 0000000..25c7758 --- /dev/null +++ b/files/Ubuntu/50unattended-upgrades @@ -0,0 +1,16 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { + "${distro_id}:${distro_codename}-security"; + "${distro_id}:${distro_codename}-updates"; + "${distro_id}:${distro_codename}-backports"; + //"${distro_id}:${distro_codename}-proposed"; +}; + + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; +Unattended-Upgrade::MailOnlyOnError "true"; diff --git a/files/lenny/50unattended-upgrades b/files/lenny/50unattended-upgrades deleted file mode 100644 index d55bb29..0000000 --- a/files/lenny/50unattended-upgrades +++ /dev/null @@ -1,13 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Allowed-Origins { - "Debian oldstable"; - "Debian-Security oldstable"; -}; - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; - diff --git a/files/squeeze/50unattended-upgrades b/files/squeeze/50unattended-upgrades deleted file mode 100644 index 0901ad3..0000000 --- a/files/squeeze/50unattended-upgrades +++ /dev/null @@ -1,14 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Allowed-Origins { - "${distro_id}:stable"; - "${distro_id}:${distro_codename}-security"; - "${distro_id}:${distro_codename}-updates"; - "${distro_id} Backports:${distro_codename}-backports"; -}; - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index c538831..f74fc81 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -7,10 +7,10 @@ class apt::unattended_upgrades { apt_conf { '50unattended-upgrades': source => [ - "puppet:///modules/site_apt/${::lsbdistcodename}/50unattended-upgrades", - 'puppet:///modules/site_apt/50unattended-upgrades', - "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades", - 'puppet:///modules/apt/50unattended-upgrades' ], + "puppet:///modules/site_apt/${::lsbdistid}/50unattended-upgrades.${::lsbdistcodename}", + "puppet:///modules/site_apt/${::lsbdistid}/50unattended-upgrades", + "puppet:///modules/apt/${::lsbdistid}/50unattended-upgrades.${::lsbdistcodename}", + "puppet:///modules/apt/${::lsbdistid}/50unattended-upgrades" ], require => Package['unattended-upgrades'], } -- cgit v1.2.3 From 07266be25546482b021e5ba62cf155b8b0e770be Mon Sep 17 00:00:00 2001 From: varac Date: Sun, 14 Apr 2013 15:06:30 +0200 Subject: fix unattended-upgrades dependency cycle --- manifests/unattended_upgrades.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index f74fc81..2f6c2a5 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -2,7 +2,7 @@ class apt::unattended_upgrades { package { 'unattended-upgrades': ensure => present, - require => undef, + require => undef } apt_conf { '50unattended-upgrades': -- cgit v1.2.3 From 1a72a99693c1d77bfe891546408f88264fca98ee Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 27 Jun 2013 11:58:39 -0400 Subject: remove unnecessary override and accidentally merge issue --- manifests/unattended_upgrades.pp | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 17455fe..80939e3 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -1,8 +1,7 @@ class apt::unattended_upgrades { package { 'unattended-upgrades': - ensure => present, - require => Exec[refresh_apt] + ensure => present } apt_conf { '50unattended-upgrades': @@ -13,8 +12,4 @@ class apt::unattended_upgrades { "puppet:///modules/apt/${::lsbdistid}/50unattended-upgrades" ], require => Package['unattended-upgrades'], } - - Apt_conf['50unattended-upgrades'] { - notify => undef - } } -- cgit v1.2.3 From 9192785c452ce2cfa0f58984d3aebdcaf841113a Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Sat, 27 Jul 2013 13:38:27 -0400 Subject: make it possible to opt out of MailOnlyOnError This combines all files into one template. It should make maintenance easier. --- files/Debian/50unattended-upgrades | 12 ------------ files/Debian/50unattended-upgrades.squeeze | 14 -------------- files/Ubuntu/50unattended-upgrades | 16 ---------------- manifests/unattended_upgrades.pp | 16 ++++++++++------ templates/50unattended-upgrades.erb | 26 ++++++++++++++++++++++++++ 5 files changed, 36 insertions(+), 48 deletions(-) delete mode 100644 files/Debian/50unattended-upgrades delete mode 100644 files/Debian/50unattended-upgrades.squeeze delete mode 100644 files/Ubuntu/50unattended-upgrades create mode 100644 templates/50unattended-upgrades.erb (limited to 'manifests/unattended_upgrades.pp') diff --git a/files/Debian/50unattended-upgrades b/files/Debian/50unattended-upgrades deleted file mode 100644 index 075f680..0000000 --- a/files/Debian/50unattended-upgrades +++ /dev/null @@ -1,12 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Origins-Pattern { - "o=Debian,a=oldstable,l=Debian-Security"; - "o=Debian,a=stable,l=Debian-Security"; -} - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; diff --git a/files/Debian/50unattended-upgrades.squeeze b/files/Debian/50unattended-upgrades.squeeze deleted file mode 100644 index 77f715d..0000000 --- a/files/Debian/50unattended-upgrades.squeeze +++ /dev/null @@ -1,14 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Allowed-Origins { -// "${distro-id} oldstable"; -// "${distro_id} ${distro_codename}-backports"; - "${distro_id} ${distro_codename}-security"; - "${distro_id} ${distro_codename}-lts"; -}; - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; diff --git a/files/Ubuntu/50unattended-upgrades b/files/Ubuntu/50unattended-upgrades deleted file mode 100644 index 25c7758..0000000 --- a/files/Ubuntu/50unattended-upgrades +++ /dev/null @@ -1,16 +0,0 @@ -// this file is managed by puppet ! - -Unattended-Upgrade::Allowed-Origins { - "${distro_id}:${distro_codename}-security"; - "${distro_id}:${distro_codename}-updates"; - "${distro_id}:${distro_codename}-backports"; - //"${distro_id}:${distro_codename}-proposed"; -}; - - -APT::Periodic::Update-Package-Lists "1"; -APT::Periodic::Download-Upgradeable-Packages "1"; -APT::Periodic::Unattended-Upgrade "1"; - -Unattended-Upgrade::Mail "root"; -Unattended-Upgrade::MailOnlyOnError "true"; diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 80939e3..b63b483 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -1,15 +1,19 @@ -class apt::unattended_upgrades { +class apt::unattended_upgrades ( + $config_content = undef, + $mailonlyonerror = true, +) { package { 'unattended-upgrades': ensure => present } + $file_content = $config_content ? { + undef => template('apt/50unattended-upgrades.erb'), + default => $config_content + } + apt_conf { '50unattended-upgrades': - source => [ - "puppet:///modules/site_apt/${::lsbdistid}/50unattended-upgrades.${::lsbdistcodename}", - "puppet:///modules/site_apt/${::lsbdistid}/50unattended-upgrades", - "puppet:///modules/apt/${::lsbdistid}/50unattended-upgrades.${::lsbdistcodename}", - "puppet:///modules/apt/${::lsbdistid}/50unattended-upgrades" ], + content => $file_content, require => Package['unattended-upgrades'], } } diff --git a/templates/50unattended-upgrades.erb b/templates/50unattended-upgrades.erb new file mode 100644 index 0000000..0ba0d7e --- /dev/null +++ b/templates/50unattended-upgrades.erb @@ -0,0 +1,26 @@ +// this file is managed by puppet ! + +Unattended-Upgrade::Allowed-Origins { +<% if scope.lookupvar('::operatingsystem') == 'Ubuntu' -%> + "${distro_id}:${distro_codename}-security"; + "${distro_id}:${distro_codename}-updates"; + "${distro_id}:${distro_codename}-backports"; +<% else -%> +<% if scope.lookupvar('::lsbdistcodename') == 'squeeze' -%> + "${distro-id} ${distro-codename}-security"; + "${distro-id} ${distro-codename}-lts"; +<% else -%> + # See Debian bug #704087 + "o=Debian,a=oldstable,l=Debian-Security"; + "o=Debian,a=stable,l=Debian-Security"; +<% end -%> +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Download-Upgradeable-Packages "1"; +APT::Periodic::Unattended-Upgrade "1"; + +Unattended-Upgrade::Mail "root"; +<% if mailonlyonerror -%> +Unattended-Upgrade::MailOnlyOnError "true"; +<% end -%> -- cgit v1.2.3 From d24ca3314fadd7836ed0d6345359eb7ccfad6419 Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Sat, 27 Jul 2013 13:42:54 -0400 Subject: Parametrize unattended-upgrades mail recipient --- manifests/unattended_upgrades.pp | 1 + templates/50unattended-upgrades.erb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index b63b483..7e17333 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -1,6 +1,7 @@ class apt::unattended_upgrades ( $config_content = undef, $mailonlyonerror = true, + $mail_recipient = 'root', ) { package { 'unattended-upgrades': diff --git a/templates/50unattended-upgrades.erb b/templates/50unattended-upgrades.erb index 0ba0d7e..41bac87 100644 --- a/templates/50unattended-upgrades.erb +++ b/templates/50unattended-upgrades.erb @@ -20,7 +20,7 @@ APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::Unattended-Upgrade "1"; -Unattended-Upgrade::Mail "root"; +Unattended-Upgrade::Mail "<%= mail_recipient -%>"; <% if mailonlyonerror -%> Unattended-Upgrade::MailOnlyOnError "true"; <% end -%> -- cgit v1.2.3 From 6f6e725e60f05a232ba6053cfc49ce1b219be7c7 Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Fri, 17 Apr 2015 16:43:26 -0400 Subject: Add parameter for blacklisting a list of packages. This functionality was lost because we stopped using a source file for the 50unattended-upgrades file that would previously let one override the configuration per release or per host. --- README | 4 ++++ manifests/unattended_upgrades.pp | 1 + templates/50unattended-upgrades.erb | 8 ++++++++ 3 files changed, 13 insertions(+) (limited to 'manifests/unattended_upgrades.pp') diff --git a/README b/README index 87b303a..9cf17d1 100644 --- a/README +++ b/README @@ -17,6 +17,10 @@ Ubuntu support is lagging behind but not absent either. ! Upgrade Notice ! + * If you were using custom 50unattended-upgrades.${::lsbdistcodename} in your + site_apt, these are no longer supported. You should migrate to passing + $blacklisted_packages to the apt::unattended_upgrades class. + * the apt class has been moved to a paramterized class. if you were including this class before, after passing some variables, you will need to move to instantiating the class with those variables instead. For example, if you diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 7e17333..9f74bbd 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -2,6 +2,7 @@ class apt::unattended_upgrades ( $config_content = undef, $mailonlyonerror = true, $mail_recipient = 'root', + $blacklisted_packages = [], ) { package { 'unattended-upgrades': diff --git a/templates/50unattended-upgrades.erb b/templates/50unattended-upgrades.erb index 318b69d..4492c2d 100644 --- a/templates/50unattended-upgrades.erb +++ b/templates/50unattended-upgrades.erb @@ -16,6 +16,14 @@ Unattended-Upgrade::Allowed-Origins { <% end -%> }; +<% if not @blacklisted_packages.empty? -%> +Unattended-Upgrade::Package-Blacklist { +<% @blacklisted_packages.each do |pkg| -%> + "<%= pkg %>"; +<% end -%> +} +<% end -%> + APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::Unattended-Upgrade "1"; -- cgit v1.2.3 From a7cc68ed9965f665572afd9d279ebf5f3c7043d7 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Wed, 6 May 2015 15:52:07 -0400 Subject: add $ensure_version parameter, to allow for overriding which version of unattended-upgrades is installed --- manifests/unattended_upgrades.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 9f74bbd..28c6092 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -3,10 +3,11 @@ class apt::unattended_upgrades ( $mailonlyonerror = true, $mail_recipient = 'root', $blacklisted_packages = [], + $ensure_version = present ) { package { 'unattended-upgrades': - ensure => present + ensure => $ensure_version } $file_content = $config_content ? { -- cgit v1.2.3 From a4d788d778ad9b517c840c157d0c0119443c6ac9 Mon Sep 17 00:00:00 2001 From: varac Date: Wed, 6 May 2015 21:40:35 +0200 Subject: don't call Exec[refresh_apt] after deploying unattended-upgrades config unattended-upgrades is run on a daily base by cron, no need to force an `apt-get update` after changing this file. --- manifests/unattended_upgrades.pp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 28c6092..6cb0518 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -16,7 +16,8 @@ class apt::unattended_upgrades ( } apt_conf { '50unattended-upgrades': - content => $file_content, - require => Package['unattended-upgrades'], + content => $file_content, + require => Package['unattended-upgrades'], + refresh_apt => false } } -- cgit v1.2.3 From e714859a10776123afe77bbd15d9f7a02ea9682f Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Fri, 9 Oct 2015 16:59:33 -0400 Subject: Make it possible to specify own template. Micah found an issue with usage of config_content: if you call template('...') yourself and pass that on to config_content, then your template gets evaluated without all of the variables. This means that you don't hava access to blacklisted_packages, mail_recipient or mailonlyonerror. To make it possible to use a different template while still having access to those variables, let's make it possible to change the template name that we're using. --- manifests/unattended_upgrades.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 6cb0518..ffb5fad 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -1,5 +1,6 @@ class apt::unattended_upgrades ( $config_content = undef, + $config_template = 'apt/50unattended-upgrades.erb', $mailonlyonerror = true, $mail_recipient = 'root', $blacklisted_packages = [], @@ -11,7 +12,7 @@ class apt::unattended_upgrades ( } $file_content = $config_content ? { - undef => template('apt/50unattended-upgrades.erb'), + undef => template($config_template), default => $config_content } -- cgit v1.2.3 From c4a0aff2af47d48ca1b41110274ebb3879c4b758 Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Tue, 2 Feb 2016 17:07:21 -0500 Subject: Manage unattended-upgrades log directory In some situations, the log directory for unattended-upgrades might not exist. In those cases, packages will not get upgraded! unattended-upgrades crashes with a python backtrace because the log dir is not present. --- manifests/unattended_upgrades.pp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'manifests/unattended_upgrades.pp') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index ffb5fad..52d7542 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -11,6 +11,16 @@ class apt::unattended_upgrades ( ensure => $ensure_version } + # For some reason, this directory is sometimes absent, which causes + # unattended-upgrades to crash. + file { '/var/log/unattended-upgrades': + ensure => directory, + owner => 'root', + group => 0, + mode => '0755', + require => Package['unattended-upgrades'], + } + $file_content = $config_content ? { undef => template($config_template), default => $config_content -- cgit v1.2.3