summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValentin Rothberg <rothberg@redhat.com>2020-05-08 10:30:57 +0200
committerValentin Rothberg <rothberg@redhat.com>2020-05-08 10:53:11 +0200
commit676efd89d5ff4eb8f473fbd994809cc263cf504a (patch)
tree05f8b3a453cd83ade0ae174ff54e604adcaeb21a
parentab518cdba02b85a32d3c2bce4c0b65dcdea4dfcc (diff)
downloadpodman-676efd89d5ff4eb8f473fbd994809cc263cf504a.tar.gz
podman-676efd89d5ff4eb8f473fbd994809cc263cf504a.tar.bz2
podman-676efd89d5ff4eb8f473fbd994809cc263cf504a.zip
set --conmon-pidfile
The --conmon-pidfile was not set in the spec leading to failing systemd units. Also add a system test to prevent future regressions. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
-rw-r--r--cmd/podman/common/specgen.go1
-rw-r--r--test/system/030-run.bats16
2 files changed, 17 insertions, 0 deletions
diff --git a/cmd/podman/common/specgen.go b/cmd/podman/common/specgen.go
index 9a2345064..ff7c39de2 100644
--- a/cmd/podman/common/specgen.go
+++ b/cmd/podman/common/specgen.go
@@ -501,6 +501,7 @@ func FillOutSpecGen(s *specgen.SpecGenerator, c *ContainerCLIOpts, args []string
s.CapDrop = c.CapDrop
s.Privileged = c.Privileged
s.ReadOnlyFilesystem = c.ReadOnly
+ s.ConmonPidFile = c.ConmonPIDFile
// TODO
// ouitside of specgen and oci though
diff --git a/test/system/030-run.bats b/test/system/030-run.bats
index 56e9fed3b..d5d5121f8 100644
--- a/test/system/030-run.bats
+++ b/test/system/030-run.bats
@@ -158,4 +158,20 @@ echo $rand | 0 | $rand
run_podman 1 image exists $NONLOCAL_IMAGE
}
+# 'run --conmon-pidfile --cid-file' makes sure we don't regress on these flags.
+# Both are critical for systemd units.
+@test "podman run --conmon-pidfile --cidfile" {
+ pid=$(mktemp)
+ cid=$(mktemp)
+
+ # CID file exists -> expected to fail.
+ run_podman 125 run --rm --conmon-pidfile=$pid --cidfile=$cid $IMAGE ls
+
+ rm $pid $cid
+ run_podman run --name keepme --conmon-pidfile=$pid --cidfile=$cid --detach $IMAGE sleep infinity
+ stat $pid $cid
+ run_podman rm -f keepme
+ rm $pid $cid
+}
+
# vim: filetype=sh