X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=manifests%2Fkey.pp;h=70e3e5fd9713fdee72357afb6f14d0ea83626440;hb=9e44e974a970025df09f217bf95b237c2b625845;hp=93cc27dab0b9dd09b1075cde5a66cc556cc2d15a;hpb=d6069a619ce1b30f19014932f81e83f445c846e6;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/manifests/key.pp b/manifests/key.pp index 93cc27d..70e3e5f 100644 --- a/manifests/key.pp +++ b/manifests/key.pp @@ -15,7 +15,8 @@ # characters, optionally prefixed with "0x") or a full key fingerprint (40 hexadecimal characters). # # @param ensure -# Specifies whether the key should exist. Valid options: 'present' and 'absent'. +# Specifies whether the key should exist. Valid options: 'present', 'absent' or 'refreshed'. Using 'refreshed' will make keys auto +# update when they have expired (assuming a new key exists on the key server). # # @param content # Supplies the entire GPG key. Useful in case the key can't be fetched from a remote location and using a file resource is inconvenient. @@ -33,7 +34,7 @@ # define apt::key ( Pattern[/\A(0x)?[0-9a-fA-F]{8}\Z/, /\A(0x)?[0-9a-fA-F]{16}\Z/, /\A(0x)?[0-9a-fA-F]{40}\Z/] $id = $title, - Enum['present', 'absent'] $ensure = present, + Enum['present', 'absent', 'refreshed'] $ensure = present, Optional[String] $content = undef, Optional[Pattern[/\Ahttps?:\/\//, /\Aftp:\/\//, /\A\/\w+/]] $source = undef, Pattern[/\A((hkp|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,5})?$/] $server = $::apt::keyserver, @@ -41,14 +42,15 @@ define apt::key ( ) { case $ensure { - present: { + /^(refreshed|present)$/: { if defined(Anchor["apt_key ${id} absent"]){ fail(translate('key with id %{_id} already ensured as absent'),{'_id' => id}) } if !defined(Anchor["apt_key ${id} present"]) { apt_key { $title: - ensure => $ensure, + ensure => present, + refresh => $ensure == 'refreshed', id => $id, source => $source, content => $content,