diff options
Diffstat (limited to 'contrib/python/podman/test/test_runner.sh')
-rwxr-xr-x | contrib/python/podman/test/test_runner.sh | 156 |
1 files changed, 0 insertions, 156 deletions
diff --git a/contrib/python/podman/test/test_runner.sh b/contrib/python/podman/test/test_runner.sh deleted file mode 100755 index 651b2e74f..000000000 --- a/contrib/python/podman/test/test_runner.sh +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/bash - -# podman needs to play some games with resources -if [[ $(id -u) != 0 ]]; then - echo >&2 $0 must be run as root. - exit 2 -fi - -# setup path to find new binaries _NOT_ system binaries -if [[ ! -x ../../../bin/podman ]]; then - echo 1>&2 Cannot find podman binary from libpod root directory. Run \"make binaries\" - exit 1 -fi -export PATH=../../../bin:$PATH - -function usage { - echo 1>&2 $0 '[-v] [-h] [test.<TestCase>|test.<TestCase>.<step>]' -} - -while getopts "vh" arg; do - case $arg in - v ) VERBOSE='-v'; export LOG_LEVEL=debug ;; - h ) usage ; exit 0 ;; - \? ) usage ; exit 2 ;; - esac -done -shift $((OPTIND -1)) - -function cleanup { - set +xeuo pipefail - # aggressive cleanup as tests may crash leaving crap around - umount '^(shm|nsfs)' - umount '\/run\/netns' - if [[ $RETURNCODE -eq 0 ]]; then - rm -r "$1" - fi -} - -# Create temporary directory for storage -export TMPDIR=`mktemp -d /tmp/podman.XXXXXXXXXX` -trap "cleanup $TMPDIR" EXIT - -function umount { - set +xeuo pipefail - # xargs -r always ran once, so write any mount points to file first - mount |awk "/$1/"' { print $3 }' >${TMPDIR}/mounts - if [[ -s ${TMPDIR}/mounts ]]; then - xargs <${TMPDIR}/mounts -t umount - fi -} - -function showlog { - [[ -s $1 ]] && cat <<-EOT -$1 ===== -$(cat "$1") - -EOT -} - -# Need locations to store stuff -mkdir -p ${TMPDIR}/{podman,crio,crio-run,cni/net.d,ctnr,tunnel} - -# Cannot be done in python unittest fixtures. EnvVar not picked up. -export REGISTRIES_CONFIG_PATH=${TMPDIR}/registry.conf -cat >$REGISTRIES_CONFIG_PATH <<-EOT - [registries.search] - registries = ['docker.io'] - [registries.insecure] - registries = [] - [registries.block] - registries = [] -EOT - -export CNI_CONFIG_PATH=${TMPDIR}/cni/net.d -cat >$CNI_CONFIG_PATH/87-podman-bridge.conflist <<-EOT -{ - "cniVersion": "0.3.0", - "name": "podman", - "plugins": [{ - "type": "bridge", - "bridge": "cni0", - "isGateway": true, - "ipMasq": true, - "ipam": { - "type": "host-local", - "subnet": "10.88.0.0/16", - "routes": [{ - "dst": "0.0.0.0/0" - }] - } - }, - { - "type": "portmap", - "capabilities": { - "portMappings": true - } - } - ] -} -EOT - -cat >$TMPDIR/ctnr/hello.sh <<-EOT -echo 'Hello, World' -exit 0 -EOT - -cat >$TMPDIR/ctnr/Dockerfile <<-EOT -FROM alpine:latest -COPY ./hello.sh /tmp/ -RUN chmod 755 /tmp/hello.sh -ENTRYPOINT ["/tmp/hello.sh"] -EOT - -export PODMAN_HOST="unix:${TMPDIR}/podman/io.podman" -PODMAN_ARGS="--storage-driver=vfs \ - --root=${TMPDIR}/crio \ - --runroot=${TMPDIR}/crio-run \ - --cni-config-dir=$CNI_CONFIG_PATH \ - --cgroup-manager=cgroupfs \ - " -if [[ -n $VERBOSE ]]; then - PODMAN_ARGS="$PODMAN_ARGS --log-level=$LOG_LEVEL" -fi -PODMAN="podman $PODMAN_ARGS" - -cat <<-EOT |tee /tmp/test_podman.output -$($PODMAN --version) -$PODMAN varlink --timeout=0 ${PODMAN_HOST} -========================================== -EOT - -# Run podman in background without systemd for test purposes -$PODMAN varlink --timeout=0 ${PODMAN_HOST} >>/tmp/test_podman.output 2>&1 & -if [[ $? != 0 ]]; then - echo 1>&2 Failed to start podman - showlog /tmp/test_podman.output -fi - -if [[ -z $1 ]]; then - export PYTHONPATH=. - python3 -m unittest discover -s . $VERBOSE - RETURNCODE=$? -else - export PYTHONPATH=.:./test - python3 -m unittest $1 $VERBOSE - RETURNCODE=$? -fi - -pkill -9 podman -pkill -9 conmon - -showlog /tmp/test_podman.output -showlog /tmp/alpine.log -showlog /tmp/busybox.log - -exit $RETURNCODE |