6 $release = $lsbdistcodename,
9 $required_packages = false,
11 $key_server = 'keyserver.ubuntu.com',
19 fail("lsbdistcodename fact not available: release parameter required")
22 file { "${name}.list":
23 path => "${apt::params::root}/sources.list.d/${name}.list",
28 content => template("apt/source.list.erb"),
33 apt::pin { "${release}": priority => "${pin}" } -> File["${name}.list"]
36 exec { "${name} apt update":
37 command => "${apt::params::provider} update",
38 subscribe => File["${name}.list"],
42 if $required_packages != false {
43 exec { "Required packages: '${required_packages}' for ${name}":
44 command => "${apt::params::provider} -y install ${required_packages}",
45 subscribe => File["${name}.list"],
52 exec { "Add key: ${key} from content for ${name}":
53 command => "/bin/echo '${key_content}' | /usr/bin/apt-key add -",
54 unless => "/usr/bin/apt-key list | /bin/grep '${key}'",
55 before => File["${name}.list"],
58 exec { "Add key: ${key} from ${key_server} for ${name}":
59 command => "/usr/bin/apt-key adv --keyserver ${key_server} --recv-keys ${key}",
60 unless => "/usr/bin/apt-key list | /bin/grep ${key}",
61 before => File["${name}.list"],