diff options
| -rw-r--r-- | lib/facter/apt_running.rb | 7 | ||||
| -rw-r--r-- | manifests/apt_conf.pp | 11 | ||||
| -rw-r--r-- | manifests/init.pp | 6 | ||||
| -rw-r--r-- | manifests/unattended_upgrades.pp | 2 | ||||
| l--------- | templates/Ubuntu/preferences_quantal.erb | 1 | 
5 files changed, 23 insertions, 4 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 f74fc81..a038cab 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 => Exec[refresh_apt]    }    apt_conf { '50unattended-upgrades': diff --git a/templates/Ubuntu/preferences_quantal.erb b/templates/Ubuntu/preferences_quantal.erb new file mode 120000 index 0000000..3debe4f --- /dev/null +++ b/templates/Ubuntu/preferences_quantal.erb @@ -0,0 +1 @@ +preferences_maverick.erb
\ No newline at end of file  | 
