Data type: `String`
Specifies a keyserver to provide the GPG key. Valid options: a string containing a domain name or a full URL (http://, https://,
-hkp:// or hkps://).
+hkp:// or hkps://). The hkps:// protocol is currently only supported on Ubuntu 18.04.
Default value: $apt::params::keyserver
Data type: `Pattern[/\A((hkp|hkps|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,5})?$/]`
Specifies a keyserver to provide the GPG key. Valid options: a string containing a domain name or a full URL (http://, https://,
-hkp:// or hkps://).
+hkp:// or hkps://). The hkps:// protocol is currently only supported on Ubuntu 18.04.
Default value: $::apt::keyserver
}
MANIFEST
-hkps_ubuntu_pp = <<-MANIFEST
- apt_key { 'puppetlabs':
- id => '#{PUPPETLABS_GPG_KEY_LONG_ID}',
- ensure => 'present',
- server => 'hkps://keyserver.ubuntu.com',
- }
- MANIFEST
+if fact('operatingsystem') =~ %r{Ubuntu} and fact('operatingsystemrelease') =~ %r{^18\.04}
+ hkps_protocol_supported = true
+else
+ hkps_protocol_supported = false
+end
+
+if hkps_protocol_supported
+ hkps_ubuntu_pp = <<-MANIFEST
+ apt_key { 'puppetlabs':
+ id => '#{PUPPETLABS_GPG_KEY_LONG_ID}',
+ ensure => 'present',
+ server => 'hkps://keyserver.ubuntu.com',
+ }
+ MANIFEST
+end
nonexistant_key_server_pp = <<-MANIFEST
apt_key { 'puppetlabs':
end
end
- context 'with hkps://keyserver.ubuntu.com' do
- it 'works' do
- retry_on_error_matching do
- apply_manifest(hkps_ubuntu_pp, catch_failures: true)
- end
+ if hkps_protocol_supported
+ context 'with hkps://keyserver.ubuntu.com' do
+ it 'works' do
+ retry_on_error_matching do
+ apply_manifest(hkps_ubuntu_pp, catch_failures: true)
+ end
- apply_manifest(hkps_ubuntu_pp, catch_changes: true)
- shell(PUPPETLABS_KEY_CHECK_COMMAND)
+ apply_manifest(hkps_ubuntu_pp, catch_changes: true)
+ shell(PUPPETLABS_KEY_CHECK_COMMAND)
+ end
end
end