diff options
-rw-r--r-- | README | 2 | ||||
-rw-r--r-- | manifests/preferences.pp | 2 | ||||
-rw-r--r-- | manifests/unattended_upgrades.pp | 4 | ||||
-rw-r--r-- | templates/Debian/apticron_wheezy.erb | 80 | ||||
l--------- | templates/Debian/listchanges_wheezy.erb | 1 | ||||
-rw-r--r-- | templates/Debian/preferences_lenny.erb | 1 | ||||
-rw-r--r-- | templates/Debian/preferences_sid.erb | 1 | ||||
-rw-r--r-- | templates/Debian/preferences_squeeze.erb | 6 | ||||
-rw-r--r-- | templates/Debian/preferences_wheezy.erb | 20 | ||||
-rw-r--r-- | templates/Debian/sources.list.erb | 10 | ||||
-rw-r--r-- | templates/Ubuntu/preferences_maverick.erb | 30 |
11 files changed, 139 insertions, 18 deletions
@@ -77,7 +77,7 @@ complemented with all of the preferences_snippet calls (see below). If the default preferences template doesn't suit your needs, you can create a template located in your site-apt module, and set $custom_preferences with the -location (eg. $custom_preferences = "puppet:///modules/site-apt/preferences") +content (eg. $custom_preferences = template('site-apt/preferences') ) Setting this variable to false before including this class will force the apt/preferences file to be absent: diff --git a/manifests/preferences.pp b/manifests/preferences.pp index 4c93542..71ef0a6 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -7,7 +7,7 @@ class apt::preferences { content => $custom_preferences ? { '' => $operatingsystem ? { 'debian' => template("apt/${operatingsystem}/preferences_${codename}.erb"), - 'ubuntu' => '', + 'ubuntu' => template("apt/${operatingsystem}/preferences_${codename}.erb"), }, default => $custom_preferences }, diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index e2992f8..b90fcbb 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -6,7 +6,9 @@ class apt::unattended_upgrades { } apt_conf { "50unattended-upgrades": - source => ["puppet:///modules/site-apt/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'], } diff --git a/templates/Debian/apticron_wheezy.erb b/templates/Debian/apticron_wheezy.erb new file mode 100644 index 0000000..ff66d39 --- /dev/null +++ b/templates/Debian/apticron_wheezy.erb @@ -0,0 +1,80 @@ +# apticron.conf +# +# set EMAIL to a space separated list of addresses which will be notified of +# impending updates +# +EMAIL="<%= apticron_email %>" + +# +# Set DIFF_ONLY to "1" to only output the difference of the current run +# compared to the last run (ie. only new upgrades since the last run). If there +# are no differences, no output/email will be generated. By default, apticron +# will output everything that needs to be upgraded. +# +DIFF_ONLY="<%= apticron_diff_only %>" + +# +# Set LISTCHANGES_PROFILE if you would like apticron to invoke apt-listchanges +# with the --profile option. You should add a corresponding profile to +# /etc/apt/listchanges.conf +# +LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" + +# +# Set SYSTEM if you would like apticron to use something other than the output +# of "hostname -f" for the system name in the mails it generates +# +# SYSTEM="foobar.example.com" +<%- if has_variable?('apticron_system') and instance_variable_get("@#{'apticron_system'}").to_s != "false" -%> +<%= 'SYSTEM="' + instance_variable_get("@#{'apticron_system'}").to_s + '"' %> +<%- end -%> + +# +# Set IPADDRESSNUM if you would like to configure the maximal number of IP +# addresses apticron displays. The default is to display 1 address of each +# family type (inet, inet6), if available. +# +# IPADDRESSNUM="1" +<%- if has_variable?('apticron_ipaddressnum') and instance_variable_get("@#{'apticron_ipaddressnum'}").to_s != "false" -%> +<%= 'IPADDRESSNUM="' + instance_variable_get("@#{'apticron_ipaddressnum'}").to_s + '"' %> +<%- end -%> + +# +# Set IPADDRESSES to a whitespace separated list of reachable addresses for +# this system. By default, apticron will try to work these out using the +# "ip" command +# +# IPADDRESSES="192.0.2.1 2001:db8:1:2:3::1" +<%- if has_variable?('apticron_ipaddresses') and instance_variable_get("@#{'apticron_ipaddresses'}").to_s != "false" -%> +<%= 'IPADDRESSES="' + instance_variable_get("@#{'apticron_ipaddresses'}").to_s + '"' %> +<%- end -%> + +# +# Set NOTIFY_HOLDS="0" if you don't want to be notified about new versions of +# packages on hold in your system. The default behavior is downloading and +# listing them as any other package. +# +# NOTIFY_HOLDS="0" +NOTIFY_HOLDS="<%= apticron_notifyholds %>" + +# +# Set NOTIFY_NEW="0" if you don't want to be notified about packages which +# are not installed in your system. Yes, it's possible! There are some issues +# related to systems which have mixed stable/unstable sources. In these cases +# apt-get will consider for example that packages with "Priority: +# required"/"Essential: yes" in unstable but not in stable should be installed, +# so they will be listed in dist-upgrade output. Please take a look at +# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=531002#44 +# +# NOTIFY_NEW="0" +NOTIFY_NEW="<%= apticron_notifynew %>" + + +# +# Set CUSTOM_SUBJECT if you want to replace the default subject used in +# the notification e-mails. This may help filtering/sorting client-side e-mail. +# If you want to use internal vars please use single quotes here. Ex: +# ='[apticron] : package update(s)' +# +# CUSTOM_SUBJECT="" +CUSTOM_SUBJECT="<%= apticron_customsubject %>" diff --git a/templates/Debian/listchanges_wheezy.erb b/templates/Debian/listchanges_wheezy.erb new file mode 120000 index 0000000..74ab496 --- /dev/null +++ b/templates/Debian/listchanges_wheezy.erb @@ -0,0 +1 @@ +listchanges_lenny.erb
\ No newline at end of file diff --git a/templates/Debian/preferences_lenny.erb b/templates/Debian/preferences_lenny.erb index dda2d7a..fb80129 100644 --- a/templates/Debian/preferences_lenny.erb +++ b/templates/Debian/preferences_lenny.erb @@ -22,3 +22,4 @@ Explanation: Debian fallback Package: * Pin: release o=Debian Pin-Priority: -10 + diff --git a/templates/Debian/preferences_sid.erb b/templates/Debian/preferences_sid.erb index 3d8a45f..eb18554 100644 --- a/templates/Debian/preferences_sid.erb +++ b/templates/Debian/preferences_sid.erb @@ -7,3 +7,4 @@ Explanation: Debian fallback Package: * Pin: release o=Debian Pin-Priority: -10 + diff --git a/templates/Debian/preferences_squeeze.erb b/templates/Debian/preferences_squeeze.erb index 5e15d27..fa0849a 100644 --- a/templates/Debian/preferences_squeeze.erb +++ b/templates/Debian/preferences_squeeze.erb @@ -8,11 +8,6 @@ Package: * Pin: release o=Debian,n=<%= codename %>-updates Pin-Priority: 990 -Explanation: Debian backports -Package: * -Pin: origin backports.debian.org -Pin-Priority: 200 - Explanation: Debian <%= next_codename %> Package: * Pin: release o=Debian,n=<%= next_codename %> @@ -27,3 +22,4 @@ Explanation: Debian fallback Package: * Pin: release o=Debian Pin-Priority: -10 + diff --git a/templates/Debian/preferences_wheezy.erb b/templates/Debian/preferences_wheezy.erb new file mode 100644 index 0000000..d5c7af8 --- /dev/null +++ b/templates/Debian/preferences_wheezy.erb @@ -0,0 +1,20 @@ +Explanation: Debian <%= codename %> +Package: * +Pin: release o=Debian,n=<%= codename %> +Pin-Priority: 990 + +Explanation: Debian <%= codename %>-updates +Package: * +Pin: release o=Debian,n=<%= codename %>-updates +Pin-Priority: 990 + +Explanation: Debian sid +Package: * +Pin: release o=Debian,n=sid +Pin-Priority: 1 + +Explanation: Debian fallback +Package: * +Pin: release o=Debian +Pin-Priority: -10 + diff --git a/templates/Debian/sources.list.erb b/templates/Debian/sources.list.erb index 45e5e7b..382e68d 100644 --- a/templates/Debian/sources.list.erb +++ b/templates/Debian/sources.list.erb @@ -67,16 +67,6 @@ deb-src <%= security_url %> <%= next_codename %>/updates <%= repos %> <% end -%> <% end -%> -# backports -<% if (next_release == "testing" || next_release == "unstable" || next_release == "experimental") -%> -# There is no backports archive for <%= next_release %> -<% else -%> -deb <%= backports_url %> <%= next_codename %>-backports <%= repos %> -<% if include_src then -%> -deb-src <%= backports_url %> <%= next_codename %>-backports <%= repos %> -<% end -%> -<% end -%> - <% if use_volatile -%> # volatile <% if (next_release == "testing" || next_release == "unstable" || next_release == "experimental") -%> diff --git a/templates/Ubuntu/preferences_maverick.erb b/templates/Ubuntu/preferences_maverick.erb new file mode 100644 index 0000000..30d3ec6 --- /dev/null +++ b/templates/Ubuntu/preferences_maverick.erb @@ -0,0 +1,30 @@ +Explanation: Ubuntu <%= codename %> security +Package: * +Pin: release o=Ubuntu,a=<%= codename %>-security +Pin-Priority: 990 + +Explanation: Ubuntu <%= codename %> updates +Package: * +Pin: release o=Ubuntu,a=<%= codename %>-updates +Pin-Priority: 980 + +Explanation: Ubuntu <%= codename %> +Package: * +Pin: release o=Ubuntu,a=<%= codename %> +Pin-Priority: 970 + +Explanation: Ubuntu backports +Package: * +Pin: release a=<%= codename %>-backports +Pin-Priority: 200 + +Explanation: Ubuntu <%= next_release %> +Package: * +Pin: release o=Ubuntu,a=<%= next_release %> +Pin-Priority: 2 + +Explanation: Ubuntu fallback +Package: * +Pin: release o=Ubuntu +Pin-Priority: -10 + |