summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2019-03-07 15:11:00 -0800
committerGitHub <noreply@github.com>2019-03-07 15:11:00 -0800
commite0f224816d41ccf353bccd9ef6933a201cdc7d64 (patch)
tree1eb7c597efaf6262fcd732c2ac903f88347077fe
parent94e89fc6cac0ac67db9228967f0340b60235bed8 (diff)
parent04b5cb5ad6bb087cd8dc0e11391f0772615dcc05 (diff)
downloadpodman-e0f224816d41ccf353bccd9ef6933a201cdc7d64.tar.gz
podman-e0f224816d41ccf353bccd9ef6933a201cdc7d64.tar.bz2
podman-e0f224816d41ccf353bccd9ef6933a201cdc7d64.zip
Merge pull request #2570 from muayyad-alsadi/alsadi-tests-20190307
test to cover parallel execution and networking
-rwxr-xr-xtest/test_podman_baseline.sh95
1 files changed, 94 insertions, 1 deletions
diff --git a/test/test_podman_baseline.sh b/test/test_podman_baseline.sh
index 664fd2b03..5c24229bb 100755
--- a/test/test_podman_baseline.sh
+++ b/test/test_podman_baseline.sh
@@ -19,6 +19,7 @@
#######
# See if we want to stop on errors and/or install and then remove Docker.
#######
+HOST_PORT="${HOST_PORT:-8080}"
showerror=0
installdocker=0
usedocker=1
@@ -78,7 +79,99 @@ echo $image
########
# Run container and display contents in /etc
########
-podman run $image ls -alF /etc
+podman run --rm $image ls -alF /etc
+
+########
+# Test networking, bind mounting a file, stdin/stdout redirect
+########
+echo "Testing networking: ..."
+port_test_failed=0
+txt1="Hello, Podman"
+echo "$txt1" > /tmp/hello.txt
+podman run -d --name myweb -p "$HOST_PORT:80" -w /var/www -v /tmp/hello.txt:/var/www/index.txt busybox httpd -f -p 80
+echo "$txt1" | podman exec -i myweb sh -c "cat > /var/www/index2.txt"
+txt2=$( podman exec myweb cat /var/www/index2.txt )
+[ "x$txt1" == "x$txt2" ] && echo "PASS1" || { echo "FAIL1"; port_test_failed=1; }
+txt2=$( podman run --rm --net host busybox wget -qO - http://localhost:$HOST_PORT/index.txt )
+[ "x$txt1" == "x$txt2" ] && echo "PASS2" || { echo "FAIL2"; port_test_failed=1; }
+txt2=$( podman run --rm --net host busybox wget -qO - http://localhost:$HOST_PORT/index2.txt )
+[ "x$txt1" == "x$txt2" ] && echo "PASS3" || { echo "FAIL3"; port_test_failed=1; }
+# podman run --rm --net container:myweb --add-host myweb:127.0.0.1 busybox wget -qO - http://myweb/index.txt
+rm /tmp/hello.txt
+podman stop myweb
+podman rm myweb
+[ "0$port_test_failed" -eq 1 ] && [ "0$showerror" -eq 1 ] && {
+ echo "networking test failed";
+ exit -1;
+}
+
+
+########
+# pull and run many containers in parallel, test locks ..etc.
+########
+prun_test_failed=0
+podman rmi docker.io/library/busybox:latest > /dev/null || :
+for i in `seq 10`
+do ( podman run -d --name b$i docker.io/library/busybox:latest busybox httpd -f -p 80 )&
+done
+echo -e "\nwaiting for creation...\n"
+wait
+echo -e "\ndone\n"
+# assert we have 10 running containers
+count=$( podman ps -q | wc -l )
+[ "x$count" == "x10" ] && echo "PASS" || { echo "FAIL, expecting 10 found $count"; prun_test_failed=1; }
+[ "0$prun_test_failed" -eq 1 ] && [ "0$showerror" -eq 1 ] && {
+ echo "was expecting 10 running containers";
+ exit -1;
+}
+
+prun_test_failed=0
+for i in `seq 10`; do ( podman stop -t=1 b$i; podman rm b$i )& done
+echo -e "\nwaiting for deletion...\n"
+wait
+echo -e "\ndone\n"
+# assert we have 0 running containers
+count=$( podman ps -q | wc -l )
+[ "x$count" == "x0" ] && echo "PASS" || { echo "FAIL, expecting 0 found $count"; prun_test_failed=1; }
+[ "0$prun_test_failed" -eq 1 ] && [ "0$showerror" -eq 1 ] && {
+ echo "was expecting 0 running containers";
+ exit -1;
+}
+
+
+
+########
+# run many containers in parallel for an existing image, test locks ..etc.
+########
+prun_test_failed=0
+podman pull docker.io/library/busybox:latest > /dev/null || :
+for i in `seq 10`
+do ( podman run -d --name c$i docker.io/library/busybox:latest busybox httpd -f -p 80 )&
+done
+echo -e "\nwaiting for creation...\n"
+wait
+echo -e "\ndone\n"
+# assert we have 10 running containers
+count=$( podman ps -q | wc -l )
+[ "x$count" == "x10" ] && echo "PASS" || { echo "FAIL, expecting 10 found $count"; prun_test_failed=1; }
+[ "0$prun_test_failed" -eq 1 ] && [ "0$showerror" -eq 1 ] && {
+ echo "was expecting 10 running containers";
+ exit -1;
+}
+
+
+for i in `seq 10`; do ( podman stop -t=1 c$i; podman rm c$i )& done
+echo -e "\nwaiting for deletion...\n"
+wait
+echo -e "\ndone\n"
+# assert we have 0 running containers
+count=$( podman ps -q | wc -l )
+[ "x$count" == "x0" ] && echo "PASS" || { echo "FAIL, expecting 0 found $count"; prun_test_failed=1; }
+[ "0$prun_test_failed" -eq 1 ] && [ "0$showerror" -eq 1 ] && {
+ echo "was expecting 0 running containers";
+ exit -1;
+}
+
########
# Run Java in the container - should ERROR but never stop