aboutsummaryrefslogtreecommitdiff
path: root/manifests/apt_conf_snippet.pp
diff options
context:
space:
mode:
authorGabriel Filion <lelutin@gmail.com>2010-10-24 09:07:34 -0400
committerGabriel Filion <lelutin@gmail.com>2010-10-24 09:17:09 -0400
commitac76a5d52df78aec919f08334ca5b140902a9298 (patch)
treea5eacd9b7edb4213a61b8e569be93bf2bf6b24b6 /manifests/apt_conf_snippet.pp
parente22029433aa82817fb4cfcb9281991b5bd526c09 (diff)
downloadpuppet-apt-ac76a5d52df78aec919f08334ca5b140902a9298.tar.gz
puppet-apt-ac76a5d52df78aec919f08334ca5b140902a9298.tar.bz2
Add apt_conf_snippet and use it where possible
With the new define, it's easy to add an apt.conf snippet in apt.conf.d It accepts either 'sources' to get a static file or 'content' to define content inline or with the help of a template. Put it to use where we create files in apt.conf.d Finally, fix the dependancy to the apt_config file (however, I don't see the need for this dependancy) Signed-off-by: Gabriel Filion <lelutin@gmail.com>
Diffstat (limited to 'manifests/apt_conf_snippet.pp')
-rw-r--r--manifests/apt_conf_snippet.pp29
1 files changed, 29 insertions, 0 deletions
diff --git a/manifests/apt_conf_snippet.pp b/manifests/apt_conf_snippet.pp
new file mode 100644
index 0000000..77b88ae
--- /dev/null
+++ b/manifests/apt_conf_snippet.pp
@@ -0,0 +1,29 @@
+define apt::apt_conf_snippet(
+ $ensure = 'present',
+ $source = '',
+ $content = undef
+){
+ if $source == '' and $content == undef {
+ fail("One of \$source or \$content must be specified for apt_conf_snippet ${name}")
+ }
+ if $source != '' and $content != undef {
+ fail("Only one of \$source or \$content must specified for apt_conf_snippet ${name}")
+ }
+
+ if $source {
+ file { "/etc/apt/apt.conf.d/${name}":
+ ensure => $ensure,
+ source => $source,
+ notify => Exec["refresh_apt"],
+ owner => root, group => 0, mode => 0600;
+ }
+ }
+ else {
+ file { "/etc/apt/apt.conf.d/${name}":
+ ensure => $ensure,
+ content => $content,
+ notify => Exec["refresh_apt"],
+ owner => root, group => 0, mode => 0600;
+ }
+ }
+}