+ mode "644"
+end
+
+template "/usr/local/bin/render-lowzoom" do
+ source "render-lowzoom.erb"
+ owner "root"
+ group "root"
+ mode "755"
+end
+
+systemd_service "render-lowzoom" do
+ description "Render low zoom tiles"
+ condition_path_exists_glob "!/run/update-lowzoom-*"
+ user "tile"
+ exec_start "/usr/local/bin/render-lowzoom"
+ private_tmp true
+ private_devices true
+ private_network true
+ protect_system "full"
+ protect_home true
+ no_new_privileges true
+end
+
+systemd_timer "render-lowzoom" do
+ description "Render low zoom tiles"
+ on_calendar "Sun *-*~07/1 01:00:00"
+end
+
+service "render-lowzoom.timer" do
+ action [:enable, :start]
+end
+
+package "liblockfile-simple-perl"
+package "libfilesys-df-perl"
+
+template "/usr/local/bin/cleanup-tiles" do
+ source "cleanup-tiles.erb"
+ owner "root"
+ group "root"
+ mode "755"
+end
+
+tile_directories = node[:tile][:styles].collect do |_, style|
+ style[:tile_directories].collect { |directory| directory[:name] }
+end.flatten.sort.uniq
+
+tile_directories.each do |directory|
+ label = directory.gsub("/", "-")
+
+ cron_d "cleanup-tiles#{label}" do
+ minute "0"
+ user "www-data"
+ command "ionice -c 3 /usr/local/bin/cleanup-tiles #{directory}"
+ mailto "admins@openstreetmap.org"
+ end