Merge pull request #5 from phemmer/systemd-dependencies

export: fix systemd dependencies
This commit is contained in:
dlage
2014-03-17 19:39:14 +00:00
4 changed files with 15 additions and 8 deletions

View File

@@ -1 +1,6 @@
[Unit]
StopWhenUnneeded=true
Wants=<%= process_master_names.join(' ') %>
[Install]
WantedBy=multi-user.target

View File

@@ -13,6 +13,3 @@ StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=%n
KillMode=process
[Install]
WantedBy=<%= app %>-<%= name %>.target

View File

@@ -1,5 +1,3 @@
[Unit]
StopWhenUnneeded=true
[Install]
WantedBy=<%= app %>.target
Wants=<%= process_names.join(' ') %>

View File

@@ -10,16 +10,23 @@ class Foreman::Export::Systemd < Foreman::Export::Base
clean file
end
write_template "systemd/master.target.erb", "#{app}.target", binding
process_master_names = []
engine.each_process do |name, process|
next if engine.formation[name] < 1
write_template "systemd/process_master.target.erb", "#{app}-#{name}.target", binding
process_names = []
1.upto(engine.formation[name]) do |num|
port = engine.port_for(process, num)
write_template "systemd/process.service.erb", "#{app}-#{name}-#{num}.service", binding
process_names << "#{app}-#{name}-#{num}.service"
end
write_template "systemd/process_master.target.erb", "#{app}-#{name}.target", binding
process_master_names << "#{app}-#{name}.target"
end
write_template "systemd/master.target.erb", "#{app}.target", binding
end
end