X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/3a4d52bd4c0f8e6ae7679145846b7bc7845d8ace..551486b41f459c7ecc17735fd78c47583ccf5770:/cookbooks/web/recipes/gpx.rb diff --git a/cookbooks/web/recipes/gpx.rb b/cookbooks/web/recipes/gpx.rb index 10463da89..ecaf854df 100644 --- a/cookbooks/web/recipes/gpx.rb +++ b/cookbooks/web/recipes/gpx.rb @@ -53,18 +53,31 @@ git gpx_directory do notifies :run, "execute[gpx-import-build]", :immediate end -template "/etc/init.d/gpx-import" do - source "init.gpx.erb" - owner "root" - group "root" - mode 0755 - variables :gpx_directory => gpx_directory, - :pid_directory => pid_directory, - :log_directory => log_directory, - :database_host => node[:web][:database_host], - :database_name => "openstreetmap", - :database_username => "gpximport", - :database_password => db_passwords["gpximport"] +systemd_service "gpx-import" do + description "GPX Import Daemon" + after "network.target" + type "forking" + environment_file "GPX_SLEEP_TIME" => "40", + "GPX_PATH_TRACES" => "/store/rails/gpx/traces", + "GPX_PATH_IMAGES" => "/store/rails/gpx/images", + "GPX_PATH_TEMPLATES" => "#{gpx_directory}/templates/", + "GPX_PGSQL_HOST" => node[:web][:database_host], + "GPX_PGSQL_USER" => "gpximport", + "GPX_PGSQL_PASS" => db_passwords["gpximport"], + "GPX_PGSQL_DB" => "openstreetmap", + "GPX_LOG_FILE" => "#{log_directory}/gpx-import.log", + "GPX_PID_FILE" => "#{pid_directory}/gpx-import.pid", + "GPX_MAIL_SENDER" => "bounces@openstreetmap.org" + user "rails" + exec_start "#{gpx_directory}/src/gpx-import" + exec_reload "/bin/kill -HUP $MAINPID" + private_tmp true + private_devices true + protect_system "full" + protect_home true + no_new_privileges true + restart "on-failure" + pid_file "#{pid_directory}/gpx-import.pid" end if %w(database_offline database_readonly gpx_offline).include?(node[:web][:status]) @@ -73,9 +86,9 @@ if %w(database_offline database_readonly gpx_offline).include?(node[:web][:statu end else service "gpx-import" do - action [ :enable, :start ] + action [:enable, :start] supports :restart => true, :reload => true subscribes :restart, "execute[gpx-import-build]" - subscribes :restart, "template[/etc/init.d/gpx-import]" + subscribes :restart, "systemd_service[gpx-import]" end end