diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2011-02-14 14:11:19 -0200 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2011-02-14 14:11:19 -0200 |
commit | 1203852923594064e61fcfa0e4bf35f72000175d (patch) | |
tree | a2e24e5555da35cef04a6929a7669663d60c1311 /manifests/preferences_snippet.pp | |
parent | b9d11f17fff581fc854823e22a50539fc9e6ace3 (diff) | |
parent | 045e1fc748c83b55ce03c5cb2aa0a8ae29904975 (diff) | |
download | puppet-apt-1203852923594064e61fcfa0e4bf35f72000175d.tar.gz puppet-apt-1203852923594064e61fcfa0e4bf35f72000175d.tar.bz2 |
Merge branch 'master' of git://labs.riseup.net/shared-apt
Conflicts:
manifests/init.pp
templates/sources.list.backports.erb
Diffstat (limited to 'manifests/preferences_snippet.pp')
-rw-r--r-- | manifests/preferences_snippet.pp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/manifests/preferences_snippet.pp b/manifests/preferences_snippet.pp new file mode 100644 index 0000000..4b8e575 --- /dev/null +++ b/manifests/preferences_snippet.pp @@ -0,0 +1,36 @@ +define apt::preferences_snippet( + $ensure = 'present', + $source = '', + $release, + $priority ) +{ + + if $custom_preferences == false { + fail("Trying to define a preferences_snippet with \$custom_preferences set to false.") + } + + include apt::preferences + + file { "${apt::preferences::apt_preferences_dir}/${name}": + ensure => $ensure, + #TODO this template is somewhat limited + notify => Exec["concat_${apt::preferences::apt_preferences_dir}"], + owner => root, group => 0, mode => 0600; + } + + # This should really work in the same manner as sources_list and apt_conf + # snippets, but since the preferences.d directory cannot be used in Debian + # lenny, we can't generalize without going into ugly special-casing. + case $source { + '': { + File["${apt::preferences::apt_preferences_dir}/${name}"] { + content => template("apt/preferences_snippet.erb") + } + } + default: { + File["${apt::preferences::apt_preferences_dir}/${name}"] { + source => $source + } + } + } +} |