X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fsite%2Fmanifests%2Faptrepo.pp;h=e53de75cd23b3b8c547a219e26d04db6584ebc37;hb=a1d397a274083c5e9dfb9d690593e6d65968b264;hp=cea4281e21c81019d1205250c41f9bca3470c8c1;hpb=3ae1d19e3d1e64321475bceed121a37522dd8226;p=mirror%2Fdsa-puppet.git diff --git a/modules/site/manifests/aptrepo.pp b/modules/site/manifests/aptrepo.pp index cea4281e2..e53de75cd 100644 --- a/modules/site/manifests/aptrepo.pp +++ b/modules/site/manifests/aptrepo.pp @@ -1,4 +1,11 @@ -define site::aptrepo ($key = undef, $keyid = undef, $template = undef, $config = undef, $ensure = present) { +define site::aptrepo ( + $url='', + $suite='', + $components=[], + $key = undef, + $keyid = undef, + $ensure = present +) { case $ensure { present: { @@ -31,26 +38,25 @@ define site::aptrepo ($key = undef, $keyid = undef, $template = undef, $config = } } elsif $keyid { exec { "apt-key-del-${keyid}": - command => "apt-key del ${keyid}", + command => "apt-key del ${keyid}", } } } default: { fail ( "Unknown ensure value: '$ensure'" ) } } - if $ensure == present { - if ! ($config or $template) { - fail ( "No configuration found for ${name}" ) - } - if ($config and $template) { - fail ( "Can't specify both config and template for ${name}" ) + case $ensure { + present: { + if !($url and $suite) { + fail ( "Need both url and suite for $name" ) + } } + default: {} } file { "/etc/apt/sources.list.d/${name}.list": ensure => $ensure, - content => template($template), - source => $config, + content => template('site/aptrepo.erb'), notify => Exec['apt-get update'], } }