summaryrefslogtreecommitdiff
path: root/contrib/cirrus/system_test.sh
diff options
context:
space:
mode:
authorChris Evich <cevich@redhat.com>2020-06-25 17:38:33 -0400
committerChris Evich <cevich@redhat.com>2020-10-02 11:53:04 -0400
commit2c9084e2245834094e14e9105e64b6062d70a0f1 (patch)
treee2e5c0be702cdae5919489fd9a1ed1b6f87d135a /contrib/cirrus/system_test.sh
parentb58980a43ccfcef5134274c3963bf68cc51a4983 (diff)
downloadpodman-2c9084e2245834094e14e9105e64b6062d70a0f1.tar.gz
podman-2c9084e2245834094e14e9105e64b6062d70a0f1.tar.bz2
podman-2c9084e2245834094e14e9105e64b6062d70a0f1.zip
Cirrus: Implement podman automation 2.0
Reimplement CI-automation to remove accumulated technical-debt and optimize workflow. The task-dependency graph designed goal was to shorten it's depth and increase width (i.e. more parallelism). A reduction in redundant building (and 3rd party module download) was also realized by caching `$GOPATH` and `$GOCACHE` early on. This cache is then reused in favor of a fresh clone of the repository (when possible). Note: The system tests typically execute MUCH faster than the integration tests. However, contrary to a fail-fast/fail-early principal, they are executed last. This was implemented due to debug-ability related concerns/preferences of the primary (golang-centric) project developers. Signed-off-by: Chris Evich <cevich@redhat.com>
Diffstat (limited to 'contrib/cirrus/system_test.sh')
-rwxr-xr-xcontrib/cirrus/system_test.sh65
1 files changed, 0 insertions, 65 deletions
diff --git a/contrib/cirrus/system_test.sh b/contrib/cirrus/system_test.sh
deleted file mode 100755
index dbee078b6..000000000
--- a/contrib/cirrus/system_test.sh
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/usr/bin/env bash
-
-set -e
-
-source $(dirname $0)/lib.sh
-
-req_env_var GOSRC SCRIPT_BASE OS_RELEASE_ID OS_RELEASE_VER CONTAINER_RUNTIME VARLINK_LOG
-
-LOCAL_OR_REMOTE=local
-if [[ "$RCLI" = "true" ]]; then
- LOCAL_OR_REMOTE=remote
-fi
-
-# Our name must be of the form xxxx_test or xxxx_test.sh, where xxxx is
-# the test suite to run; currently (2019-05) the only option is 'integration'
-# but pr2947 intends to add 'system'.
-TESTSUITE=$(expr $(basename $0) : '\(.*\)_test')
-if [[ -z $TESTSUITE ]]; then
- die 1 "Script name is not of the form xxxx_test.sh"
-fi
-
-cd "$GOSRC"
-
-case "$SPECIALMODE" in
- in_podman)
- ${CONTAINER_RUNTIME} run --rm --privileged --net=host --cgroupns=host \
- -v $GOSRC:$GOSRC:Z \
- --workdir $GOSRC \
- -e "CGROUP_MANAGER=cgroupfs" \
- -e "STORAGE_OPTIONS=--storage-driver=vfs" \
- -e "CRIO_ROOT=$GOSRC" \
- -e "PODMAN_BINARY=/usr/bin/podman" \
- -e "CONMON_BINARY=/usr/libexec/podman/conmon" \
- -e "DIST=$OS_RELEASE_ID" \
- -e "CONTAINER_RUNTIME=$CONTAINER_RUNTIME" \
- $IN_PODMAN_IMAGE bash $GOSRC/$SCRIPT_BASE/container_test.sh -b -i -t
- ;;
- rootless)
- req_env_var ROOTLESS_USER
- ssh $ROOTLESS_USER@localhost \
- -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no \
- -o CheckHostIP=no $GOSRC/$SCRIPT_BASE/rootless_test.sh ${TESTSUITE} ${LOCAL_OR_REMOTE}
- ;;
- endpoint)
- make
- make install PREFIX=/usr ETCDIR=/etc
- make test-binaries
- make endpoint
- ;;
- bindings)
- make
- make install PREFIX=/usr ETCDIR=/etc
- export PATH=$PATH:`pwd`/hack
- cd pkg/bindings/test && ginkgo -trace -noColor -debug -r
- ;;
- none)
- make
- make install PREFIX=/usr ETCDIR=/etc
- make test-binaries
- make .install.bats
- make ${LOCAL_OR_REMOTE}${TESTSUITE} PODMAN_SERVER_LOG=$PODMAN_SERVER_LOG
- ;;
- *)
- die 110 "Unsupported \$SPECIALMODE: $SPECIALMODE"
-esac