aboutsummaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'manifests')
-rw-r--r--manifests/apt_conf_snippet.pp29
-rw-r--r--manifests/init.pp19
-rw-r--r--manifests/proxy-client.pp6
-rw-r--r--manifests/unattended_upgrades.pp11
4 files changed, 48 insertions, 17 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;
+ }
+ }
+}
diff --git a/manifests/init.pp b/manifests/init.pp
index 145bba6..0e4bd5c 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -23,7 +23,8 @@ class apt {
'': {
config_file {
# include main, security and backports
- # additional sources could be included via an array
+ # additional sources should be included via the custom_sources_template
+ # define
"/etc/apt/sources.list":
content => template( "apt/$operatingsystem/sources.list.erb"),
require => Package['lsb'];
@@ -37,11 +38,17 @@ class apt {
}
}
- config_file {
- # little default settings which keep the system sane
- "/etc/apt/apt.conf.d/from_puppet":
- content => "APT::Get::Show-Upgraded true;\nDSelect::Clean $real_apt_clean;\n",
- before => Concatenated_file['/etc/apt/preferences'];
+ # 01autoremove already present by default
+ apt_conf_snippet{ "02show_upgraded":
+ source => ["puppet:///modules/site-apt/${fqdn}/02show_upgraded",
+ "puppet:///modules/site-apt/02show_upgraded",
+ "puppet:///modules/apt/02show_upgraded"]
+ }
+
+ apt_conf_snippet{ "03clean":
+ source => ["puppet:///modules/site-apt/${fqdn}/03clean",
+ "puppet:///modules/site-apt/03clean",
+ "puppet:///modules/apt/03clean"]
}
case $custom_preferences {
diff --git a/manifests/proxy-client.pp b/manifests/proxy-client.pp
index ea0a29c..30bda8a 100644
--- a/manifests/proxy-client.pp
+++ b/manifests/proxy-client.pp
@@ -10,9 +10,7 @@ class apt::proxy-client {
default => $apt_proxy_port
}
- file { "/etc/apt/apt.conf.d/20proxy":
- ensure => present,
- content => "Acquire::http { Proxy \"http://$real_apt_proxy:$real_apt_proxy_port\"; };\n",
- owner => root, group => 0, mode => 0644;
+ apt_conf_snippet { "20proxy":
+ content => template("apt/20proxy.erb"),
}
}
diff --git a/manifests/unattended_upgrades.pp b/manifests/unattended_upgrades.pp
index e1080a0..6a0c685 100644
--- a/manifests/unattended_upgrades.pp
+++ b/manifests/unattended_upgrades.pp
@@ -4,14 +4,11 @@ class apt::unattended_upgrades {
require => undef,
}
- config_file {
- "/etc/apt/apt.conf.d/50unattended-upgrades":
- source => ["puppet:///modules/site-apt/50unattended-upgrades",
- "puppet:///modules/apt/50unattended-upgrades" ],
+ apt_conf_snippet { "50unattended-upgrades":
+ source => ["puppet:///modules/site-apt/50unattended-upgrades",
+ "puppet:///modules/apt/50unattended-upgrades" ],
- # err: Could not run Puppet configuration client: Could not find dependent Config_file[apt_config] for Config_file[/etc/apt/apt.conf.d/50unattended-upgrades] at /etc/puppet/modules/apt/manifests/unattended_upgrades.pp:14
-
- #before => Config_file[apt_config],
+ before => Concatenated_file[apt_config],
require => Package['unattended-upgrades'],
}
}