]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/planet/recipes/default.rb
Merge pull request #645 from hdevine825/planetlink
[chef.git] / cookbooks / planet / recipes / default.rb
index b72d4d1c5434fed666563c7d5e61e8c2ae0621d7..b83d3449b88e375d4b9e3f27b4b01cfcf895a1c7 100644 (file)
 
 include_recipe "accounts"
 include_recipe "apache"
+include_recipe "geoipupdate"
+include_recipe "planet::aws"
 include_recipe "munin"
 
 package %w[
-  perl
-  php-cli
+  python3
+  python3-geoip2
 ]
 
-file "/etc/cron.d/planet" do
-  action :delete
-end
-
 remote_directory "/store/planet#html" do
   path "/store/planet"
   source "html"
@@ -38,7 +36,7 @@ remote_directory "/store/planet#html" do
   mode "0755"
   files_owner "root"
   files_group "root"
-  files_mode 0o644
+  files_mode "644"
 end
 
 remote_directory "/store/planet#cgi" do
@@ -46,52 +44,76 @@ remote_directory "/store/planet#cgi" do
   source "cgi"
   owner "root"
   group "root"
-  mode 0o755
+  mode "755"
   files_owner "root"
   files_group "root"
-  files_mode 0o755
+  files_mode "755"
 end
 
 remote_directory node[:planet][:dump][:xml_history_directory] do
   source "history_cgi"
-  owner "www-data"
+  owner "planet"
   group "planet"
-  mode 0o775
+  mode "775"
   files_owner "root"
   files_group "root"
-  files_mode 0o755
+  files_mode "755"
+end
+
+remote_directory "/store/planet/cc-by-sa" do
+  source "ccbysa_cgi"
+  owner "planet"
+  group "planet"
+  mode "775"
+  files_owner "root"
+  files_group "root"
+  files_mode "755"
 end
 
 remote_directory "/store/planet/cc-by-sa/full-experimental" do
   source "ccbysa_history_cgi"
-  owner "www-data"
+  owner "planet"
   group "planet"
-  mode 0o775
+  mode "775"
   files_owner "root"
   files_group "root"
-  files_mode 0o755
+  files_mode "755"
 end
 
 [:xml_directory, :xml_history_directory,
  :pbf_directory, :pbf_history_directory].each do |dir|
   directory node[:planet][:dump][dir] do
-    owner "www-data"
+    owner "planet"
     group "planet"
-    mode 0o775
+    mode "775"
   end
 end
 
 directory "/store/planet/notes" do
-  owner "www-data"
+  owner "planet"
   group "planet"
-  mode 0o775
+  mode "775"
+end
+
+directory "/store/planet/statistics" do
+  owner "planet"
+  group "planet"
+  mode "775"
 end
 
 template "/usr/local/bin/apache-latest-planet-filename" do
   source "apache-latest-planet-filename.erb"
   owner "root"
   group "root"
-  mode 0o755
+  mode "755"
+  notifies :restart, "service[apache2]"
+end
+
+template "/usr/local/bin/apache-s3-ip2region" do
+  source "apache-s3-ip2region.erb"
+  owner "root"
+  group "root"
+  mode "755"
   notifies :restart, "service[apache2]"
 end
 
@@ -113,21 +135,34 @@ template "/etc/logrotate.d/apache2" do
   source "logrotate.apache.erb"
   owner "root"
   group "root"
-  mode 0o644
+  mode "644"
 end
 
 munin_plugin "planet_age"
 
-template "/usr/local/bin/old-planet-file-cleanup" do
-  source "old-planet-file-cleanup.erb"
+template "/usr/local/bin/planet-file-cleanup" do
+  source "planet-file-cleanup.erb"
   owner "root"
   group "root"
-  mode 0o755
+  mode "755"
 end
 
-template "/etc/cron.d/old-planet-file-cleanup" do
-  source "old-planet-file-cleanup.cron.erb"
-  owner "root"
-  group "root"
-  mode 0o644
+systemd_service "planet-file-cleanup" do
+  description "Cleanup old planet files"
+  exec_start "/usr/local/bin/planet-file-cleanup --debug"
+  user "planet"
+  sandbox true
+  read_write_paths [
+    node[:planet][:dump][:xml_directory],
+    node[:planet][:dump][:pbf_directory]
+  ]
+end
+
+systemd_timer "planet-file-cleanup" do
+  description "Cleanup old planet files"
+  on_calendar "Mon *-*-1..7 03:44"
+end
+
+service "planet-file-cleanup.timer" do
+  action [:enable, :start]
 end