X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/aff3fbe6802d93a8deae8fa2637589c8d28f6681..ac0b810811c4994caa199827c26b7ee9ce8def11:/cookbooks/apt/providers/source.rb?ds=sidebyside diff --git a/cookbooks/apt/providers/source.rb b/cookbooks/apt/providers/source.rb index b6a318634..d3b710b85 100644 --- a/cookbooks/apt/providers/source.rb +++ b/cookbooks/apt/providers/source.rb @@ -25,9 +25,21 @@ use_inline_resources action :create do if new_resource.key - execute "apt-key-#{new_resource.key}" do - command "/usr/bin/apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys #{new_resource.key}" - not_if "/usr/bin/apt-key list | /bin/fgrep -q #{new_resource.key}" + execute "apt-key-#{new_resource.key}-clean" do + command "/usr/bin/apt-key adv --batch --delete-key --yes #{new_resource.key}" + only_if "/usr/bin/apt-key adv --list-keys #{new_resource.key} | fgrep expired" + end + + if new_resource.key_url + execute "apt-key-#{new_resource.key}-install" do + command "/usr/bin/apt-key adv --fetch-keys #{new_resource.key_url}" + not_if "/usr/bin/apt-key adv --list-keys #{new_resource.key}" + end + else + execute "apt-key-#{new_resource.key}-install" do + command "/usr/bin/apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys #{new_resource.key}" + not_if "/usr/bin/apt-key adv --list-keys #{new_resource.key}" + end end end @@ -35,7 +47,7 @@ action :create do source new_resource.template owner "root" group "root" - mode 0644 + mode 0o644 variables :url => new_resource.url end end