summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvarac <varacanero@zeromail.org>2013-02-01 11:01:23 +0100
committervarac <varacanero@zeromail.org>2013-02-01 15:52:29 +0100
commitf16a0727dce187d07389388da8b816f7b520205d (patch)
tree1fec074afc89f298d2f17ebeffb5e0d544611df8
parent6c135ea7bc2ae9951154cf5471801469e3e3d581 (diff)
Install unattended-upgrades after Exec[refresh_apt]
Before, including apt::unattended_upgrades on a host without the unattended-upgrades package would fail on the first run, because the module tries to install the package before apt is finally configured. This commit does: - introduce the option $refresh_apt for apt::apt_conf (Defaults to true). Can be used to not trigger Exec['refresh_apt'] - install the unattended-upgrades package after a final Exec['refresh_apt']. To not run into a loop, it calls Apt_conf['50unattended-upgrades'] with the option refresh_apt => false, which is also not needed for the configuration
-rw-r--r--manifests/apt_conf.pp11
-rw-r--r--manifests/unattended_upgrades.pp19
2 files changed, 21 insertions, 9 deletions
diff --git a/manifests/apt_conf.pp b/manifests/apt_conf.pp
index d78fb9b..f446c69 100644
--- a/manifests/apt_conf.pp
+++ b/manifests/apt_conf.pp
@@ -1,7 +1,8 @@
define apt::apt_conf(
$ensure = 'present',
$source = '',
- $content = undef )
+ $content = undef,
+ $refresh_apt = true )
{
if $source == '' and $content == undef {
@@ -22,7 +23,6 @@ define apt::apt_conf(
owner => root,
group => 0,
mode => '0644',
- notify => Exec['refresh_apt'],
}
if $source {
@@ -35,4 +35,11 @@ define apt::apt_conf(
content => $content,
}
}
+
+ if $refresh_apt {
+ File["/etc/apt/apt.conf.d/${name}"] {
+ notify => Exec['refresh_apt'],
+ }
+ }
+
}
diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp
index c538831..b9d19c3 100644
--- a/manifests/unattended_upgrades.pp
+++ b/manifests/unattended_upgrades.pp
@@ -2,16 +2,21 @@ class apt::unattended_upgrades {
package { 'unattended-upgrades':
ensure => present,
- require => undef,
+ require => Exec[refresh_apt]
}
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' ],
- require => Package['unattended-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' ],
+ require => Package['unattended-upgrades'],
+ refresh_apt => false
+ }
+
+ Apt_conf['50unattended-upgrades'] {
+ notify => undef
}
if $apt::custom_preferences != false {