summaryrefslogtreecommitdiff
path: root/test/system
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2021-04-14 10:47:50 -0400
committerGitHub <noreply@github.com>2021-04-14 10:47:50 -0400
commit4ee203dde7c9e8de2484f00c7f251c0f32ed0ad2 (patch)
treed40e6b560c77bf8f17386ee19034f295e51644c3 /test/system
parentb130dced648350f547767d07bb0b055472ab79bd (diff)
parent8f16742187ce02dbbd5a798763bad01a263bc476 (diff)
downloadpodman-4ee203dde7c9e8de2484f00c7f251c0f32ed0ad2.tar.gz
podman-4ee203dde7c9e8de2484f00c7f251c0f32ed0ad2.tar.bz2
podman-4ee203dde7c9e8de2484f00c7f251c0f32ed0ad2.zip
Merge pull request #9945 from rhatdan/runlabel
Fix handling of $NAME and $IMAGE in runlabel
Diffstat (limited to 'test/system')
-rw-r--r--test/system/037-runlabel.bats32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/system/037-runlabel.bats b/test/system/037-runlabel.bats
new file mode 100644
index 000000000..8e18f40d3
--- /dev/null
+++ b/test/system/037-runlabel.bats
@@ -0,0 +1,32 @@
+#!/usr/bin/env bats
+
+load helpers
+
+@test "podman container runlabel test" {
+ skip_if_remote "container runlabel is not supported for remote"
+ tmpdir=$PODMAN_TMPDIR/runlabel-test
+ mkdir -p $tmpdir
+ containerfile=$tmpdir/Containerfile
+ rand1=$(random_string 30)
+ rand2=$(random_string 30)
+ rand3=$(random_string 30)
+ cat >$containerfile <<EOF
+FROM $IMAGE
+LABEL INSTALL /usr/bin/podman run -t -i --rm \\\${OPT1} --privileged -v /:/host --net=host --ipc=host --pid=host -e HOST=/host -e NAME=\\\${NAME} -e IMAGE=\\\${IMAGE} -e CONFDIR=/etc/\\\${NAME} -e LOGDIR=/var/log/\\\${NAME} -e DATADIR=/var/lib/\\\${NAME} \\\${IMAGE} \\\${OPT2} /bin/install.sh \\\${OPT3}
+EOF
+
+ run_podman build -t runlabel_image $tmpdir
+
+ run_podman container runlabel --opt1=${rand1} --opt2=${rand2} --opt3=${rand3} --name test1 --display install runlabel_image
+ is "$output" "command: ${PODMAN} run -t -i --rm ${rand1} --privileged -v /:/host --net=host --ipc=host --pid=host -e HOST=/host -e NAME=test1 -e IMAGE=localhost/runlabel_image:latest -e CONFDIR=/etc/test1 -e LOGDIR=/var/log/test1 -e DATADIR=/var/lib/test1 localhost/runlabel_image:latest ${rand2} /bin/install.sh ${rand3}" "generating runlabel install command"
+
+ run_podman container runlabel --opt3=${rand3} --display install runlabel_image
+ is "$output" "command: ${PODMAN} run -t -i --rm --privileged -v /:/host --net=host --ipc=host --pid=host -e HOST=/host -e NAME=runlabel_image -e IMAGE=localhost/runlabel_image:latest -e CONFDIR=/etc/runlabel_image -e LOGDIR=/var/log/runlabel_image -e DATADIR=/var/lib/runlabel_image localhost/runlabel_image:latest /bin/install.sh ${rand3}" "generating runlabel without name and --opt1, --opt2"
+
+ run_podman 125 container runlabel --opt1=${rand1} --opt2=${rand2} --opt3=${rand3} --name test1 --display run runlabel_image
+ is "$output" "Error: cannot find the value of label: run in image: runlabel_image" "generating runlabel run command"
+
+ run_podman rmi -f runlabel_image
+}
+
+# vim: filetype=sh