From 54932c9c215154311765a63d41a9d105cfc76c02 Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 5 Jun 2011 14:58:22 +0200 Subject: fix unattended upgrades as we use $lsbdistcodename as source we cannot name the sources which should be used to update "stable". -> Fix it by deploying a per lsbdistcodename configfile. This can also be used as a pre- work for the #2681 shared modules bug. --- manifests/unattended_upgrades.pp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'manifests') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index b90fcbb..3baffad 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -8,8 +8,7 @@ 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" ], + "puppet:///modules/apt/$lsbdistcodename/50unattended-upgrades" ], require => Package['unattended-upgrades'], } -- cgit v1.2.3 From e99f7c8672342c4e00522e6be851a14ae1d56d4d Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 5 Aug 2011 10:57:13 +0200 Subject: migrate concatenated_file to the concat module --- manifests/preferences.pp | 16 ++++++---------- manifests/preferences_snippet.pp | 10 ++++------ 2 files changed, 10 insertions(+), 16 deletions(-) (limited to 'manifests') diff --git a/manifests/preferences.pp b/manifests/preferences.pp index 71ef0a6..f188149 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -1,9 +1,6 @@ class apt::preferences { - include common::moduledir - $apt_preferences_dir = "${common::moduledir::module_dir_path}/apt/preferences" - module_dir{'apt/preferences': } - file { "${apt_preferences_dir}_header": + concat::fragment{"apt_preferences_header": content => $custom_preferences ? { '' => $operatingsystem ? { 'debian' => template("apt/${operatingsystem}/preferences_${codename}.erb"), @@ -11,16 +8,15 @@ class apt::preferences { }, default => $custom_preferences }, + order => 00, + target => '/etc/apt/preferences', } - concatenated_file { '/etc/apt/preferences': - dir => $apt_preferences_dir, - header => "${apt_preferences_dir}_header", - # use Concatenated_file[apt_config] to reference a completed configuration - # See "The Puppet Semaphor" 2007-06-25 on the puppet-users ML + concat{'/etc/apt/preferences': alias => apt_config, # only update together - require => File["/etc/apt/sources.list"]; + require => File["/etc/apt/sources.list"], + owner => root, group => 0, mode => 0644; } } diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp index 4b8e575..bcc12de 100644 --- a/manifests/preferences_snippet.pp +++ b/manifests/preferences_snippet.pp @@ -11,11 +11,9 @@ define apt::preferences_snippet( include apt::preferences - file { "${apt::preferences::apt_preferences_dir}/${name}": + concat::fragment{"apt_preference_${name}": ensure => $ensure, - #TODO this template is somewhat limited - notify => Exec["concat_${apt::preferences::apt_preferences_dir}"], - owner => root, group => 0, mode => 0600; + target => '/etc/apt/preferences', } # This should really work in the same manner as sources_list and apt_conf @@ -23,12 +21,12 @@ define apt::preferences_snippet( # lenny, we can't generalize without going into ugly special-casing. case $source { '': { - File["${apt::preferences::apt_preferences_dir}/${name}"] { + Concat::Fragment[$name]{ content => template("apt/preferences_snippet.erb") } } default: { - File["${apt::preferences::apt_preferences_dir}/${name}"] { + Concat::Fragment[$name]{ source => $source } } -- cgit v1.2.3 From 2b7cfe52f7a1720947e57ba5163546c37712db16 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 5 Aug 2011 11:12:29 +0200 Subject: use the correct name --- manifests/preferences_snippet.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'manifests') diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp index bcc12de..91b3dde 100644 --- a/manifests/preferences_snippet.pp +++ b/manifests/preferences_snippet.pp @@ -21,12 +21,12 @@ define apt::preferences_snippet( # lenny, we can't generalize without going into ugly special-casing. case $source { '': { - Concat::Fragment[$name]{ + Concat::Fragment["apt_preference_${name}"]{ content => template("apt/preferences_snippet.erb") } } default: { - Concat::Fragment[$name]{ + Concat::Fragment["apt_preference_${name}"]{ source => $source } } -- cgit v1.2.3 From 7727549c02c97e6a20dffcbf996bce90c252c793 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 5 Aug 2011 11:22:05 +0200 Subject: use correct references for new concat usage --- manifests/init.pp | 2 +- manifests/unattended_upgrades.pp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index b5be91f..3a816d2 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -167,7 +167,7 @@ class apt { } if $custom_preferences != false { Exec["custom_keys"] { - before => Concatenated_file[apt_config], + before => Concat[apt_config], } } } diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 3baffad..2904f36 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -14,7 +14,7 @@ class apt::unattended_upgrades { if $custom_preferences != false { Apt_conf["50unattended-upgrades"] { - before => Concatenated_file[apt_config], + before => Concat[apt_config], } } } -- cgit v1.2.3 From f1a0eca4662f8c7ec47bfc3d60aa9099c8f9fa77 Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 15 Apr 2012 15:41:58 +0200 Subject: Migrate - in class names to _ In newer puppet releases the old way to name class/modules with a -, won't anymore be supported. --- manifests/cron/dist-upgrade.pp | 23 ----------------------- manifests/cron/dist_upgrade.pp | 23 +++++++++++++++++++++++ manifests/dist_upgrade/initiator.pp | 4 ++-- manifests/init.pp | 12 ++++++------ manifests/preseeded_package.pp | 2 +- manifests/unattended_upgrades.pp | 4 ++-- 6 files changed, 34 insertions(+), 34 deletions(-) delete mode 100644 manifests/cron/dist-upgrade.pp create mode 100644 manifests/cron/dist_upgrade.pp (limited to 'manifests') diff --git a/manifests/cron/dist-upgrade.pp b/manifests/cron/dist-upgrade.pp deleted file mode 100644 index 2568cb7..0000000 --- a/manifests/cron/dist-upgrade.pp +++ /dev/null @@ -1,23 +0,0 @@ -class apt::cron::dist-upgrade inherits apt::cron::base { - - $action = "autoclean -y -dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-confold' -" - - file { "/etc/cron-apt/action.d/3-download": - ensure => absent, - } - - package { "apt-listbugs": ensure => absent } - - config_file { "/etc/cron-apt/action.d/4-dist-upgrade": - content => $action, - require => Package[cron-apt] - } - - config_file { "/etc/cron-apt/config.d/MAILON": - content => "MAILON=upgrade\n", - require => Package[cron-apt] - } - -} diff --git a/manifests/cron/dist_upgrade.pp b/manifests/cron/dist_upgrade.pp new file mode 100644 index 0000000..1c8adb1 --- /dev/null +++ b/manifests/cron/dist_upgrade.pp @@ -0,0 +1,23 @@ +class apt::cron::dist_upgrade inherits apt::cron::base { + + $action = "autoclean -y +dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-confold' +" + + file { "/etc/cron-apt/action.d/3-download": + ensure => absent, + } + + package { "apt-listbugs": ensure => absent } + + config_file { "/etc/cron-apt/action.d/4-dist-upgrade": + content => $action, + require => Package[cron-apt] + } + + config_file { "/etc/cron-apt/config.d/MAILON": + content => "MAILON=upgrade\n", + require => Package[cron-apt] + } + +} diff --git a/manifests/dist_upgrade/initiator.pp b/manifests/dist_upgrade/initiator.pp index 6d57947..571cd51 100644 --- a/manifests/dist_upgrade/initiator.pp +++ b/manifests/dist_upgrade/initiator.pp @@ -10,8 +10,8 @@ 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/${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 960f18d..2ae691f 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -90,23 +90,23 @@ class apt { } apt_conf { "02show_upgraded": - source => [ "puppet:///modules/site-apt/${fqdn}/02show_upgraded", - "puppet:///modules/site-apt/02show_upgraded", + source => [ "puppet:///modules/site_apt/${fqdn}/02show_upgraded", + "puppet:///modules/site_apt/02show_upgraded", "puppet:///modules/apt/02show_upgraded" ] } if ( $virtual == "vserver" ) { apt_conf { "03clean_vserver": - source => [ "puppet:///modules/site-apt/${fqdn}/03clean_vserver", - "puppet:///modules/site-apt/03clean_vserver", + source => [ "puppet:///modules/site_apt/${fqdn}/03clean_vserver", + "puppet:///modules/site_apt/03clean_vserver", "puppet:///modules/apt/03clean_vserver" ], alias => "03clean"; } } else { apt_conf { "03clean": - source => [ "puppet:///modules/site-apt/${fqdn}/03clean", - "puppet:///modules/site-apt/03clean", + source => [ "puppet:///modules/site_apt/${fqdn}/03clean", + "puppet:///modules/site_apt/03clean", "puppet:///modules/apt/03clean" ] } } diff --git a/manifests/preseeded_package.pp b/manifests/preseeded_package.pp index 839f200..d831934 100644 --- a/manifests/preseeded_package.pp +++ b/manifests/preseeded_package.pp @@ -1,7 +1,7 @@ define apt::preseeded_package ($content = "", $ensure = "installed") { $seedfile = "/var/cache/local/preseeding/$name.seeds" $real_content = $content ? { - "" => template ( "site-apt/$lsbdistcodename/$name.seeds" ), + "" => template ( "site_apt/$lsbdistcodename/$name.seeds" ), default => $content } diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 2904f36..2a19983 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -6,8 +6,8 @@ class apt::unattended_upgrades { } apt_conf { "50unattended-upgrades": - source => ["puppet:///modules/site-apt/$lsbdistcodename/50unattended-upgrades", - "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" ], require => Package['unattended-upgrades'], } -- cgit v1.2.3 From 39917fb4dbe21b1673ceabaa1d61180cca9f493b Mon Sep 17 00:00:00 2001 From: mh Date: Tue, 5 Jun 2012 21:31:15 -0300 Subject: new style for 2.7 --- manifests/apticron.pp | 64 +++++++-------------------- manifests/dist_upgrade/initiator.pp | 2 +- manifests/init.pp | 86 ++++++++++++------------------------- manifests/listchanges.pp | 43 +++++-------------- manifests/preferences.pp | 8 ++-- manifests/preseeded_package.pp | 11 +++-- manifests/unattended_upgrades.pp | 7 +-- 7 files changed, 68 insertions(+), 153 deletions(-) (limited to 'manifests') diff --git a/manifests/apticron.pp b/manifests/apticron.pp index 2fe8e44..c578311 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 = hiera('apticron_ensure_version','installed'), + $config = hiera('apticron_config',"apt/${::operatingsystem}/apticron_${::lsbdistcodename}.erb"), + $email = hiera('apticron_email', 'root'), + $diff_only = hiera('apticron_diff_only', '1'), + $listchanges_profile = hiera('apticron_listchanges_profile','apticron'), + $system = hiera('apticron_system',false), + $ipaddressnum = hiera('apticron_ipaddressnum',false), + $ipaddresses = hiera('apticron_ipaddresses', false), + $notifyholds = hiera('apticron_notifyholds', '0'), + $notifynew = hiera('apticron_notifynew', '0'), + $customsubject = hiera('apticron_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/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..4a4b178 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -3,54 +3,29 @@ # Copyright (C) 2007 David Schmitt # 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 = hiera('apt_volatile_enabled',false), + $include_src = hiera('apt_include_src',false), + $use_next_release = hiera('apt_use_next_release'), + $debian_url = hiera('apt_debian_url','http://cdn.debian.net/debian/'), + $security_url = hiera('apt_security_url','http://security.debian.org/'), + $backports_url = hiera('apt_backports_url','http://backports.debian.org/debian-backports/'), + $volatile_url = hiera('apt_volatile_url', 'http://volatile.debian.org/debian-volatile/'), + $ubuntu_url = hiera('apt_ubuntu_url', 'http://archive.ubuntu.com/ubuntu'), + $repos = hiera('apt_repos','auto'), + $custom_preferences = hiera('apt_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,13 +38,13 @@ class apt { include lsb # init $release, $next_release, $codename, $next_codename, $release_version - case $lsbdistcodename { + case $::lsbdistcodename { '': { - $codename = $lsbdistcodename - $release = $lsbdistrelease + $codename = $::lsbdistcodename + $release = $::lsbdistrelease } default: { - $codename = $lsbdistcodename + $codename = $::lsbdistcodename $release = debian_release($codename) } } @@ -82,7 +57,7 @@ class apt { # 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'], @@ -90,14 +65,14 @@ class apt { } 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 +80,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 +97,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..236b629 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 = hiera('apt_listchanges_version','installed'), + $config = hiera('apt_listchanges_config', "apt/${::operatingsystem}/listchanges_${::lsbdistcodename}.erb"), + $frontend = hiera('apt_listchanges_frontend','mail'), + $email = hiera('apt_listchanges_email','root'), + $confirm = hiera('apt_listchanges_confirm','0'), + $saveseen = hiera('pt_listchanges_saveseen','/var/lib/apt/listchanges.db'), + $which = hiera('apt_listchanges_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..dc04713 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_${::codename}.erb"), + 'ubuntu' => template("apt/${::operatingsystem}/preferences_${::codename}.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 2a19983..b5bf829 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -6,9 +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" ], + source => [ + "puppet:///modules/site_apt/${::lsbdistcodename}/50unattended-upgrades", + "puppet:///modules/site_apt/50unattended-upgrades", + "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades" ], require => Package['unattended-upgrades'], } -- cgit v1.2.3 From ac166366d7baa45b74e09974289d9fb2dad38e67 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 8 Jun 2012 12:16:46 -0300 Subject: refactor things for >2.7 --- manifests/init.pp | 10 ++++------ manifests/preferences.pp | 4 ++-- 2 files changed, 6 insertions(+), 8 deletions(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index 4a4b178..a015fc9 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -6,7 +6,7 @@ class apt( $use_volatile = hiera('apt_volatile_enabled',false), $include_src = hiera('apt_include_src',false), - $use_next_release = hiera('apt_use_next_release'), + $use_next_release = hiera('apt_use_next_release',false), $debian_url = hiera('apt_debian_url','http://cdn.debian.net/debian/'), $security_url = hiera('apt_security_url','http://security.debian.org/'), $backports_url = hiera('apt_backports_url','http://backports.debian.org/debian-backports/'), @@ -40,16 +40,14 @@ class apt( # init $release, $next_release, $codename, $next_codename, $release_version case $::lsbdistcodename { '': { - $codename = $::lsbdistcodename $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 { diff --git a/manifests/preferences.pp b/manifests/preferences.pp index dc04713..8f532f8 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -3,8 +3,8 @@ class apt::preferences { concat::fragment{"apt_preferences_header": content => $apt::custom_preferences ? { '' => $::operatingsystem ? { - 'debian' => template("apt/${::operatingsystem}/preferences_${::codename}.erb"), - 'ubuntu' => template("apt/${::operatingsystem}/preferences_${::codename}.erb"), + 'debian' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), + 'ubuntu' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), }, default => $custom_preferences }, -- cgit v1.2.3 From 0e016e968da85a435f1670761bad458aa515c7a5 Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 14 Jun 2012 10:07:29 -0300 Subject: migrate away from hiera stuff --- manifests/apticron.pp | 22 +++++++++++----------- manifests/init.pp | 22 +++++++++++----------- manifests/listchanges.pp | 14 +++++++------- 3 files changed, 29 insertions(+), 29 deletions(-) (limited to 'manifests') diff --git a/manifests/apticron.pp b/manifests/apticron.pp index c578311..ebdd5b5 100644 --- a/manifests/apticron.pp +++ b/manifests/apticron.pp @@ -1,15 +1,15 @@ class apt::apticron( - $ensure_version = hiera('apticron_ensure_version','installed'), - $config = hiera('apticron_config',"apt/${::operatingsystem}/apticron_${::lsbdistcodename}.erb"), - $email = hiera('apticron_email', 'root'), - $diff_only = hiera('apticron_diff_only', '1'), - $listchanges_profile = hiera('apticron_listchanges_profile','apticron'), - $system = hiera('apticron_system',false), - $ipaddressnum = hiera('apticron_ipaddressnum',false), - $ipaddresses = hiera('apticron_ipaddresses', false), - $notifyholds = hiera('apticron_notifyholds', '0'), - $notifynew = hiera('apticron_notifynew', '0'), - $customsubject = hiera('apticron_customsubject','') + $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 } diff --git a/manifests/init.pp b/manifests/init.pp index a015fc9..e35dd2c 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -4,17 +4,17 @@ # See LICENSE for the full license granted to you. class apt( - $use_volatile = hiera('apt_volatile_enabled',false), - $include_src = hiera('apt_include_src',false), - $use_next_release = hiera('apt_use_next_release',false), - $debian_url = hiera('apt_debian_url','http://cdn.debian.net/debian/'), - $security_url = hiera('apt_security_url','http://security.debian.org/'), - $backports_url = hiera('apt_backports_url','http://backports.debian.org/debian-backports/'), - $volatile_url = hiera('apt_volatile_url', 'http://volatile.debian.org/debian-volatile/'), - $ubuntu_url = hiera('apt_ubuntu_url', 'http://archive.ubuntu.com/ubuntu'), - $repos = hiera('apt_repos','auto'), - $custom_preferences = hiera('apt_custom_preferences','') -) { + $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': { $real_repos = $repos ? { diff --git a/manifests/listchanges.pp b/manifests/listchanges.pp index 236b629..4194463 100644 --- a/manifests/listchanges.pp +++ b/manifests/listchanges.pp @@ -1,11 +1,11 @@ class apt::listchanges( - $ensure_version = hiera('apt_listchanges_version','installed'), - $config = hiera('apt_listchanges_config', "apt/${::operatingsystem}/listchanges_${::lsbdistcodename}.erb"), - $frontend = hiera('apt_listchanges_frontend','mail'), - $email = hiera('apt_listchanges_email','root'), - $confirm = hiera('apt_listchanges_confirm','0'), - $saveseen = hiera('pt_listchanges_saveseen','/var/lib/apt/listchanges.db'), - $which = hiera('apt_listchanges_which','both') + $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 } -- cgit v1.2.3 From d47addd2ed9ae6e99423bff736352144cda32832 Mon Sep 17 00:00:00 2001 From: mh Date: Mon, 18 Jun 2012 11:41:04 -0300 Subject: get rid off config_file wrapper --- manifests/cron/dist_upgrade.pp | 10 ++++++---- manifests/cron/download.pp | 10 ++++++---- manifests/init.pp | 3 ++- 3 files changed, 14 insertions(+), 9 deletions(-) (limited to 'manifests') 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..a189995 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": content => "MAILON=changes\n", - require => Package[cron-apt] + require => Package[cron-apt], + owner => root, group => 0, mode => 0644; } } diff --git a/manifests/init.pp b/manifests/init.pp index e35dd2c..509b6d1 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -50,7 +50,7 @@ class apt( $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": @@ -60,6 +60,7 @@ class apt( }, require => Package['lsb'], notify => Exec['refresh_apt'], + owner => root, group => 0, mode => 0644; } apt_conf { "02show_upgraded": -- cgit v1.2.3 From 5d75c10a4d45da76d2c33d2b3cad49dfb948ceec Mon Sep 17 00:00:00 2001 From: mh Date: Mon, 18 Jun 2012 17:10:40 -0300 Subject: fix relations and finally get rid off config_file --- manifests/cron/download.pp | 2 +- manifests/update.pp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'manifests') diff --git a/manifests/cron/download.pp b/manifests/cron/download.pp index a189995..f4e9184 100644 --- a/manifests/cron/download.pp +++ b/manifests/cron/download.pp @@ -14,7 +14,7 @@ dist-upgrade -d -y -o APT::Get::Show-Upgraded=true 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], owner => root, group => 0, mode => 0644; 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" -- cgit v1.2.3 From b528cd0005f263b3d2014cdc44d7461577821343 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Wed, 22 Aug 2012 10:55:25 -0400 Subject: parameterize the apt::proxy_client class --- manifests/proxy_client.pp | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) (limited to 'manifests') diff --git a/manifests/proxy_client.pp b/manifests/proxy_client.pp index 23e9bd1..c284c74 100644 --- a/manifests/proxy_client.pp +++ b/manifests/proxy_client.pp @@ -1,14 +1,7 @@ -class apt::proxy_client { - - $real_apt_proxy = $apt_proxy ? { - "" => "http://localhost", - default => $apt_proxy - } - - $real_apt_proxy_port = $apt_proxy_port ? { - "" => "3142", - default => $apt_proxy_port - } +class apt::proxy_client( + $proxy = 'http://localhost', + $port = '3142', +){ apt_conf { "20proxy": content => template("apt/20proxy.erb"), -- cgit v1.2.3 From 978378623d250a06441650dd969eb01f90891b64 Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Thu, 20 Sep 2012 02:54:26 -0400 Subject: Stop using config_file from the common module This define doesn't add much of a shortcut and imposes a dependency on the "common" module. We'll be better off with the small repetition but less tightly coupled modules. Sadly, the "common" module is still required, but that is going to be the focus of the commit that follows this one. Signed-off-by: Gabriel Filion --- manifests/cron/dist_upgrade.pp | 17 +++++++++-------- manifests/cron/download.pp | 19 ++++++++++--------- manifests/init.pp | 3 ++- 3 files changed, 21 insertions(+), 18 deletions(-) (limited to 'manifests') diff --git a/manifests/cron/dist_upgrade.pp b/manifests/cron/dist_upgrade.pp index 1c8adb1..bd29784 100644 --- a/manifests/cron/dist_upgrade.pp +++ b/manifests/cron/dist_upgrade.pp @@ -10,14 +10,15 @@ 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": - content => $action, - require => Package[cron-apt] - } - - config_file { "/etc/cron-apt/config.d/MAILON": - content => "MAILON=upgrade\n", - require => Package[cron-apt] + file { + "/etc/cron-apt/action.d/4-dist-upgrade": + content => $action, + mode => 0644, owner => root, group => 0, + require => Package[cron-apt]; + "/etc/cron-apt/config.d/MAILON": + content => "MAILON=upgrade\n", + mode => 0644, owner => root, group => 0, + require => Package[cron-apt]; } } diff --git a/manifests/cron/download.pp b/manifests/cron/download.pp index a27967d..5c2d3f9 100644 --- a/manifests/cron/download.pp +++ b/manifests/cron/download.pp @@ -3,19 +3,20 @@ 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": - content => $action, - require => Package[cron-apt] - } - - config_file { "/etc/cron-apt/config.d/MAILON": - content => "MAILON=changes\n", - require => Package[cron-apt] + file { + "/etc/cron-apt/action.d/3-download": + content => $action, + mode => 0644, owner => root, group => 0, + require => Package[cron-apt]; + "/etc/cron-apt/config.d/MAILON": + content => "MAILON=changes\n", + mode => 0644, owner => root, group => 0, + require => Package[cron-apt]; } } diff --git a/manifests/init.pp b/manifests/init.pp index 2ae691f..9ce7330 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -77,7 +77,7 @@ class apt { $next_codename = debian_nextcodename($codename) $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": @@ -85,6 +85,7 @@ class apt { '' => template( "apt/$operatingsystem/sources.list.erb"), default => $custom_sources_list }, + mode => 0644, owner => root, group => 0, require => Package['lsb'], notify => Exec['refresh_apt'], } -- cgit v1.2.3 From 8229505ecb20da114d76a8704f4566483c965f83 Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Thu, 20 Sep 2012 03:55:58 -0400 Subject: Make apt::preferences_snippet place files in /etc/apt/preferences.d Since Debian Squeeze, apt supports a .d directory for preferences (pinning). Simplify management by just placing files inside this .d directory. This removes the need for concat and concat::fragment resources, so removes the dependency on the concat module. It also removes the need for a moduledir that was needed for the concat module magic, so we also get rid of the dependency on the common module. Signed-off-by: Gabriel Filion --- manifests/init.pp | 6 +----- manifests/preferences.pp | 20 +++++++++----------- manifests/preferences_snippet.pp | 12 +++++------- 3 files changed, 15 insertions(+), 23 deletions(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index 9ce7330..3caa376 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -138,10 +138,6 @@ class apt { # backports uses the normal archive key now package { "debian-backports-keyring": ensure => absent } - include common::moduledir - $apt_base_dir = "${common::moduledir::module_dir_path}/apt" - modules_dir { apt: } - if $custom_key_dir { file { "${apt_base_dir}/keys.d": source => "$custom_key_dir", @@ -155,7 +151,7 @@ class apt { } if $custom_preferences != false { Exec["custom_keys"] { - before => Concat[apt_config], + before => File['apt_config'], } } } diff --git a/manifests/preferences.pp b/manifests/preferences.pp index f188149..f766819 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -1,20 +1,18 @@ 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"), - }, - default => $custom_preferences + $pref_contents = $custom_preferences ? { + '' => $operatingsystem ? { + 'debian' => template("apt/${operatingsystem}/preferences_${codename}.erb"), + 'ubuntu' => template("apt/${operatingsystem}/preferences_${codename}.erb"), }, - order => 00, - target => '/etc/apt/preferences', + default => $custom_preferences } - concat{'/etc/apt/preferences': - alias => apt_config, + file { '/etc/apt/preferences': + ensure => present, + alias => 'apt_config', # only update together + content => $pref_contents, require => File["/etc/apt/sources.list"], owner => root, group => 0, mode => 0644; } diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp index 6a8e6bc..1aafe57 100644 --- a/manifests/preferences_snippet.pp +++ b/manifests/preferences_snippet.pp @@ -23,11 +23,9 @@ define apt::preferences_snippet( fail("apt::preferences_snippet requires either a 'pin' or 'release' argument, not both") } - include apt::preferences - - concat::fragment{"apt_preference_${name}": + file { "/etc/apt/preferences.d/${name}": ensure => $ensure, - target => '/etc/apt/preferences', + owner => root, group => 0, mode => 0644; } # This should really work in the same manner as sources_list and apt_conf @@ -37,19 +35,19 @@ define apt::preferences_snippet( '': { case $release { '': { - Concat::Fragment["apt_preference_${name}"]{ + File["/etc/apt/preferences.d/${name}"]{ content => template("apt/preferences_snippet.erb") } } default: { - Concat::Fragment["apt_preference_${name}"]{ + File["/etc/apt/preferences.d/${name}"]{ content => template("apt/preferences_snippet_release.erb") } } } } default: { - Concat::Fragment["apt_preference_${name}"]{ + File["/etc/apt/preferences.d/${name}"]{ source => $source } } -- cgit v1.2.3 From 9d7b48e37cfcf6815ab247b67dd52fdd7c29691e Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Thu, 20 Sep 2012 04:00:38 -0400 Subject: Define an alias when enforcing absence of /etc/apt/preferences This ensures that resources that set a dependecy on the "File['apt_config']" file, as mentioned in the README, can always resolve. Signed-off-by: Gabriel Filion --- manifests/preferences/absent.pp | 1 + 1 file changed, 1 insertion(+) (limited to 'manifests') diff --git a/manifests/preferences/absent.pp b/manifests/preferences/absent.pp index 0e96119..68ab400 100644 --- a/manifests/preferences/absent.pp +++ b/manifests/preferences/absent.pp @@ -1,6 +1,7 @@ class apt::preferences::absent { file { '/etc/apt/preferences': + alias => 'apt_config', ensure => absent, } } -- cgit v1.2.3 From 07a031f2050deecfefa205e1e0c63586692a06ff Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Wed, 5 Dec 2012 13:46:23 -0500 Subject: fix for $lsbdistcodename regression introduced by ac166366d7baa45b74e09974289d9fb2dad38e67 What happened here was the $codename = $::lsbdistcodename was removed from init.pp and replaced with just $::lsbdistcodename whereever $codename was used. Then in the sources.list.erb and preferences files things were changed like this:
+### Debian current: <%= codename = scope.lookupvar('::lsbdistcodename') %>
...
-deb <%= debian_url %> <%= codename %> <%= repos %>
...
+deb <%= debian_url=scope.lookupvar('apt::debian_url') %> <%= codename %> <%= repos=scope.lookupvar('apt::repos') %>
This meant that the codename was always set to lsbdistcodename, and you because in newer puppet versions you cannot assign a value to a top-level facter variable, it is not possible to change this. Because we cannot change $lsbdistcodename, we have to fix this by allowing the user to pass a different, non-top-level scoped variable to the class as a parameter, which defaults to $::lsbdistcodename, so that upgrades can be triggered. This is documented in the README in an upgrade notice --- manifests/init.pp | 10 ++++++---- manifests/preferences.pp | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index 509b6d1..3de4d9e 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -4,6 +4,7 @@ # See LICENSE for the full license granted to you. class apt( + $codename = '', $use_volatile = false, $include_src = false, $use_next_release = false, @@ -38,16 +39,17 @@ class apt( include lsb # init $release, $next_release, $codename, $next_codename, $release_version - case $::lsbdistcodename { + case $codename { '': { + $codename = $::lsbdistcodename $release = $::lsbdistrelease } default: { - $release = debian_release($::lsbdistcodename) + $release = debian_release($codename) } } - $release_version = debian_release_version($::lsbdistcodename) - $next_codename = debian_nextcodename($::lsbdistcodename) + $release_version = debian_release_version($codename) + $next_codename = debian_nextcodename($codename) $next_release = debian_nextrelease($release) file { diff --git a/manifests/preferences.pp b/manifests/preferences.pp index 8f532f8..e9a74ff 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -3,8 +3,8 @@ class apt::preferences { concat::fragment{"apt_preferences_header": content => $apt::custom_preferences ? { '' => $::operatingsystem ? { - 'debian' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), - 'ubuntu' => template("apt/${::operatingsystem}/preferences_${::lsbdistcodename}.erb"), + 'debian' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"), + 'ubuntu' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"), }, default => $custom_preferences }, -- cgit v1.2.3 From e66823269e7799d88e5f071b32bd3415c1e477ce Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Tue, 18 Dec 2012 16:41:10 -0500 Subject: switch default $debian_url to use http.debian.net which is more accurate and up-to-date than cdn.debian.net --- manifests/init.pp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index 2ae691f..581f058 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -21,7 +21,7 @@ class apt { } $debian_url = $apt_debian_url ? { - '' => 'http://cdn.debian.net/debian/', + '' => 'http://http.debian.net/debian/', default => "${apt_debian_url}", } $security_url = $apt_security_url ? { @@ -68,6 +68,9 @@ class apt { $codename = $lsbdistcodename $release = $lsbdistrelease } + 'n/a': { + fail("Unknown lsbdistcodename reported by facter: '$lsbdistcodename', please fix this by setting this variable in your manifest.") + } default: { $codename = $lsbdistcodename $release = debian_release($codename) -- cgit v1.2.3 From 37e40416d2aa7614cfbcd4330d4cd543f9874093 Mon Sep 17 00:00:00 2001 From: nadir Date: Wed, 19 Dec 2012 18:30:29 +0100 Subject: exec{'apt_dist-upgrade'} just requires Exec['apt_updated'] if apt::disable_update if false --- manifests/dist_upgrade.pp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'manifests') diff --git a/manifests/dist_upgrade.pp b/manifests/dist_upgrade.pp index 47b1cff..ed25b0b 100644 --- a/manifests/dist_upgrade.pp +++ b/manifests/dist_upgrade.pp @@ -7,7 +7,10 @@ class apt::dist_upgrade { exec { 'apt_dist-upgrade': command => "/usr/bin/apt-get -q -y -o 'DPkg::Options::=--force-confold' dist-upgrade", refreshonly => true, - require => Exec['apt_updated'], + require => $apt::disable_update ? { + true => undef, + default => Exec['apt_updated'], + } } } -- cgit v1.2.3 From 09710a29b116427a1bda8641a44d6383975e0844 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Wed, 2 Jan 2013 16:40:26 +0100 Subject: Remove duplicated settings, resulting from wrong merge. --- manifests/init.pp | 1 - 1 file changed, 1 deletion(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index c098ef3..a851011 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -64,7 +64,6 @@ class apt( '' => template( "apt/${::operatingsystem}/sources.list.erb"), default => $custom_sources_list }, - mode => 0644, owner => root, group => 0, require => Package['lsb'], notify => Exec['refresh_apt'], owner => root, group => 0, mode => 0644; -- cgit v1.2.3 From 17f67d9fac83193f4436e82fc6046e065d9ab024 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Wed, 2 Jan 2013 16:54:03 +0100 Subject: Simplify codename handling. Have the codename class parameter default to $::lsbdistcodename, and derive $release from it. --- manifests/init.pp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'manifests') diff --git a/manifests/init.pp b/manifests/init.pp index a851011..5c0738b 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -4,7 +4,7 @@ # See LICENSE for the full license granted to you. class apt( - $codename = '', + $codename = $::lsbdistcodename, $use_volatile = false, $include_src = false, $use_next_release = false, @@ -39,12 +39,8 @@ class apt( include lsb - # init $release, $next_release, $codename, $next_codename, $release_version + # init $release, $next_release, $next_codename, $release_version case $codename { - '': { - $codename = $::lsbdistcodename - $release = $::lsbdistrelease - } 'n/a': { fail("Unknown lsbdistcodename reported by facter: '$lsbdistcodename', please fix this by setting this variable in your manifest.") } -- cgit v1.2.3 From ded81d8edcc9a7cc8275a68f669fde896379b12e Mon Sep 17 00:00:00 2001 From: Gabriel Filion Date: Wed, 2 Jan 2013 08:12:11 -0500 Subject: Apply code style corrections from puppet-lint Signed-off-by: Gabriel Filion + more linting by intrigeri. Conflicts: manifests/apticron.pp manifests/cron/dist_upgrade.pp manifests/cron/download.pp manifests/dist_upgrade/initiator.pp manifests/init.pp manifests/listchanges.pp manifests/preferences.pp manifests/preseeded_package.pp manifests/proxy_client.pp manifests/unattended_upgrades.pp manifests/update.pp --- manifests/apt_conf.pp | 6 ++- manifests/apticron.pp | 10 +++-- manifests/cron/base.pp | 2 +- manifests/cron/dist_upgrade.pp | 22 ++++++----- manifests/cron/download.pp | 14 ++++--- manifests/dist_upgrade.pp | 12 +++--- manifests/dist_upgrade/initiator.pp | 10 ++--- manifests/dot_d_directories.pp | 14 +++---- manifests/dselect.pp | 8 ++-- manifests/init.pp | 75 +++++++++++++++++++++---------------- manifests/listchanges.pp | 12 +++--- manifests/preferences.pp | 14 +++---- manifests/preferences/absent.pp | 2 +- manifests/preferences_snippet.pp | 20 +++++----- manifests/preseeded_package.pp | 26 +++++++------ manifests/proxy_client.pp | 4 +- manifests/reboot_required_notify.pp | 2 +- manifests/sources_list.pp | 6 +-- manifests/unattended_upgrades.pp | 16 ++++---- manifests/update.pp | 7 ++-- manifests/upgrade_package.pp | 28 ++++++++------ 21 files changed, 173 insertions(+), 137 deletions(-) (limited to 'manifests') diff --git a/manifests/apt_conf.pp b/manifests/apt_conf.pp index fe07546..d78fb9b 100644 --- a/manifests/apt_conf.pp +++ b/manifests/apt_conf.pp @@ -19,8 +19,10 @@ define apt::apt_conf( # 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', + notify => Exec['refresh_apt'], } if $source { diff --git a/manifests/apticron.pp b/manifests/apticron.pp index ebdd5b5..54d7b71 100644 --- a/manifests/apticron.pp +++ b/manifests/apticron.pp @@ -12,11 +12,13 @@ class apt::apticron( $customsubject = '' ) { - package { apticron: ensure => $ensure_version } + package { 'apticron': ensure => $ensure_version } - file { "/etc/apticron/apticron.conf": + file { '/etc/apticron/apticron.conf': content => template($apt::apticron::config), - mode => 0644, owner => root, group => root, - require => Package["apticron"]; + owner => root, + group => root, + mode => '0644', + require => Package['apticron']; } } diff --git a/manifests/cron/base.pp b/manifests/cron/base.pp index 7ccfce6..39fc306 100644 --- a/manifests/cron/base.pp +++ b/manifests/cron/base.pp @@ -1,6 +1,6 @@ class apt::cron::base { - package { cron-apt: ensure => installed } + package { 'cron-apt': ensure => installed } case $apt_cron_hours { '': {} diff --git a/manifests/cron/dist_upgrade.pp b/manifests/cron/dist_upgrade.pp index 68460f2..a880a66 100644 --- a/manifests/cron/dist_upgrade.pp +++ b/manifests/cron/dist_upgrade.pp @@ -4,22 +4,26 @@ class apt::cron::dist_upgrade inherits apt::cron::base { dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-confold' " - file { "/etc/cron-apt/action.d/3-download": + file { '/etc/cron-apt/action.d/3-download': ensure => absent, } - package { "apt-listbugs": ensure => absent } + package { 'apt-listbugs': ensure => absent } - file { "/etc/cron-apt/action.d/4-dist-upgrade": + file { '/etc/cron-apt/action.d/4-dist-upgrade': content => $action, - require => Package[cron-apt], - owner => root, group => 0, mode => 0644; + owner => root, + group => 0, + mode => '0644', + require => Package[cron-apt]; } - file { "/etc/cron-apt/config.d/MAILON": - content => "MAILON=upgrade\n", - require => Package[cron-apt], - owner => root, group => 0, mode => 0644; + file { '/etc/cron-apt/config.d/MAILON': + content => 'MAILON=upgrade\n', + owner => root, + group => 0, + mode => '0644', + require => Package[cron-apt]; } } diff --git a/manifests/cron/download.pp b/manifests/cron/download.pp index f4e9184..4a19fec 100644 --- a/manifests/cron/download.pp +++ b/manifests/cron/download.pp @@ -4,20 +4,24 @@ class apt::cron::download inherits apt::cron::base { dist-upgrade -d -y -o APT::Get::Show-Upgraded=true " - file { "/etc/cron-apt/action.d/4-dist-upgrade": + file { '/etc/cron-apt/action.d/4-dist-upgrade': ensure => absent, } - file { "/etc/cron-apt/action.d/3-download": + file { '/etc/cron-apt/action.d/3-download': content => $action, require => Package[cron-apt], - owner => root, group => 0, mode => 0644; + owner => root, + group => 0, + mode => '0644'; } - file { "/etc/cron-apt/config.d/MAILON": + file { '/etc/cron-apt/config.d/MAILON': content => "MAILON=changes\n", require => Package[cron-apt], - owner => root, group => 0, mode => 0644; + owner => root, + group => 0, + mode => '0644'; } } diff --git a/manifests/dist_upgrade.pp b/manifests/dist_upgrade.pp index ed25b0b..bf78dcc 100644 --- a/manifests/dist_upgrade.pp +++ b/manifests/dist_upgrade.pp @@ -4,13 +4,15 @@ class apt::dist_upgrade { include apt::update } + $req = $apt::disable_update ? { + true => undef, + default => Exec['apt_updated'], + } + exec { 'apt_dist-upgrade': - command => "/usr/bin/apt-get -q -y -o 'DPkg::Options::=--force-confold' dist-upgrade", + command => '/usr/bin/apt-get -q -y -o \'DPkg::Options::=--force-confold\' dist-upgrade', refreshonly => true, - require => $apt::disable_update ? { - true => undef, - default => Exec['apt_updated'], - } + require => $req } } diff --git a/manifests/dist_upgrade/initiator.pp b/manifests/dist_upgrade/initiator.pp index f1d522b..d238988 100644 --- a/manifests/dist_upgrade/initiator.pp +++ b/manifests/dist_upgrade/initiator.pp @@ -4,15 +4,15 @@ class apt::dist_upgrade::initiator inherits apt::dist_upgrade { $initiator_abs = "${apt::apt_base_dir}/${initiator}" file { 'apt_upgrade_initiator': - mode => 0644, + mode => '0644', owner => root, group => 0, - path => "${initiator_abs}", + path => $initiator_abs, checksum => md5, source => [ - "puppet:///modules/site_apt/${::fqdn}/${initiator}", - "puppet:///modules/site_apt/${initiator}", - "puppet:///modules/apt/${initiator}", + "puppet:///modules/site_apt/${::fqdn}/${initiator}", + "puppet:///modules/site_apt/${initiator}", + "puppet:///modules/apt/${initiator}", ], } diff --git a/manifests/dot_d_directories.pp b/manifests/dot_d_directories.pp index 742aad4..37c3fc8 100644 --- a/manifests/dot_d_directories.pp +++ b/manifests/dot_d_directories.pp @@ -2,20 +2,20 @@ class apt::dot_d_directories { # watch .d directories and ensure they are present file { - "/etc/apt/apt.conf.d": - ensure => directory, + '/etc/apt/apt.conf.d': + ensure => directory, checksum => mtime, - notify => Exec['refresh_apt']; - "/etc/apt/sources.list.d": - ensure => directory, + notify => Exec['refresh_apt']; + '/etc/apt/sources.list.d': + ensure => directory, checksum => mtime, - notify => Exec['refresh_apt']; + notify => Exec['refresh_apt']; } exec { # "&& sleep 1" is workaround for older(?) clients 'refresh_apt': - command => '/usr/bin/apt-get update && sleep 1', + command => '/usr/bin/apt-get update && sleep 1', refreshonly => true, } diff --git a/manifests/dselect.pp b/manifests/dselect.pp index 44f0e19..6feeb9f 100644 --- a/manifests/dselect.pp +++ b/manifests/dselect.pp @@ -1,10 +1,10 @@ class apt::dselect { # suppress annoying help texts of dselect - line { dselect_expert: - file => "/etc/dpkg/dselect.cfg", - line => "expert", + line { 'dselect_expert': + file => '/etc/dpkg/dselect.cfg', + line => 'expert', } - package { dselect: ensure => installed } + package { 'dselect': ensure => installed } } diff --git a/manifests/init.pp b/manifests/init.pp index 5c0738b..020c1cc 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -20,7 +20,7 @@ class apt( case $::operatingsystem { 'debian': { $real_repos = $repos ? { - 'auto' => 'main contrib non-free', + 'auto' => 'main contrib non-free', default => $repos, } } @@ -32,8 +32,8 @@ class apt( } } - package { apt: - ensure => installed, + package { 'apt': + ensure => installed, require => undef, } @@ -42,7 +42,7 @@ class apt( # init $release, $next_release, $next_codename, $release_version case $codename { 'n/a': { - fail("Unknown lsbdistcodename reported by facter: '$lsbdistcodename', please fix this by setting this variable in your manifest.") + fail("Unknown lsbdistcodename reported by facter: '$::lsbdistcodename', please fix this by setting this variable in your manifest.") } default: { $release = debian_release($codename) @@ -52,41 +52,44 @@ class apt( $next_codename = debian_nextcodename($codename) $next_release = debian_nextrelease($release) + $sources_content = $::custom_sources_list ? { + '' => template( "apt/${::operatingsystem}/sources.list.erb"), + default => $::custom_sources_list + } 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"), - default => $custom_sources_list - }, + '/etc/apt/sources.list': + content => $sources_content, require => Package['lsb'], - notify => Exec['refresh_apt'], - owner => root, group => 0, mode => 0644; + notify => Exec['refresh_apt'], + owner => root, + group => 0, + mode => '0644'; } - apt_conf { "02show_upgraded": + apt_conf { '02show_upgraded': source => [ "puppet:///modules/site_apt/${::fqdn}/02show_upgraded", - "puppet:///modules/site_apt/02show_upgraded", - "puppet:///modules/apt/02show_upgraded" ] + 'puppet:///modules/site_apt/02show_upgraded', + 'puppet:///modules/apt/02show_upgraded' ] } - if ( $::virtual == "vserver" ) { - apt_conf { "03clean_vserver": + if ( $::virtual == 'vserver' ) { + apt_conf { '03clean_vserver': source => [ "puppet:///modules/site_apt/${::fqdn}/03clean_vserver", - "puppet:///modules/site_apt/03clean_vserver", - "puppet:///modules/apt/03clean_vserver" ], - alias => "03clean"; + 'puppet:///modules/site_apt/03clean_vserver', + 'puppet:///modules/apt/03clean_vserver' ], + alias => '03clean'; } } else { - apt_conf { "03clean": + apt_conf { '03clean': source => [ "puppet:///modules/site_apt/${::fqdn}/03clean", - "puppet:///modules/site_apt/03clean", - "puppet:///modules/apt/03clean" ] + 'puppet:///modules/site_apt/03clean', + 'puppet:///modules/apt/03clean' ] } } - + case $custom_preferences { false: { include apt::preferences::absent @@ -101,29 +104,35 @@ class apt( include apt::dot_d_directories ## This package should really always be current - package { "debian-archive-keyring": ensure => latest } + package { 'debian-archive-keyring': ensure => latest } # backports uses the normal archive key now - package { "debian-backports-keyring": ensure => absent } + package { 'debian-backports-keyring': ensure => absent } + + include common::moduledir + $apt_base_dir = "${common::moduledir::module_dir_path}/apt" + modules_dir { 'apt': } - if $custom_key_dir { + if $::custom_key_dir { file { "${apt_base_dir}/keys.d": - source => "$custom_key_dir", + source => $::custom_key_dir, recurse => true, - mode => 0755, owner => root, group => root, + owner => root, + group => root, + mode => '0755', } - exec { "custom_keys": - command => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\; && /usr/bin/apt-get update", - subscribe => File["${apt_base_dir}/keys.d"], + exec { 'custom_keys': + command => "find ${apt_base_dir}/keys.d -type f -exec apt-key add '{}' \\; && /usr/bin/apt-get update", + subscribe => File["${apt_base_dir}/keys.d"], refreshonly => true, } if $custom_preferences != false { - Exec["custom_keys"] { + Exec['custom_keys'] { before => File['apt_config'], } } } # workaround for preseeded_package component - file { [ "/var/cache", "/var/cache/local", "/var/cache/local/preseeding" ]: ensure => directory } + file { [ '/var/cache', '/var/cache/local', '/var/cache/local/preseeding' ]: ensure => directory } } diff --git a/manifests/listchanges.pp b/manifests/listchanges.pp index 4194463..0c163ae 100644 --- a/manifests/listchanges.pp +++ b/manifests/listchanges.pp @@ -7,11 +7,13 @@ class apt::listchanges( $saveseen = '/var/lib/apt/listchanges.db', $which = 'both' ){ - package { apt-listchanges: ensure => $ensure_version } - - file { "/etc/apt/listchanges.conf": + package { 'apt-listchanges': ensure => $ensure_version } + + file { '/etc/apt/listchanges.conf': content => template($apt::listchanges::config), - mode => 0644, owner => root, group => root, - require => Package["apt-listchanges"]; + owner => root, + group => root, + mode => '0644', + require => Package['apt-listchanges']; } } diff --git a/manifests/preferences.pp b/manifests/preferences.pp index 66f36a7..9ed24c1 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -1,20 +1,20 @@ class apt::preferences { - $pref_contents = $custom_preferences ? { - '' => $operatingsystem ? { + $pref_contents = $apt::custom_preferences ? { + '' => $::operatingsystem ? { 'debian' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"), 'ubuntu' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"), }, - default => $custom_preferences + default => $apt::custom_preferences } file { '/etc/apt/preferences': - ensure => present, - alias => 'apt_config', + ensure => present, + alias => 'apt_config', # only update together content => $pref_contents, - require => File["/etc/apt/sources.list"], - owner => root, group => 0, mode => 0644; + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; } } diff --git a/manifests/preferences/absent.pp b/manifests/preferences/absent.pp index 68ab400..f32e030 100644 --- a/manifests/preferences/absent.pp +++ b/manifests/preferences/absent.pp @@ -1,7 +1,7 @@ class apt::preferences::absent { file { '/etc/apt/preferences': - alias => 'apt_config', ensure => absent, + alias => 'apt_config', } } diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp index 1aafe57..0bff85c 100644 --- a/manifests/preferences_snippet.pp +++ b/manifests/preferences_snippet.pp @@ -1,11 +1,11 @@ -define apt::preferences_snippet( +define apt::preferences_snippet ( + $priority, $package = false, $ensure = 'present', $source = '', $release = '', - $pin = '', - $priority ) -{ + $pin = '' +) { $real_package = $package ? { false => $name, @@ -13,19 +13,19 @@ define apt::preferences_snippet( } if $custom_preferences == false { - fail("Trying to define a preferences_snippet with \$custom_preferences set to false.") + fail('Trying to define a preferences_snippet with $custom_preferences set to false.') } if !$pin and !$release { - fail("apt::preferences_snippet requires one of the 'pin' or 'release' argument to be set") + fail('apt::preferences_snippet requires one of the \'pin\' or \'release\' argument to be set') } if $pin and $release { - fail("apt::preferences_snippet requires either a 'pin' or 'release' argument, not both") + fail('apt::preferences_snippet requires either a \'pin\' or \'release\' argument, not both') } file { "/etc/apt/preferences.d/${name}": ensure => $ensure, - owner => root, group => 0, mode => 0644; + owner => root, group => 0, mode => '0644'; } # This should really work in the same manner as sources_list and apt_conf @@ -36,12 +36,12 @@ define apt::preferences_snippet( case $release { '': { File["/etc/apt/preferences.d/${name}"]{ - content => template("apt/preferences_snippet.erb") + content => template('apt/preferences_snippet.erb') } } default: { File["/etc/apt/preferences.d/${name}"]{ - content => template("apt/preferences_snippet_release.erb") + content => template('apt/preferences_snippet_release.erb') } } } diff --git a/manifests/preseeded_package.pp b/manifests/preseeded_package.pp index ac9a821..9bca8b1 100644 --- a/manifests/preseeded_package.pp +++ b/manifests/preseeded_package.pp @@ -1,17 +1,21 @@ -define apt::preseeded_package ($content = "", $ensure = "installed") { +define apt::preseeded_package ( + $ensure = 'installed', + $content = '' +) { $seedfile = "/var/cache/local/preseeding/${name}.seeds" + $real_content = $content ? { + '' => template ( "site_apt/${::lsbdistcodename}/${name}.seeds" ), + default => $content + } file { $seedfile: - content => $content ? { - "" => template ( "site_apt/${::lsbdistcodename}/${name}.seeds" ), - default => $content - }, - mode => 0600, owner => root, group => root, - } + content => $real_content, + mode => '0600', owner => root, group => root, + } package { $name: - ensure => $ensure, + ensure => $ensure, responsefile => $seedfile, - require => File[$seedfile], - } -} + require => File[$seedfile], + } +} diff --git a/manifests/proxy_client.pp b/manifests/proxy_client.pp index c284c74..9ba79f2 100644 --- a/manifests/proxy_client.pp +++ b/manifests/proxy_client.pp @@ -3,7 +3,7 @@ class apt::proxy_client( $port = '3142', ){ - apt_conf { "20proxy": - content => template("apt/20proxy.erb"), + apt_conf { '20proxy': + content => template('apt/20proxy.erb'), } } diff --git a/manifests/reboot_required_notify.pp b/manifests/reboot_required_notify.pp index 3603aa2..722e8a5 100644 --- a/manifests/reboot_required_notify.pp +++ b/manifests/reboot_required_notify.pp @@ -3,7 +3,7 @@ class apt::reboot_required_notify { # This package installs the script that created /var/run/reboot-required*. # This script (/usr/share/update-notifier/notify-reboot-required) is # triggered e.g. by kernel packages. - package { update-notifier-common: + package { 'update-notifier-common': ensure => installed, } diff --git a/manifests/sources_list.pp b/manifests/sources_list.pp index 499116d..00f6097 100644 --- a/manifests/sources_list.pp +++ b/manifests/sources_list.pp @@ -1,8 +1,8 @@ define apt::sources_list ( $ensure = 'present', $source = '', - $content = undef ) -{ + $content = undef +) { if $source == '' and $content == undef { fail("One of \$source or \$content must be specified for apt_sources_snippet ${name}") @@ -18,7 +18,7 @@ define apt::sources_list ( # 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'], } diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index b5bf829..37e8321 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -1,21 +1,21 @@ class apt::unattended_upgrades { package { 'unattended-upgrades': - ensure => present, + ensure => present, require => undef, } - apt_conf { "50unattended-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/site_apt/${::lsbdistcodename}/50unattended-upgrades", + 'puppet:///modules/site_apt/50unattended-upgrades', + "puppet:///modules/apt/${::lsbdistcodename}/50unattended-upgrades" ], require => Package['unattended-upgrades'], } - if $custom_preferences != false { - Apt_conf["50unattended-upgrades"] { - before => Concat[apt_config], + if $apt::custom_preferences != false { + Apt_conf['50unattended-upgrades'] { + before => Concat['apt_config'], } } } diff --git a/manifests/update.pp b/manifests/update.pp index 9c773ab..3f45125 100644 --- a/manifests/update.pp +++ b/manifests/update.pp @@ -2,11 +2,12 @@ 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' ], - File['/etc/apt/sources.list'] ], + require => [ + File['/etc/apt/apt.conf.d', '/etc/apt/preferences' ], + File['/etc/apt/sources.list'] ], loglevel => info, # Another Semaphor for all packages to reference - alias => "apt_updated" + alias => 'apt_updated' } } diff --git a/manifests/upgrade_package.pp b/manifests/upgrade_package.pp index 2ce6932..d607150 100644 --- a/manifests/upgrade_package.pp +++ b/manifests/upgrade_package.pp @@ -1,7 +1,9 @@ -define apt::upgrade_package ($version = "") { +define apt::upgrade_package ( + $version = '' +) { - if $apt::disable_update == false { - include apt::update + if $apt::disable_update == false { + include apt::update } $version_suffix = $version ? { @@ -12,25 +14,29 @@ define apt::upgrade_package ($version = "") { if !defined(Package['apt-show-versions']) { package { 'apt-show-versions': - ensure => installed, + ensure => installed, require => undef, } } if !defined(Package['dctrl-tools']) { package { 'dctrl-tools': - ensure => installed, + ensure => installed, require => undef, } } + $req = $apt::disable_update ? { + true => Package['apt-show-versions', 'dctrl-tools'], + default => [ + Exec['apt_updated'], + Package['apt-show-versions', 'dctrl-tools'] + ], + } + exec { "apt-get -q -y -o 'DPkg::Options::=--force-confold' install ${name}${version_suffix}": - onlyif => [ "grep-status -F Status installed -a -P $name -q", "apt-show-versions -u $name | grep -q upgradeable" ], - require => $apt::disable_update ? { - true => Package['apt-show-versions', 'dctrl-tools'], - default => [ Exec['apt_updated'], - Package['apt-show-versions', 'dctrl-tools'] ], - } + onlyif => [ "grep-status -F Status installed -a -P $name -q", "apt-show-versions -u $name | grep -q upgradeable" ], + require => $req } } -- cgit v1.2.3 From 1fe1fe66c3f75987833756ff22427af4821b3700 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Thu, 3 Jan 2013 19:57:44 +0100 Subject: Fix overzealous linting. We do want to see \n expanded in this string. --- manifests/cron/dist_upgrade.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifests') diff --git a/manifests/cron/dist_upgrade.pp b/manifests/cron/dist_upgrade.pp index a880a66..74403bb 100644 --- a/manifests/cron/dist_upgrade.pp +++ b/manifests/cron/dist_upgrade.pp @@ -19,7 +19,7 @@ dist-upgrade -y -o APT::Get::Show-Upgraded=true -o 'DPkg::Options::=--force-conf } file { '/etc/cron-apt/config.d/MAILON': - content => 'MAILON=upgrade\n', + content => "MAILON=upgrade\n", owner => root, group => 0, mode => '0644', -- cgit v1.2.3 From 2fe3df225c1144d108a7f33f90344310b55687a4 Mon Sep 17 00:00:00 2001 From: Micah Anderson Date: Thu, 3 Jan 2013 14:55:55 -0500 Subject: replace a missed Concat reference change with File['apt_config'] --- manifests/unattended_upgrades.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'manifests') diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp index 37e8321..d2a2352 100644 --- a/manifests/unattended_upgrades.pp +++ b/manifests/unattended_upgrades.pp @@ -15,7 +15,7 @@ class apt::unattended_upgrades { if $apt::custom_preferences != false { Apt_conf['50unattended-upgrades'] { - before => Concat['apt_config'], + before => File['apt_config'], } } } -- cgit v1.2.3 From 14670466be5eceba043e697d5f6f0f0ada9d5b07 Mon Sep 17 00:00:00 2001 From: intrigeri Date: Tue, 8 Jan 2013 18:13:23 +0100 Subject: Don't check for source / content to be set when removing an APT source. Else, the sanity checks prevent one from using a simple apt::sources_list { "sid.list": ensure => absent } --- manifests/sources_list.pp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'manifests') diff --git a/manifests/sources_list.pp b/manifests/sources_list.pp index 00f6097..3367f83 100644 --- a/manifests/sources_list.pp +++ b/manifests/sources_list.pp @@ -4,11 +4,13 @@ define apt::sources_list ( $content = undef ) { - if $source == '' and $content == undef { - fail("One of \$source or \$content must be specified for apt_sources_snippet ${name}") - } - if $source != '' and $content != undef { - fail("Only one of \$source or \$content must specified for apt_sources_snippet ${name}") + if $ensure == 'present' { + if $source == '' and $content == undef { + fail("One of \$source or \$content must be specified for apt_sources_snippet ${name}") + } + if $source != '' and $content != undef { + fail("Only one of \$source or \$content must specified for apt_sources_snippet ${name}") + } } include apt::dot_d_directories -- cgit v1.2.3