end
end
+ autorequire(:package) do
+ 'dirmngr'
+ end
+
newparam(:server) do
desc 'The key server to fetch the key from based on the ID. It can either be a domain name or url.'
defaultto :'keyserver.ubuntu.com'
server => $server,
options => $options,
} -> anchor { "apt_key ${id} present": }
-
- case $facts['os']['name'] {
- 'Debian': {
- if versioncmp($facts['os']['release']['major'], '9') >= 0 {
- ensure_packages(['dirmngr'])
- Apt::Key<| title == $title |>
- }
- }
- 'Ubuntu': {
- if versioncmp($facts['os']['release']['full'], '17.04') >= 0 {
- ensure_packages(['dirmngr'])
- Apt::Key<| title == $title |>
- }
- }
- default: { }
- }
}
}
}
MANIFEST
-refresh_check_for_dirmngr_pp = <<-MANIFEST
- package { 'dirmngr':
- ensure => 'present',
- }
-MANIFEST
-
describe 'apt_key' do
before(:each) do
# Delete twice to make sure everything is cleaned
let(:puppetlabs_exp_check_command) { PUPPETLABS_EXP_CHECK_COMMAND }
end
before(:each) do
- if fact('lsbdistcodename') == 'stretch' || fact('lsbdistcodename') == 'bionic'
- # Ensure dirmngr package is installed
- apply_manifest(refresh_check_for_dirmngr_pp, acceptable_exit_codes: [0, 2])
- end
# Delete the Puppet Labs Release Key and install an expired version of the key
apply_manifest(refresh_del_key_pp)
apply_manifest(refresh_pp, catch_failures: true)