X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/a62943629fc45519becfbd66176c9238acbeacbd..5dcf5ef21d1ba91a71b5497f2c9745620a6008d0:/cookbooks/dns/recipes/default.rb diff --git a/cookbooks/dns/recipes/default.rb b/cookbooks/dns/recipes/default.rb index 601d50b8b..04d2fe343 100644 --- a/cookbooks/dns/recipes/default.rb +++ b/cookbooks/dns/recipes/default.rb @@ -39,12 +39,26 @@ package %w[ lockfile-progs ] -remote_file "/usr/local/bin/dnscontrol" do - action :create - source "https://github.com/StackExchange/dnscontrol/releases/download/v3.4.2/dnscontrol-Linux" +cache_dir = Chef::Config[:file_cache_path] + +dnscontrol_version = "3.19.0" + +remote_file "#{cache_dir}/dnscontrol_amd64.deb" do + source "https://github.com/StackExchange/dnscontrol/releases/download/v#{dnscontrol_version}/dnscontrol_#{dnscontrol_version}_amd64.deb" owner "root" group "root" - mode "755" + mode "644" + backup false +end + +dpkg_package "dnscontrol" do + action :nothing + source "#{cache_dir}/dnscontrol_amd64.deb" + subscribes :install, "remote_file[#{cache_dir}/dnscontrol_amd64.deb]" +end + +file "/usr/local/bin/dnscontrol" do + action :delete end directory "/srv/dns.openstreetmap.org" do @@ -128,6 +142,15 @@ template "/var/lib/dns/creds.json" do variables :passwords => passwords end +template "/var/lib/dns/include/geo.js" do + source "geo.js.erb" + owner "git" + group "git" + mode "440" + variables :geoservers => geoservers + only_if { ::Dir.exist?("/var/lib/dns/include") } +end + cookbook_file "#{node[:dns][:repository]}/hooks/post-receive" do source "post-receive" owner "git"