diff options
author | Louis-Philippe VĂ©ronneau <pollito@riseup.net> | 2017-02-24 15:18:02 -0500 |
---|---|---|
committer | Louis-Philippe VĂ©ronneau <pollito@riseup.net> | 2017-02-24 15:18:02 -0500 |
commit | 16fa78a4fdc21fc1ce8bb4bcb1788c8007e7c373 (patch) | |
tree | e3c279b7b7e945748e18fa28d586bbc809e73d8c | |
parent | 1c31ee4c7240e192fc933c934bb05ea50537bedd (diff) |
move from monolithic preferences file to multiple preferences.d files
-rw-r--r-- | manifests/preferences.pp | 63 |
1 files changed, 50 insertions, 13 deletions
diff --git a/manifests/preferences.pp b/manifests/preferences.pp index d3eb780..787f46f 100644 --- a/manifests/preferences.pp +++ b/manifests/preferences.pp @@ -1,19 +1,56 @@ class apt::preferences { - $pref_contents = $apt::custom_preferences ? { - '' => $::operatingsystem ? { - 'debian' => template("apt/${::operatingsystem}/preferences.erb"), - 'ubuntu' => template("apt/${::operatingsystem}/preferences_${apt::codename}.erb"), - }, - default => $apt::custom_preferences + if $::operatingsystem == "Debian" { + + file { '/etc/apt/preferences.d/stable': + ensure => present, + alias => 'apt_config', + # only update together + content => template('apt/Debian/stable.erb'), + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; + } + + if $apt::use_volatile { + + file { '/etc/apt/preferences.d/volatile': + ensure => present, + content => template('apt/Debian/volatile.erb'), + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; + } + } + + if $apt::use_lts { + + file { '/etc/apt/preferences.d/lts': + ensure => present, + content => template('apt/Debian/lts.erb'), + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; + } + } + + if ($::debian_nextcodename) and ($::debian_nextcodename != "experimental") { + + file { '/etc/apt/preferences.d/nextcodename': + ensure => present, + content => template('apt/Debian/nextcodename.erb'), + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; + } + } } - 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'; + elsif $::operatingsystem == "Ubuntu" { + + file { '/etc/apt/preferences': + ensure => present, + alias => 'apt_config', + # only update together + content => template("apt/Ubuntu/preferences_${apt::codename}.erb"), + require => File['/etc/apt/sources.list'], + owner => root, group => 0, mode => '0644'; + } } } |