+ mode "0755"
+ end
+
+ execute "compile-osmium" do
+ action :nothing
+ command "cmake .. && make"
+ cwd "#{directory}/osmium-tool/build"
+ user "taginfo"
+ group "taginfo"
+ subscribes :run, "git[#{directory}/libosmium]"
+ subscribes :run, "git[#{directory}/osmium-tool]"
+ end
+
+ execute "#{directory}/taginfo/Gemfile" do
+ action :nothing
+ command "bundle#{ruby_version} install"
+ cwd "#{directory}/taginfo"
+ user "root"
+ group "root"
+ subscribes :run, "gem_package[bundler#{ruby_version}]"
+ subscribes :run, "git[#{directory}/taginfo]"
+ notifies :restart, "passenger_application[#{directory}/taginfo/web/public]"
+ end
+
+ %w[taginfo/web/tmp bin data data/old download sources planet planet/log].each do |dir|
+ directory "#{directory}/#{dir}" do
+ owner "taginfo"
+ group "taginfo"
+ mode 0o755
+ end
+ end
+
+ remote_file "#{directory}/planet/planet.pbf" do
+ action :create_if_missing
+ source "https://planet.openstreetmap.org/pbf/planet-latest.osm.pbf"
+ owner "taginfo"
+ group "taginfo"
+ mode 0o644
+ end
+
+ template "#{directory}/bin/update-planet" do
+ source "update-planet.erb"
+ owner "taginfo"
+ group "taginfo"
+ mode 0o755
+ variables :directory => directory
+ end
+
+ template "#{directory}/bin/update-taginfo" do
+ source "update-taginfo.erb"
+ owner "taginfo"
+ group "taginfo"
+ mode 0o755
+ variables :directory => directory
+ end
+
+ template "#{directory}/bin/update" do
+ source "update.erb"
+ owner "taginfo"
+ group "taginfo"
+ mode 0o755
+ variables :name => site_name, :directory => directory
+ end
+
+ passenger_application "#{directory}/taginfo/web/public"
+
+ ssl_certificate site_name do
+ domains [site_name] + site_aliases
+ notifies :reload, "service[apache2]"