summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/facter/apt_running.rb7
-rw-r--r--manifests/apt_conf.pp11
-rw-r--r--manifests/init.pp6
-rw-r--r--manifests/unattended_upgrades.pp19
4 files changed, 33 insertions, 10 deletions
diff --git a/lib/facter/apt_running.rb b/lib/facter/apt_running.rb
new file mode 100644
index 0000000..e8f2156
--- /dev/null
+++ b/lib/facter/apt_running.rb
@@ -0,0 +1,7 @@
+Facter.add("apt_running") do
+ setcode do
+ #Facter::Util::Resolution.exec('/usr/bin/dpkg -s mysql-server >/dev/null 2>&1 && echo true || echo false')
+ Facter::Util::Resolution.exec('pgrep apt-get >/dev/null 2>&1 && echo true || echo false')
+ end
+end
+
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/init.pp b/manifests/init.pp
index 3f8e1c8..faddf09 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -128,7 +128,11 @@ class apt(
}
if $custom_preferences != false {
Exec['custom_keys'] {
- before => File['apt_config'],
+ before => [ Exec[refresh_apt], File['apt_config'] ]
+ }
+ } else {
+ Exec['custom_keys'] {
+ before => 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 {