diff options
23 files changed, 256 insertions, 277 deletions
@@ -45,7 +45,7 @@ site_apt/files/some.host.com/03clean_vserver) Variables ========= -$lsbdistcodename +$::lsbdistcodename ---------------- Contains the codename ("etch", "lenny", ...) of the client's @@ -173,7 +173,7 @@ defaults, which you are free to change before you include the class: $apticron_ensure_version = "present" $apticron_email = "root" - $apticron_config = "apt/${operatingsystem}/apticron_${lsbrelease}.erb" + $apticron_config = "apt/${::operatingsystem}/apticron_${::lsbrelease}.erb" $apticron_diff_only = "1" $apticron_listchanges_profile = "apticron" $apticron_system = false @@ -230,7 +230,7 @@ file's content changes. The initiator file is copied from the first available source amongst the following ones, in decreasing priority order: -- puppet:///site_apt/${fqdn}/upgrade_initiator +- puppet:///site_apt/${::fqdn}/upgrade_initiator - puppet:///site_apt/upgrade_initiator - puppet:///apt/upgrade_initiator @@ -258,7 +258,7 @@ This class, when included, installs apt-listchanges and configures it using the following variables, the defaults are below: $apt_listchanges_version = "present" - $apt_listchanges_config = "apt/${operatingsystem}/listchanges_${lsbrelease}.erb" + $apt_listchanges_config = "apt/${::operatingsystem}/listchanges_${::lsbrelease}.erb" $apt_listchanges_frontend = "pager" $apt_listchanges_email = "root" $apt_listchanges_confirm = "0" @@ -333,7 +333,7 @@ apt::preseeded_package This simplifies installation of packages for which you wish to preseed the answers to debconf. For example, if you wish to provide a preseed file for the locales package, you would place the locales.seed file in -'site_apt/templates/$lsbdistcodename/locales.seeds' and then include the +'site_apt/templates/${::lsbdistcodename}/locales.seeds' and then include the following in your manifest: apt::preseeded_package { locales: } @@ -356,7 +356,7 @@ meta-parameter to define content inline or with the help of a template. Example: apt::sources_list { "company_internals.list": - source => ["puppet:///modules/site_apt/${fqdn}/company_internals.list", + source => ["puppet:///modules/site_apt/${::fqdn}/company_internals.list", "puppet:///modules/site_apt/company_internals.list"], } diff --git a/files/lenny/50unattended-upgrades b/files/lenny/50unattended-upgrades new file mode 100644 index 0000000..768bef8 --- /dev/null +++ b/files/lenny/50unattended-upgrades @@ -0,0 +1,57 @@ +// this file is managed by puppet ! +// +//See https://wiki.ubuntu.com/AutomaticUpdates for more details about this feature. + +// allowed (origin, archive) pairs +Unattended-Upgrade::Allowed-Origins { + "Debian oldstable"; + "Debian-Security oldstable"; +// "Debian testing"; +}; + +APT::Periodic::Update-Package-Lists "1"; +APT::Periodic::Unattended-Upgrade "1"; +Unattended-Upgrade::Mail "root"; + +APT::UnattendedUpgrades::LogDir "/var/log/"; +APT::UnattendedUpgrades::LogFile "unattended_upgrades.log"; + +Unattended-Upgrade::Package-Blacklist { + // we don't want the kernel to be updated so nagios still can give a warning if there is + // a manual update (and reboot) left + + "linux-image-*"; + + // unfortunately there seems to be a bug in unattended-upgrades <= 0.62 that wildcards aren't recognized: + //2009-12-11 13:41:43,267 INFO Initial blacklisted packages: linux-image-* + //2009-12-11 13:41:43,267 INFO Starting unattended upgrades script + //2009-12-11 13:41:43,267 INFO Allowed origins are: ["['Debian', 'stable']", "['Debian-Security', 'stable']"] + //2009-12-11 13:41:45,233 INFO Packages that are upgraded: linux-image-2.6.26-2-amd64 + //2009-12-11 13:41:45,233 INFO Writing dpkg log to '/var/log/unattended-upgrades-dpkg_2009-12-11_13:41:45.233713.log' + //2009-12-11 13:42:11,988 INFO All upgrades installed + + // lenny + "linux-image-2.6.26-1-686"; + "linux-image-2.6.26-1-amd64"; + "linux-image-2.6.26-1-xen-686"; + "linux-image-2.6.26-1-xen-amd64"; + "linux-image-2.6.26-1-vserver-686"; + "linux-image-2.6.26-1-vserver-amd64"; + + "linux-image-2.6.26-2-686"; + "linux-image-2.6.26-2-amd64"; + "linux-image-2.6.26-2-xen-686"; + "linux-image-2.6.26-2-xen-amd64"; + "linux-image-2.6.26-2-vserver-686"; + "linux-image-2.6.26-2-vserver-amd64"; + + // squeeze + "linux-image-2.6.32-5-686"; + "linux-image-2.6.32-5-amd64"; + "linux-image-2.6.32-5-xen-686"; + "linux-image-2.6.32-5-xen-amd64"; + "linux-image-2.6.32-5-vserver-686"; + "linux-image-2.6.32-5-vserver-amd64"; + +}; + diff --git a/files/50unattended-upgrades b/files/squeeze/50unattended-upgrades index 46fc0dc..46fc0dc 100644 --- a/files/50unattended-upgrades +++ b/files/squeeze/50unattended-upgrades diff --git a/manifests/apticron.pp b/manifests/apticron.pp index 2fe8e44..ebdd5b5 100644 --- a/manifests/apticron.pp +++ b/manifests/apticron.pp @@ -1,53 +1,21 @@ -class apt::apticron { - - case $apticron_ensure_version { - '': { $apticron_ensure_version = "present" } - } - - case $apticron_config { - '': { $apticron_config = "apt/${operatingsystem}/apticron_${lsbdistcodename}.erb" } - } - - case $apticron_email { - '': { $apticron_email = "root" } - } - - case $apticron_diff_only { - '': { $apticron_diff_only = "1" } - } - - case $apticron_listchanges_profile { - '': { $apticron_listchanges_profile = "apticron" } - } - - case $apticron_system { - '': { $apticron_system = false } - } - - case $apticron_ipaddressnum { - '': { $apticron_ipaddressnum = false } - } - - case $apticron_ipaddresses { - '': { $apticron_ipaddresses = false } - } - - case $apticron_notifyholds { - '': { $apticron_notifyholds = "0" } - } - - case $apticron_notifynew { - '': { $apticron_notifynew = "0" } - } - - case $apticron_customsubject { - '': { $apticron_customsubject = "" } - } - - package { apticron: ensure => $apticron_ensure_version } +class apt::apticron( + $ensure_version = 'installed', + $config = "apt/${::operatingsystem}/apticron_${::lsbdistcodename}.erb", + $email = 'root', + $diff_only = '1', + $listchanges_profile = 'apticron', + $system = false, + $ipaddressnum = false, + $ipaddresses = false, + $notifyholds = '0', + $notifynew = '0', + $customsubject = '' +) { + + package { apticron: ensure => $ensure_version } file { "/etc/apticron/apticron.conf": - content => template($apticron_config), + content => template($apt::apticron::config), mode => 0644, owner => root, group => root, require => Package["apticron"]; } diff --git a/manifests/cron/dist_upgrade.pp b/manifests/cron/dist_upgrade.pp index 1c8adb1..68460f2 100644 --- a/manifests/cron/dist_upgrade.pp +++ b/manifests/cron/dist_upgrade.pp @@ -10,14 +10,16 @@ dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-conf package { "apt-listbugs": ensure => absent } - config_file { "/etc/cron-apt/action.d/4-dist-upgrade": + file { "/etc/cron-apt/action.d/4-dist-upgrade": content => $action, - require => Package[cron-apt] + require => Package[cron-apt], + owner => root, group => 0, mode => 0644; } - config_file { "/etc/cron-apt/config.d/MAILON": + file { "/etc/cron-apt/config.d/MAILON": content => "MAILON=upgrade\n", - require => Package[cron-apt] + require => Package[cron-apt], + owner => root, group => 0, mode => 0644; } } diff --git a/manifests/cron/download.pp b/manifests/cron/download.pp index a27967d..f4e9184 100644 --- a/manifests/cron/download.pp +++ b/manifests/cron/download.pp @@ -3,19 +3,21 @@ class apt::cron::download inherits apt::cron::base { $action = "autoclean -y dist-upgrade -d -y -o APT::Get::Show-Upgraded=true " - + file { "/etc/cron-apt/action.d/4-dist-upgrade": ensure => absent, } - config_file { "/etc/cron-apt/action.d/3-download": + file { "/etc/cron-apt/action.d/3-download": content => $action, - require => Package[cron-apt] + require => Package[cron-apt], + owner => root, group => 0, mode => 0644; } - config_file { "/etc/cron-apt/config.d/MAILON": + file { "/etc/cron-apt/config.d/MAILON": content => "MAILON=changes\n", - require => Package[cron-apt] + require => Package[cron-apt], + owner => root, group => 0, mode => 0644; } } diff --git a/manifests/dist_upgrade/initiator.pp b/manifests/dist_upgrade/initiator.pp index 571cd51..f1d522b 100644 --- a/manifests/dist_upgrade/initiator.pp +++ b/manifests/dist_upgrade/initiator.pp @@ -10,7 +10,7 @@ class apt::dist_upgrade::initiator inherits apt::dist_upgrade { path => "${initiator_abs}", checksum => md5, source => [ - "puppet:///modules/site_apt/${fqdn}/${initiator}", + "puppet:///modules/site_apt/${::fqdn}/${initiator}", "puppet:///modules/site_apt/${initiator}", "puppet:///modules/apt/${initiator}", ], diff --git a/manifests/init.pp b/manifests/init.pp index 2ae691f..509b6d1 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -3,54 +3,29 @@ # Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at> # See LICENSE for the full license granted to you. -class apt { - - $use_volatile = $apt_volatile_enabled ? { - '' => false, - default => $apt_volatile_enabled, - } - - $include_src = $apt_include_src ? { - '' => false, - default => $apt_include_src, - } - - $use_next_release = $apt_use_next_release ? { - '' => false, - default => $apt_use_next_release, - } - - $debian_url = $apt_debian_url ? { - '' => 'http://cdn.debian.net/debian/', - default => "${apt_debian_url}", - } - $security_url = $apt_security_url ? { - '' => 'http://security.debian.org/', - default => "${apt_security_url}", - } - $backports_url = $apt_backports_url ? { - '' => 'http://backports.debian.org/debian-backports/', - default => "${apt_backports_url}", - } - $volatile_url = $apt_volatile_url ? { - '' => 'http://volatile.debian.org/debian-volatile/', - default => "${apt_volatile_url}", - } - $ubuntu_url = $apt_ubuntu_url ? { - '' => 'http://archive.ubuntu.com/ubuntu', - default => "${apt_ubuntu_url}", - } - case $operatingsystem { +class apt( + $use_volatile = false, + $include_src = false, + $use_next_release = false, + $debian_url = 'http://cdn.debian.net/debian/', + $security_url = 'http://security.debian.org/', + $backports_url = 'http://backports.debian.org/debian-backports/', + $volatile_url = 'http://volatile.debian.org/debian-volatile/', + $ubuntu_url = 'http://archive.ubuntu.com/ubuntu', + $repos = 'auto', + $custom_preferences = '' +){ + case $::operatingsystem { 'debian': { - $repos = $apt_repos ? { - '' => 'main contrib non-free', - default => "${apt_repos}", + $real_repos = $repos ? { + 'auto' => 'main contrib non-free', + default => $repos, } } 'ubuntu': { - $repos = $apt_repos ? { + $real_repos = $repos ? { '' => 'main restricted universe multiverse', - default => "${apt_repos}", + default => $repos, } } } @@ -63,41 +38,40 @@ class apt { include lsb # init $release, $next_release, $codename, $next_codename, $release_version - case $lsbdistcodename { + case $::lsbdistcodename { '': { - $codename = $lsbdistcodename - $release = $lsbdistrelease + $release = $::lsbdistrelease } default: { - $codename = $lsbdistcodename - $release = debian_release($codename) + $release = debian_release($::lsbdistcodename) } } - $release_version = debian_release_version($codename) - $next_codename = debian_nextcodename($codename) + $release_version = debian_release_version($::lsbdistcodename) + $next_codename = debian_nextcodename($::lsbdistcodename) $next_release = debian_nextrelease($release) - config_file { + file { # include main, security and backports # additional sources should be included via the apt::sources_list define "/etc/apt/sources.list": content => $custom_sources_list ? { - '' => template( "apt/$operatingsystem/sources.list.erb"), + '' => template( "apt/${::operatingsystem}/sources.list.erb"), default => $custom_sources_list }, require => Package['lsb'], notify => Exec['refresh_apt'], + owner => root, group => 0, mode => 0644; } apt_conf { "02show_upgraded": - source => [ "puppet:///modules/site_apt/${fqdn}/02show_upgraded", + source => [ "puppet:///modules/site_apt/${::fqdn}/02show_upgraded", "puppet:///modules/site_apt/02show_upgraded", "puppet:///modules/apt/02show_upgraded" ] } - if ( $virtual == "vserver" ) { + if ( $::virtual == "vserver" ) { apt_conf { "03clean_vserver": - source => [ "puppet:///modules/site_apt/${fqdn}/03clean_vserver", + source => [ "puppet:///modules/site_apt/${::fqdn}/03clean_vserver", "puppet:///modules/site_apt/03clean_vserver", "puppet:///modules/apt/03clean_vserver" ], alias => "03clean"; @@ -105,7 +79,7 @@ class apt { } else { apt_conf { "03clean": - source => [ "puppet:///modules/site_apt/${fqdn}/03clean", + source => [ "puppet:///modules/site_apt/${::fqdn}/03clean", "puppet:///modules/site_apt/03clean", "puppet:///modules/apt/03clean" ] } @@ -122,13 +96,6 @@ class apt { } } - # backward compatibility: upgrade from previous versions of this module. - file { - [ "/etc/apt/apt.conf.d/from_puppet", "/etc/apt/apt.conf.d/99from_puppet" ]: - ensure => 'absent', - require => [ Apt_conf['02show_upgraded'], Apt_conf['03clean'] ]; - } - include apt::dot_d_directories ## This package should really always be current diff --git a/manifests/listchanges.pp b/manifests/listchanges.pp index 038d5c9..4194463 100644 --- a/manifests/listchanges.pp +++ b/manifests/listchanges.pp @@ -1,37 +1,16 @@ -class apt::listchanges { - - case $apt_listchanges_version { - '': { $apt_listchanges_version = "present" } - } - - case $apt_listchanges_config { - '': { $apt_listchanges_config = "apt/${operatingsystem}/listchanges_${lsbdistcodename}.erb" } - } - - case $apt_listchanges_frontend { - '': { $apt_listchanges_frontend = "mail" } - } - - case $apt_listchanges_email { - '': { $apt_listchanges_email = "root" } - } - - case $apt_listchanges_confirm { - '': { $apt_listchanges_confirm = "0" } - } - - case $apt_listchanges_saveseen { - '': { $apt_listchanges_saveseen = "/var/lib/apt/listchanges.db" } - } - - case $apt_listchanges_which { - '': { $apt_listchanges_which = "both" } - } - - package { apt-listchanges: ensure => $apt_listchanges_ensure_version } +class apt::listchanges( + $ensure_version = 'installed', + $config = "apt/${::operatingsystem}/listchanges_${::lsbdistcodename}.erb", + $frontend = 'mail', + $email = 'root', + $confirm = '0', + $saveseen = '/var/lib/apt/listchanges.db', + $which = 'both' +){ + package { apt-listchanges: ensure => $ensure_version } file { "/etc/apt/listchanges.conf": - content => template($apt_listchanges_config), + content => template($apt::listchanges::config), mode => 0644, owner => root, group => root, require => Package["apt-listchanges"]; } diff --git a/manifests/preferences.pp b/manifests/preferences.pp index f188149..8f532f8 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -1,10 +1,10 @@ class apt::preferences { concat::fragment{"apt_preferences_header": - content => $custom_preferences ? { - '' => $operatingsystem ? { - 'debian' => template("apt/${operatingsystem}/preferences_${codename}.erb"), - 'ubuntu' => template("apt/${operatingsystem}/preferences_${codename}.erb"), + content => $apt::custom_preferences ? { + '' => $::operatingsystem ? { + 'debian' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), + 'ubuntu' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), }, default => $custom_preferences }, diff --git a/manifests/preseeded_package.pp b/manifests/preseeded_package.pp index d831934..ac9a821 100644 --- a/manifests/preseeded_package.pp +++ b/manifests/preseeded_package.pp @@ -1,12 +1,11 @@ define apt::preseeded_package ($content = "", $ensure = "installed") { - $seedfile = "/var/cache/local/preseeding/$name.seeds" - $real_content = $content ? { - "" => template ( "site_apt/$lsbdistcodename/$name.seeds" ), - default => $content - } + $seedfile = "/var/cache/local/preseeding/${name}.seeds" file { $seedfile: - content => $real_content, + content => $content ? { + "" => template ( "site_apt/${::lsbdistcodename}/${name}.seeds" ), + default => $content + }, mode => 0600, owner => root, group => root, } diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 34d4d31..b5bf829 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -6,10 +6,10 @@ class apt::unattended_upgrades { } 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" ], + source => [ + "puppet:///modules/site_apt/${::lsbdistcodename}/50unattended-upgrades", + "puppet:///modules/site_apt/50unattended-upgrades", + "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades" ], require => Package['unattended-upgrades'], } diff --git a/manifests/update.pp b/manifests/update.pp index ae992f4..9c773ab 100644 --- a/manifests/update.pp +++ b/manifests/update.pp @@ -3,7 +3,7 @@ class apt::update { exec { 'update_apt': command => '/usr/bin/apt-get update && /usr/bin/apt-get autoclean', require => [ File['/etc/apt/apt.conf.d', '/etc/apt/preferences' ], - Config_file['/etc/apt/sources.list'] ], + File['/etc/apt/sources.list'] ], loglevel => info, # Another Semaphor for all packages to reference alias => "apt_updated" diff --git a/templates/Debian/apticron_lenny.erb b/templates/Debian/apticron_lenny.erb index 9ec1c6d..aad9985 100644 --- a/templates/Debian/apticron_lenny.erb +++ b/templates/Debian/apticron_lenny.erb @@ -2,7 +2,7 @@ # # set EMAIL to a list of addresses which will be notified of impending updates # -EMAIL="<%= apticron_email %>" +EMAIL="<%= scope.lookupvar('apt::apticron::email') %>" # # Set DIFF_ONLY to "1" to only output the difference of the current run @@ -10,22 +10,22 @@ EMAIL="<%= apticron_email %>" # 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 %>" +DIFF_ONLY="<%= scope.lookupvar('apt::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 %>" +LISTCHANGES_PROFILE="<%= scope.lookupvar('apt::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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::system').to_s == "false" -%> +<%= "SYSTEM=\"#{scope.lookupvar('apt::apticron::system')}\"" %> <%- end -%> # @@ -34,8 +34,8 @@ LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" # 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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::ipaddressnum').to_s == "false" -%> +<%= "IPADDRESSNUM=\"#{scope.lookupvar('apt::apticron::ipaddressnum')}\"" %> <%- end -%> # @@ -44,6 +44,7 @@ LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" # "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 -%>
\ No newline at end of file +<%- unless scope.lookupvar('apt::apticron::ipaddresses').to_s == "false" -%> +<%= "IPADDRESSES=\"#{scope.lookupvar('apt::apticron::ipaddresses')}\"" %> +<%- end -%> + diff --git a/templates/Debian/apticron_squeeze.erb b/templates/Debian/apticron_squeeze.erb index b0aa975..580179e 100644 --- a/templates/Debian/apticron_squeeze.erb +++ b/templates/Debian/apticron_squeeze.erb @@ -3,7 +3,8 @@ # set EMAIL to a space separated list of addresses which will be notified of # impending updates # -EMAIL="<%= apticron_email %>" +EMAIL="<%= scope.lookupvar('apt::apticron::email') %>" + # # Set DIFF_ONLY to "1" to only output the difference of the current run @@ -11,51 +12,54 @@ EMAIL="<%= apticron_email %>" # 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 %>" +DIFF_ONLY="<%= scope.lookupvar('apt::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 %>" +LISTCHANGES_PROFILE="<%= scope.lookupvar('apt::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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::system').to_s == "false" -%> +<%= "SYSTEM=\"#{scope.lookupvar('apt::apticron::system')}\"" %> <%- 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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::ipaddressnum').to_s == "false" -%> +<%= "IPADDRESSNUM=\"#{scope.lookupvar('apt::apticron::ipaddressnum')}\"" %> <%- 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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::ipaddresses').to_s == "false" -%> +<%= "IPADDRESSES=\"#{scope.lookupvar('apt::apticron::ipaddresses')}\"" %> <%- 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 %>" +NOTIFY_HOLDS="<%= scope.lookupvar('apt::apticron::notifyholds') %>" # # Set NOTIFY_NEW="0" if you don't want to be notified about packages which @@ -67,12 +71,12 @@ NOTIFY_HOLDS="<%= apticron_notifyholds %>" # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=531002#44 # # NOTIFY_NEW="0" -NOTIFY_NEW="<%= apticron_notifynew %>" +NOTIFY_NEW="<%= scope.lookupvar('apt::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. # # CUSTOM_SUBJECT="" -CUSTOM_SUBJECT="<%= apticron_customsubject %>" +CUSTOM_SUBJECT="<%= scope.lookupvar('apt::apticron::customsubject') %>" diff --git a/templates/Debian/apticron_wheezy.erb b/templates/Debian/apticron_wheezy.erb index ff66d39..d8c8804 100644 --- a/templates/Debian/apticron_wheezy.erb +++ b/templates/Debian/apticron_wheezy.erb @@ -3,7 +3,7 @@ # set EMAIL to a space separated list of addresses which will be notified of # impending updates # -EMAIL="<%= apticron_email %>" +EMAIL="<%= scope.lookupvar('apt::apticron::email') %>" # # Set DIFF_ONLY to "1" to only output the difference of the current run @@ -11,22 +11,22 @@ EMAIL="<%= apticron_email %>" # 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 %>" +DIFF_ONLY="<%= scope.lookupvar('apt::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 %>" +LISTCHANGES_PROFILE="<%= scope.lookupvar('apt::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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::system').to_s == "false" -%> +<%= "SYSTEM=\"#{scope.lookupvar('apt::apticron::system')}\"" %> <%- end -%> # @@ -35,8 +35,8 @@ LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" # 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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::ipaddressnum').to_s == "false" -%> +<%= "IPADDRESSNUM=\"#{scope.lookupvar('apt::apticron::ipaddressnum')}\"" %> <%- end -%> # @@ -45,8 +45,8 @@ LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" # "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 + '"' %> +<%- unless scope.lookupvar('apt::apticron::ipaddresses').to_s == "false" -%> +<%= "IPADDRESSES=\"#{scope.lookupvar('apt::apticron::ipaddresses')}\"" %> <%- end -%> # @@ -55,7 +55,7 @@ LISTCHANGES_PROFILE="<%= apticron_listchanges_profile %>" # listing them as any other package. # # NOTIFY_HOLDS="0" -NOTIFY_HOLDS="<%= apticron_notifyholds %>" +NOTIFY_HOLDS="<%= scope.lookupvar('apt::apticron::notifyholds') %>" # # Set NOTIFY_NEW="0" if you don't want to be notified about packages which @@ -67,7 +67,7 @@ NOTIFY_HOLDS="<%= apticron_notifyholds %>" # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=531002#44 # # NOTIFY_NEW="0" -NOTIFY_NEW="<%= apticron_notifynew %>" +NOTIFY_NEW="<%= scope.lookupvar('apt::apticron::notifynew') %>" # @@ -77,4 +77,4 @@ NOTIFY_NEW="<%= apticron_notifynew %>" # ='[apticron] : package update(s)' # # CUSTOM_SUBJECT="" -CUSTOM_SUBJECT="<%= apticron_customsubject %>" +CUSTOM_SUBJECT="<%= scope.lookupvar('apt::apticron::customsubject') %>" diff --git a/templates/Debian/listchanges_lenny.erb b/templates/Debian/listchanges_lenny.erb index 3624b39..1025dd0 100644 --- a/templates/Debian/listchanges_lenny.erb +++ b/templates/Debian/listchanges_lenny.erb @@ -1,7 +1,7 @@ [apt] -frontend=<%= apt_listchanges_frontend %> -email_address=<%= apt_listchanges_email %> -confirm=<%= apt_listchanges_confirm %> -save_seen=<%= apt_listchanges_saveseen %> -which=<%= apt_listchanges_which %> +frontend=<%= scope.lookupvar('apt::listchanges::frontend') %> +email_address=<%= scope.lookupvar('apt::listchanges::email') %> +confirm=<%= scope.lookupvar('apt::listchanges::confirm') %> +save_seen=<%= scope.lookupvar('apt::listchanges::saveseen') %> +which=<%= scope.lookupvar('apt::listchanges::which') %> diff --git a/templates/Debian/preferences_lenny.erb b/templates/Debian/preferences_lenny.erb index fb80129..4648ce1 100644 --- a/templates/Debian/preferences_lenny.erb +++ b/templates/Debian/preferences_lenny.erb @@ -1,6 +1,6 @@ -Explanation: Debian <%= codename %> +Explanation: Debian <%= scope.lookupvar('::lsbdistcodename') %> Package: * -Pin: release o=Debian,a=<%= release %>,v=<%= release_version %>* +Pin: release o=Debian,a=<%= scope.lookupvar('apt::release') %>,v=<%= scope.lookupvar('apt::release_version') %>* Pin-Priority: 990 Explanation: Debian backports @@ -8,9 +8,9 @@ Package: * Pin: origin backports.debian.org Pin-Priority: 200 -Explanation: Debian <%= next_release %> +Explanation: Debian <%= scope.lookupvar('apt::next_release') %> Package: * -Pin: release o=Debian,a=<%= next_release %> +Pin: release o=Debian,a=<%= scope.lookupvar('apt::next_release') %> Pin-Priority: 2 Explanation: Debian sid diff --git a/templates/Debian/preferences_squeeze.erb b/templates/Debian/preferences_squeeze.erb index fa0849a..e74515e 100644 --- a/templates/Debian/preferences_squeeze.erb +++ b/templates/Debian/preferences_squeeze.erb @@ -1,16 +1,16 @@ -Explanation: Debian <%= codename %> +Explanation: Debian <%= scope.lookupvar('::lsbdistcodename') %> Package: * -Pin: release o=Debian,n=<%= codename %> +Pin: release o=Debian,n=<%= scope.lookupvar('::lsbdistcodename') %> Pin-Priority: 990 -Explanation: Debian <%= codename %>-updates +Explanation: Debian <%= scope.lookupvar('::lsbdistcodename') %>-updates Package: * -Pin: release o=Debian,n=<%= codename %>-updates +Pin: release o=Debian,n=<%= scope.lookupvar('::lsbdistcodename') %>-updates Pin-Priority: 990 -Explanation: Debian <%= next_codename %> +Explanation: Debian <%= scope.lookupvar('apt::next_codename') %> Package: * -Pin: release o=Debian,n=<%= next_codename %> +Pin: release o=Debian,n=<%= scope.lookupvar('apt::next_codename') %> Pin-Priority: 2 Explanation: Debian sid diff --git a/templates/Debian/preferences_wheezy.erb b/templates/Debian/preferences_wheezy.erb index d5c7af8..e8c15d6 100644 --- a/templates/Debian/preferences_wheezy.erb +++ b/templates/Debian/preferences_wheezy.erb @@ -1,11 +1,11 @@ -Explanation: Debian <%= codename %> +Explanation: Debian <%= scope.lookupvar('::lsbdistcodename') %> Package: * -Pin: release o=Debian,n=<%= codename %> +Pin: release o=Debian,n=<%= scope.lookupvar('::lsbdistcodename') %> Pin-Priority: 990 -Explanation: Debian <%= codename %>-updates +Explanation: Debian <%= scope.lookupvar('::lsbdistcodename') %>-updates Package: * -Pin: release o=Debian,n=<%= codename %>-updates +Pin: release o=Debian,n=<%= scope.lookupvar('::lsbdistcodename') %>-updates Pin-Priority: 990 Explanation: Debian sid diff --git a/templates/Debian/sources.list.erb b/templates/Debian/sources.list.erb index b0f490f..ddfcaab 100644 --- a/templates/Debian/sources.list.erb +++ b/templates/Debian/sources.list.erb @@ -1,21 +1,21 @@ # This file is managed by puppet # all local modifications will be overwritten -### Debian current: <%= codename %> +### Debian current: <%= codename = scope.lookupvar('::lsbdistcodename') %> # basic -deb <%= debian_url %> <%= codename %> <%= repos %> -<% if include_src then -%> -deb-src <%= debian_url %> <%= codename %> <%= repos %> +deb <%= debian_url=scope.lookupvar('apt::debian_url') %> <%= codename %> <%= lrepos=scope.lookupvar('apt::real_repos') %> +<% if scope.lookupvar('apt::include_src') -%> +deb-src <%= debian_url %> <%= codename %> <%= lrepos %> <% end -%> # security -<% if (release == "unstable" || release == "experimental") -%> +<% if ((release=scope.lookupvar('apt::release')) == "unstable" || release == "experimental") -%> # There is no security support for <%= release %> <% else -%> -deb <%= security_url %> <%= codename %>/updates <%= repos %> -<% if include_src then -%> -deb-src <%= security_url %> <%= codename %>/updates <%= repos %> +deb <%= security_url=scope.lookupvar('apt::security_url') %> <%= codename %>/updates <%= lrepos %> +<% if include_src -%> +deb-src <%= security_url %> <%= codename %>/updates <%= lrepos %> <% end -%> <% end -%> @@ -23,47 +23,47 @@ deb-src <%= security_url %> <%= codename %>/updates <%= repos %> <% if (release == "testing" || release == "unstable" || release == "experimental") -%> # There is no backports archive for <%= release %> <% else -%> -deb <%= backports_url %> <%= codename %>-backports <%= repos %> -<% if include_src then -%> -deb-src <%= backports_url %> <%= codename %>-backports <%= repos %> +deb <%= backports_url=scope.lookupvar('apt::backports_url') %> <%= codename %>-backports <%= lrepos %> +<% if include_src -%> +deb-src <%= backports_url %> <%= codename %>-backports <%= lrepos %> <% end -%> <% end -%> -<% if use_volatile -%> +<% if use_volatile=scope.lookupvar('apt::use_volatile') -%> # volatile <% if (release == "testing" || release == "unstable" || release == "experimental") -%> # There is no volatile archive for <%= release %> <% else -%> <% if (codename == "lenny" || codename == "etch") -%> -deb <%= volatile_url %> <%= codename %>/volatile <%= repos %> -<% if include_src then -%> -deb-src <%= volatile_url %> <%= codename %>/volatile <%= repos %> +deb <%= volatile_url=scope.lookupvar('apt::volatile_url') %> <%= codename %>/volatile <%= lrepos %> +<% if include_src -%> +deb-src <%= volatile_url %> <%= codename %>/volatile <%= lrepos %> <% end -%> <% else -%> -deb <%= debian_url %> <%= codename %>-updates <%= repos %> -<% if include_src then -%> -deb-src <%= debian_url %> <%= codename %>-updates <%= repos %> +deb <%= debian_url %> <%= codename %>-updates <%= lrepos %> +<% if include_src -%> +deb-src <%= debian_url %> <%= codename %>-updates <%= lrepos %> <% end -%> <% end -%> <% end -%> <% end -%> -<% if use_next_release then -%> -### Debian next: <%= next_codename %> +<% if next_release=scope.lookupvar('apt::use_next_release') -%> +### Debian next: <%= next_codename=scope.lookupvar('apt::next_codename') %> # basic -deb <%= debian_url %> <%= next_codename %> <%= repos %> +deb <%= debian_url %> <%= next_codename %> <%= lrepos %> <% if include_src then -%> -deb-src <%= debian_url %> <%= next_codename %> <%= repos %> +deb-src <%= debian_url %> <%= next_codename %> <%= lrepos %> <% end -%> # security <% if (next_release == "unstable" || next_release == "experimental") -%> # There is no security support for <%= next_release %> <% else -%> -deb <%= security_url %> <%= next_codename %>/updates <%= repos %> +deb <%= security_url %> <%= next_codename %>/updates <%= lrepos %> <% if include_src then -%> -deb-src <%= security_url %> <%= next_codename %>/updates <%= repos %> +deb-src <%= security_url %> <%= next_codename %>/updates <%= lrepos %> <% end -%> <% end -%> @@ -73,14 +73,14 @@ deb-src <%= security_url %> <%= next_codename %>/updates <%= repos %> # There is no volatile archive for <%= next_release %> <% else -%> <% if (next_codename == "lenny" || next_codename == "etch") -%> -deb <%= volatile_url %> <%= next_codename %>/volatile <%= repos %> +deb <%= volatile_url %> <%= next_codename %>/volatile <%= lrepos %> <% if include_src then -%> -deb-src <%= volatile_url %> <%= next_codename %>/volatile <%= repos %> +deb-src <%= volatile_url %> <%= next_codename %>/volatile <%= lrepos %> <% end -%> <% else -%> -deb <%= debian_url %> <%= next_codename %>-updates <%= repos %> +deb <%= debian_url %> <%= next_codename %>-updates <%= lrepos %> <% if include_src then -%> -deb-src <%= debian_url %> <%= next_codename %>-updates <%= repos %> +deb-src <%= debian_url %> <%= next_codename %>-updates <%= lrepos %> <% end -%> <% end -%> <% end -%> diff --git a/templates/Ubuntu/preferences_maverick.erb b/templates/Ubuntu/preferences_maverick.erb index 30d3ec6..6f6ea45 100644 --- a/templates/Ubuntu/preferences_maverick.erb +++ b/templates/Ubuntu/preferences_maverick.erb @@ -1,26 +1,26 @@ -Explanation: Ubuntu <%= codename %> security +Explanation: Ubuntu <%= scope.lookupvar('::lsbdistcodename') %> security Package: * -Pin: release o=Ubuntu,a=<%= codename %>-security +Pin: release o=Ubuntu,a=<%= scope.lookupvar('::lsbdistcodename') %>-security Pin-Priority: 990 -Explanation: Ubuntu <%= codename %> updates +Explanation: Ubuntu <%= scope.lookupvar('::lsbdistcodename') %> updates Package: * -Pin: release o=Ubuntu,a=<%= codename %>-updates +Pin: release o=Ubuntu,a=<%= scope.lookupvar('::lsbdistcodename') %>-updates Pin-Priority: 980 -Explanation: Ubuntu <%= codename %> +Explanation: Ubuntu <%= scope.lookupvar('::lsbdistcodename') %> Package: * -Pin: release o=Ubuntu,a=<%= codename %> +Pin: release o=Ubuntu,a=<%= scope.lookupvar('::lsbdistcodename') %> Pin-Priority: 970 Explanation: Ubuntu backports Package: * -Pin: release a=<%= codename %>-backports +Pin: release a=<%= scope.lookupvar('::lsbdistcodename') %>-backports Pin-Priority: 200 -Explanation: Ubuntu <%= next_release %> +Explanation: Ubuntu <%= scope.lookupvar('apt::next_release') %> Package: * -Pin: release o=Ubuntu,a=<%= next_release %> +Pin: release o=Ubuntu,a=<%= scope.lookupvar('apt::next_release') %> Pin-Priority: 2 Explanation: Ubuntu fallback diff --git a/templates/Ubuntu/sources.list.erb b/templates/Ubuntu/sources.list.erb index b5725f5..ed31fbc 100644 --- a/templates/Ubuntu/sources.list.erb +++ b/templates/Ubuntu/sources.list.erb @@ -1,26 +1,26 @@ # This file is managed by puppet # all local modifications will be overwritten -# basic <%= lsbdistcodename %> -deb <%= ubuntu_url %> <%= lsbdistcodename %> <%= repos %> -<% if include_src then -%> -deb-src <%= ubuntu_url %> <%= lsbdistcodename %> <%= repos %> +# basic <%= lsbdistcodename=scope.lookupvar('::lsbdistcodename') %> +deb <%= ubuntu_url=scope.lookupvar('apt::ubuntu_url') %> <%= lsbdistcodename %> <%= lrepos=scope.lookupvar('apt::real_repos') %> +<% if include_src=scope.lookupvar('apt::include_src') -%> +deb-src <%= ubuntu_url %> <%= lsbdistcodename %> <%= lrepos %> <% end -%> # updates -deb <%= ubuntu_url %> <%= lsbdistcodename %>-updates <%= repos %> -<% if include_src then -%> -deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-updates <%= repos %> +deb <%= ubuntu_url %> <%= lsbdistcodename %>-updates <%= lrepos %> +<% if include_src -%> +deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-updates <%= lrepos %> <% end -%> # security suppport -deb <%= ubuntu_url %> <%= lsbdistcodename %>-security <%= repos %> -<% if include_src then -%> -deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-security <%= repos %> +deb <%= ubuntu_url %> <%= lsbdistcodename %>-security <%= lrepos %> +<% if include_src -%> +deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-security <%= lrepos %> <% end -%> # backports -deb <%= ubuntu_url %> <%= lsbdistcodename %>-backports main <%= repos %> -<% if include_src then -%> -deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-backports <%= repos %> +deb <%= ubuntu_url %> <%= lsbdistcodename %>-backports main <%= lrepos %> +<% if include_src -%> +deb-src <%= ubuntu_url %> <%= lsbdistcodename %>-backports <%= lrepos %> <% end -%> |