aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMicah Anderson <micah@riseup.net>2010-12-08 22:25:09 -0500
committerMicah Anderson <micah@riseup.net>2010-12-08 22:25:09 -0500
commit13bf7d0623fceb3b97cc90f0a9a9dcd8afdb03e8 (patch)
tree442f266859ad9b6820773deb59335ed65d3c22e8
parentfbb291ed19eeb9a64d4aed78c48d221315da7866 (diff)
downloadpuppet-apt-13bf7d0623fceb3b97cc90f0a9a9dcd8afdb03e8.tar.gz
puppet-apt-13bf7d0623fceb3b97cc90f0a9a9dcd8afdb03e8.tar.bz2
add apt-listchanges support. this is a nice compliment to using the upgrade_package functionality, because you get an email when the package has been upgraded.
-rw-r--r--README13
-rw-r--r--manifests/listchanges.pp38
-rw-r--r--templates/Debian/listchanges_lenny.erb7
l---------templates/Debian/listchanges_squeeze.erb1
4 files changed, 59 insertions, 0 deletions
diff --git a/README b/README
index 355379b..f171e8c 100644
--- a/README
+++ b/README
@@ -198,6 +198,19 @@ apt::dselect
This class, when included, installs dselect and switches it to expert mode to
suppress superfluous help screens.
+apt::listchanges
+
+This class, when included, installs apt-listchanges and configures it using the
+following variables, the defaults are below:
+
+ $listchanges_version = "present"
+ $listchanges_config = "apt/${operatingsystem}/listchanges_${lsbrelease}.erb"
+ $listchanges_frontend = "pager"
+ $listchanges_email = "root"
+ $listchanges_confirm = "0"
+ $listchanges_saveseen = "/var/lib/apt/listchanges.db"
+ $listchanges_which = "both"
+
apt::proxy_client
-----------------
diff --git a/manifests/listchanges.pp b/manifests/listchanges.pp
new file mode 100644
index 0000000..3b886bf
--- /dev/null
+++ b/manifests/listchanges.pp
@@ -0,0 +1,38 @@
+class apt::listchanges {
+
+ case $listchanges_version {
+ '': { $listchanges_version = "present" }
+ }
+
+ case $listchanges_config {
+ '': { $listchanges_config = "apt/${operatingsystem}/listchanges_${lsbrelease}.erb" }
+ }
+
+ case $listchanges_frontend {
+ '' { $listchanges_frontend = "pager" }
+ }
+
+ case $listchanges_email {
+ '': { $listchanges_email = "root" }
+ }
+
+ case $listchanges_confirm {
+ '': { $listchanges_confirm = "0" }
+ }
+
+ case $listchanges_saveseen {
+ '': { $listchanges_saveseen = "/var/lib/apt/listchanges.db" }
+ }
+
+ case $listchanges_which {
+ '': { $listchanges_which = "both" }
+ }
+
+ package { apt-listchanges: ensure => $listchanges_ensure_version }
+
+ file { "/etc/apt/listchanges.conf":
+ content => template($listchanges_config),
+ mode => 0644, owner => root, group => root,
+ require => Package["apt-listchanges"];
+ }
+}
diff --git a/templates/Debian/listchanges_lenny.erb b/templates/Debian/listchanges_lenny.erb
new file mode 100644
index 0000000..fec3b68
--- /dev/null
+++ b/templates/Debian/listchanges_lenny.erb
@@ -0,0 +1,7 @@
+[apt]
+frontend=<%= listchanges_frontend %>
+email_address=<%= listchanges_email %>
+confirm=<%= listchanges_confirm %>
+save_seen=<%= listchanges_saveseen %>
+which=<%= listchanges_which %>
+
diff --git a/templates/Debian/listchanges_squeeze.erb b/templates/Debian/listchanges_squeeze.erb
new file mode 120000
index 0000000..74ab496
--- /dev/null
+++ b/templates/Debian/listchanges_squeeze.erb
@@ -0,0 +1 @@
+listchanges_lenny.erb \ No newline at end of file