summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAditya Rajan <arajan@redhat.com>2021-12-08 17:38:45 +0530
committerAditya Rajan <arajan@redhat.com>2021-12-08 20:26:36 +0530
commitb526a0ccdc289edaaff4ee1ab9ffab60310c4b53 (patch)
treebc1544820c239a7fca1bd46c7cf3d59f0ea78970
parent31be3a9f24597a282a51764c15603311e59e4d44 (diff)
downloadpodman-b526a0ccdc289edaaff4ee1ab9ffab60310c4b53.tar.gz
podman-b526a0ccdc289edaaff4ee1ab9ffab60310c4b53.tar.bz2
podman-b526a0ccdc289edaaff4ee1ab9ffab60310c4b53.zip
specgen: honor empty args for entrypoint
Users should be able to override containers entrypoint using `--entrypoint ""` following works fine for podman but not for podman remote. Specgen ignores empty argument for entrypoint so make specgen honor empty arguments. Signed-off-by: Aditya Rajan <arajan@redhat.com>
-rw-r--r--pkg/specgenutil/specgen.go8
-rw-r--r--test/e2e/run_entrypoint_test.go1
2 files changed, 3 insertions, 6 deletions
diff --git a/pkg/specgenutil/specgen.go b/pkg/specgenutil/specgen.go
index 637a6a8dd..5e4bd2f65 100644
--- a/pkg/specgenutil/specgen.go
+++ b/pkg/specgenutil/specgen.go
@@ -409,11 +409,9 @@ func FillOutSpecGen(s *specgen.SpecGenerator, c *entities.ContainerCreateOptions
s.WorkDir = c.Workdir
if c.Entrypoint != nil {
entrypoint := []string{}
- if ep := *c.Entrypoint; len(ep) > 0 {
- // Check if entrypoint specified is json
- if err := json.Unmarshal([]byte(*c.Entrypoint), &entrypoint); err != nil {
- entrypoint = append(entrypoint, ep)
- }
+ // Check if entrypoint specified is json
+ if err := json.Unmarshal([]byte(*c.Entrypoint), &entrypoint); err != nil {
+ entrypoint = append(entrypoint, *c.Entrypoint)
}
s.Entrypoint = entrypoint
}
diff --git a/test/e2e/run_entrypoint_test.go b/test/e2e/run_entrypoint_test.go
index e91e75adf..4fb6054e2 100644
--- a/test/e2e/run_entrypoint_test.go
+++ b/test/e2e/run_entrypoint_test.go
@@ -103,7 +103,6 @@ ENTRYPOINT ["grep", "Alpine", "/etc/os-release"]
})
It("podman run user entrypoint overrides image entrypoint and image cmd", func() {
- SkipIfRemote("#12521: podman-remote not handling passing empty --entrypoint")
dockerfile := `FROM quay.io/libpod/alpine:latest
CMD ["-i"]
ENTRYPOINT ["grep", "Alpine", "/etc/os-release"]