From 91a5c0de2a031110b23b8bf8ca291f8239f7c132 Mon Sep 17 00:00:00 2001 From: Ygal Blum Date: Tue, 18 Jun 2024 16:13:24 +0300 Subject: [PATCH] Quadlet - use specifier for unescaped values for templated container name The escaped version replaces - with / which creates an invalid container name See https://github.com/containers/podman/issues/22874#issuecomment-2175559746 Signed-off-by: Ygal Blum --- pkg/systemd/quadlet/quadlet.go | 2 +- test/e2e/quadlet/template@.container | 2 +- test/e2e/quadlet/template@instance.container | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/systemd/quadlet/quadlet.go b/pkg/systemd/quadlet/quadlet.go index 6cb33bb09f..8d845a7bce 100644 --- a/pkg/systemd/quadlet/quadlet.go +++ b/pkg/systemd/quadlet/quadlet.go @@ -488,7 +488,7 @@ func ConvertContainer(container *parser.UnitFile, names map[string]string, isUse if !ok || len(containerName) == 0 { // By default, We want to name the container by the service name if strings.Contains(container.Filename, "@") { - containerName = "systemd-%P_%I" + containerName = "systemd-%p_%i" } else { containerName = "systemd-%N" } diff --git a/test/e2e/quadlet/template@.container b/test/e2e/quadlet/template@.container index 5f17e8bf61..d8b10449da 100644 --- a/test/e2e/quadlet/template@.container +++ b/test/e2e/quadlet/template@.container @@ -1,5 +1,5 @@ ## assert-podman-final-args localhost/imagename -## assert-podman-args "--name=systemd-%P_%I" +## assert-podman-args "--name=systemd-%p_%i" ## assert-symlink want.service.wants/template@default.service ../template@.service ## assert-podman-args --env "FOO=bar" diff --git a/test/e2e/quadlet/template@instance.container b/test/e2e/quadlet/template@instance.container index 0144e5e7ee..ea64082196 100644 --- a/test/e2e/quadlet/template@instance.container +++ b/test/e2e/quadlet/template@instance.container @@ -1,5 +1,5 @@ ## assert-podman-final-args localhost/changed-image -## assert-podman-args "--name=systemd-%P_%I" +## assert-podman-args "--name=systemd-%p_%i" ## assert-symlink want.service.wants/template@instance.service ../template@instance.service ## assert-podman-args --env "FOO=bar"