mirror of
https://github.com/kardianos/service.git
synced 2025-10-05 08:46:51 +08:00
Systemd/dep (#165)
* support the dependency config for linux systemd * remote the binary file incorrectly added
This commit is contained in:

committed by
Daniel Theophanes

parent
56787a3ea0
commit
0e5bec1b9e
@@ -67,6 +67,9 @@ func main() {
|
||||
Name: "GoServiceExampleLogging",
|
||||
DisplayName: "Go Service Example for Logging",
|
||||
Description: "This is an example Go service that outputs log messages.",
|
||||
Dependencies: []string{
|
||||
"Requires=network.target",
|
||||
"After=network-online.target syslog.target"},
|
||||
}
|
||||
|
||||
prg := &program{}
|
||||
|
@@ -111,7 +111,13 @@ type Config struct {
|
||||
Executable string
|
||||
|
||||
// Array of service dependencies.
|
||||
// Not yet implemented on Linux or OS X.
|
||||
// Not yet fully implemented on Linux or OS X:
|
||||
// 1. Support linux-systemd dependencies, just put each full line as the
|
||||
// element of the string array, such as
|
||||
// "After=network.target syslog.target"
|
||||
// "Requires=syslog.target"
|
||||
// Note, such lines will be directly appended into the [Unit] of
|
||||
// the generated service config file, will not check their correctness.
|
||||
Dependencies []string
|
||||
|
||||
// The following fields are not supported on Windows.
|
||||
|
@@ -228,6 +228,9 @@ func (s *systemd) Restart() error {
|
||||
const systemdScript = `[Unit]
|
||||
Description={{.Description}}
|
||||
ConditionFileIsExecutable={{.Path|cmdEscape}}
|
||||
{{range .Dependencies}}
|
||||
{{.}}
|
||||
{{end}}
|
||||
|
||||
[Service]
|
||||
StartLimitInterval=5
|
||||
|
Reference in New Issue
Block a user