X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/8fe918b2f21cce5df41b31dc8f58b34aad65dd57..ac0b810811c4994caa199827c26b7ee9ce8def11:/cookbooks/apt/providers/source.rb diff --git a/cookbooks/apt/providers/source.rb b/cookbooks/apt/providers/source.rb index cce755a63..d3b710b85 100644 --- a/cookbooks/apt/providers/source.rb +++ b/cookbooks/apt/providers/source.rb @@ -25,17 +25,29 @@ 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 - template source_path do + template source_path do source new_resource.template owner "root" group "root" - mode 0644 + mode 0o644 variables :url => new_resource.url end end