summaryrefslogtreecommitdiff
path: root/pkg/systemdgen/systemdgen.go
diff options
context:
space:
mode:
authorDanila Kiver <danila.kiver@mail.ru>2019-07-04 03:58:37 +0300
committerDanila Kiver <danila.kiver@mail.ru>2019-07-04 03:58:37 +0300
commita54429cf877e899eb1516e3ee71ae9c6eedd7c5a (patch)
treefe676086d21daefe2f1650efbbe7bd2cd7fa1217 /pkg/systemdgen/systemdgen.go
parentf5593d305f68409cf093ea6b66a9d1f121ec0fd6 (diff)
downloadpodman-a54429cf877e899eb1516e3ee71ae9c6eedd7c5a.tar.gz
podman-a54429cf877e899eb1516e3ee71ae9c6eedd7c5a.tar.bz2
podman-a54429cf877e899eb1516e3ee71ae9c6eedd7c5a.zip
Use conmon pidfile in generated systemd unit as PIDFile.
By default, podman points PIDFile in generated unit file to non-existent location. As a result, the unit file, generated by podman, is broken: an attempt to start this unit without prior modification results in a crash, because systemd can not find the pidfile of service's main process. Fix the value of "PIDFile" and add a system test for this case. Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
Diffstat (limited to 'pkg/systemdgen/systemdgen.go')
-rw-r--r--pkg/systemdgen/systemdgen.go5
1 files changed, 2 insertions, 3 deletions
diff --git a/pkg/systemdgen/systemdgen.go b/pkg/systemdgen/systemdgen.go
index 3d1c31b5d..fb91b3e82 100644
--- a/pkg/systemdgen/systemdgen.go
+++ b/pkg/systemdgen/systemdgen.go
@@ -2,7 +2,6 @@ package systemdgen
import (
"fmt"
- "path/filepath"
"github.com/pkg/errors"
)
@@ -33,11 +32,11 @@ func ValidateRestartPolicy(restart string) error {
// CreateSystemdUnitAsString takes variables to create a systemd unit file used to control
// a libpod container
-func CreateSystemdUnitAsString(name, cid, restart, pidPath string, stopTimeout int) (string, error) {
+func CreateSystemdUnitAsString(name, cid, restart, pidFile string, stopTimeout int) (string, error) {
if err := ValidateRestartPolicy(restart); err != nil {
return "", err
}
- pidFile := filepath.Join(pidPath, fmt.Sprintf("%s.pid", cid))
+
unit := fmt.Sprintf(template, name, restart, name, stopTimeout, name, pidFile)
return unit, nil
}