fix compose test error in retry logic

We cannot use local var outside of a function. We have to use a global
one.

Log: https://storage.googleapis.com/cirrus-ci-6707778565701632-fcae48/artifacts/containers/podman/5970023511490560/html/compose_v2-podman-fedora-35-root-host.log.html

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
This commit is contained in:
Paul Holzinger
2022-03-22 14:50:39 +01:00
committed by Matthew Heon
parent 4dbb2bf92b
commit 89a4466ee8

View File

@ -1,20 +1,19 @@
# -*- bash -*- # -*- bash -*-
output="$(cat $OUTFILE)"
expected="teststring" expected="teststring"
# Reading from the nc socket is flaky because docker-compose only starts # Reading from the nc socket is flaky because docker-compose only starts
# the containers. We cannot know at this point if the container did already # the containers. We cannot know at this point if the container did already
# send the message. Give the container 5 seconds time to send the message # send the message. Give the container 5 seconds time to send the message
# to prevent flakes. # to prevent flakes.
local _timeout=5 container_timeout=5
while [ $_timeout -gt 0 ]; do while [ $container_timeout -gt 0 ]; do
output="$(< $OUTFILE)"
if [ -n "$output" ]; then if [ -n "$output" ]; then
break break
fi fi
sleep 1 sleep 1
_timeout=$(($_timeout - 1)) container_timeout=$(($container_timeout - 1))
output="$(cat $OUTFILE)"
done done
is "$output" "$expected" "$testname : nc received teststring" is "$output" "$expected" "$testname : nc received teststring"