aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Filion <lelutin@gmail.com>2012-04-09 01:39:29 -0400
committerGabriel Filion <lelutin@gmail.com>2012-04-09 01:39:29 -0400
commita835369958226bac2d010fedb50ed5ef98b5906f (patch)
tree844fb93717aa3d3bb112886757aeb746cd35eecb
parent4d0ddd005795592f56496d8d39dc37ee86fac038 (diff)
downloadpuppet-apt-a835369958226bac2d010fedb50ed5ef98b5906f.tar.gz
puppet-apt-a835369958226bac2d010fedb50ed5ef98b5906f.tar.bz2
Force an apt-get update when changing an apt::sources_list
sources_list doesn't currently force puppet to run 'apt-get update' after creating/modifying/removing files in sources.list.d. Signed-off-by: Gabriel Filion <lelutin@gmail.com>
-rw-r--r--manifests/apt_conf.pp5
-rw-r--r--manifests/init.pp3
-rw-r--r--manifests/sources_list.pp6
3 files changed, 11 insertions, 3 deletions
diff --git a/manifests/apt_conf.pp b/manifests/apt_conf.pp
index 03ae1ac..fe07546 100644
--- a/manifests/apt_conf.pp
+++ b/manifests/apt_conf.pp
@@ -14,10 +14,13 @@ define apt::apt_conf(
include apt::dot_d_directories
+ # One would expect the 'file' resource on sources.list.d to trigger an
+ # apt-get update when files are added or modified in the directory, but it
+ # apparently doesn't.
file { "/etc/apt/apt.conf.d/${name}":
ensure => $ensure,
+ owner => root, group => 0, mode => 0644,
notify => Exec["refresh_apt"],
- owner => root, group => 0, mode => 0644;
}
if $source {
diff --git a/manifests/init.pp b/manifests/init.pp
index 0d58c61..4d65e77 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -85,7 +85,8 @@ class apt {
'' => template( "apt/$operatingsystem/sources.list.erb"),
default => $custom_sources_list
},
- require => Package['lsb'];
+ require => Package['lsb'],
+ notify => Exec['refresh_apt'],
}
apt_conf { "02show_upgraded":
diff --git a/manifests/sources_list.pp b/manifests/sources_list.pp
index edf7f22..499116d 100644
--- a/manifests/sources_list.pp
+++ b/manifests/sources_list.pp
@@ -13,9 +13,13 @@ define apt::sources_list (
include apt::dot_d_directories
+ # One would expect the 'file' resource on sources.list.d to trigger an
+ # apt-get update when files are added or modified in the directory, but it
+ # apparently doesn't.
file { "/etc/apt/sources.list.d/${name}":
ensure => $ensure,
- owner => root, group => 0, mode => 0644;
+ owner => root, group => 0, mode => 0644,
+ notify => Exec['refresh_apt'],
}
if $source {