mirror of
https://github.com/containers/podman.git
synced 2025-08-06 19:44:14 +08:00
Quadlet - Use = sign when setting the pull arg for build
Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
This commit is contained in:
@ -1397,10 +1397,15 @@ func ConvertBuild(build *parser.UnitFile, unitsInfoMap map[string]*UnitInfo, isU
|
|||||||
podman := createBasePodmanCommand(build, BuildGroup)
|
podman := createBasePodmanCommand(build, BuildGroup)
|
||||||
podman.add("build")
|
podman.add("build")
|
||||||
|
|
||||||
|
// The `--pull` flag has to be handled separately and the `=` sign must be present
|
||||||
|
// See https://github.com/containers/podman/issues/24599 for details
|
||||||
|
if val, ok := build.Lookup(BuildGroup, KeyPull); ok && len(val) > 0 {
|
||||||
|
podman.addf("--pull=%s", val)
|
||||||
|
}
|
||||||
|
|
||||||
stringKeys := map[string]string{
|
stringKeys := map[string]string{
|
||||||
KeyArch: "--arch",
|
KeyArch: "--arch",
|
||||||
KeyAuthFile: "--authfile",
|
KeyAuthFile: "--authfile",
|
||||||
KeyPull: "--pull",
|
|
||||||
KeyTarget: "--target",
|
KeyTarget: "--target",
|
||||||
KeyVariant: "--variant",
|
KeyVariant: "--variant",
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
## assert-podman-final-args-regex /.*/podman-e2e-.*/subtest-.*/quadlet
|
## assert-podman-final-args-regex /.*/podman-e2e-.*/subtest-.*/quadlet
|
||||||
## assert-podman-args "--tag" "localhost/imagename"
|
## assert-podman-args "--tag" "localhost/imagename"
|
||||||
## assert-podman-args "--pull" "never"
|
## assert-podman-args "--pull=never"
|
||||||
|
|
||||||
[Build]
|
[Build]
|
||||||
ImageTag=localhost/imagename
|
ImageTag=localhost/imagename
|
||||||
|
@ -1699,4 +1699,31 @@ EOF
|
|||||||
fi
|
fi
|
||||||
done < <(parse_table "${dropin_files}")
|
done < <(parse_table "${dropin_files}")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Following issue: https://github.com/containers/podman/issues/24599
|
||||||
|
# Make sure future changes do not break
|
||||||
|
@test "quadlet - build with pull" {
|
||||||
|
local quadlet_tmpdir=$PODMAN_TMPDIR/quadlets
|
||||||
|
|
||||||
|
mkdir $quadlet_tmpdir
|
||||||
|
|
||||||
|
local container_file_path=$quadlet_tmpdir/Containerfile
|
||||||
|
cat >$container_file_path << EOF
|
||||||
|
FROM $IMAGE
|
||||||
|
EOF
|
||||||
|
|
||||||
|
local image_tag=quay.io/i-$(safename):$(random_string)
|
||||||
|
local quadlet_file=$PODMAN_TMPDIR/pull_$(safename).build
|
||||||
|
cat >$quadlet_file << EOF
|
||||||
|
[Build]
|
||||||
|
ImageTag=$image_tag
|
||||||
|
File=$container_file_path
|
||||||
|
Pull=never
|
||||||
|
EOF
|
||||||
|
|
||||||
|
run_quadlet "$quadlet_file"
|
||||||
|
service_setup $QUADLET_SERVICE_NAME "wait"
|
||||||
|
|
||||||
|
run_podman rmi -i $image_tag
|
||||||
|
}
|
||||||
# vim: filetype=sh
|
# vim: filetype=sh
|
||||||
|
@ -94,6 +94,8 @@ quadlet_to_service_name() {
|
|||||||
suffix="-image"
|
suffix="-image"
|
||||||
elif [ "$extension" == "pod" ]; then
|
elif [ "$extension" == "pod" ]; then
|
||||||
suffix="-pod"
|
suffix="-pod"
|
||||||
|
elif [ "$extension" == "build" ]; then
|
||||||
|
suffix="-build"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "$filename$suffix.service"
|
echo "$filename$suffix.service"
|
||||||
|
Reference in New Issue
Block a user