mirror of
https://github.com/containers/podman.git
synced 2025-09-10 10:32:19 +08:00

Previously libpod CI was fairly straight-forward, run unit and integration tests in a standard set of 3 VMs. Off on the side was a single special case of running tests as an ordinary user. There is a desire to stop using the PAPR system to support testing inside of a container. Since having two special cases potentially invites more down the road, make provisions to handle them more gracefully. This commit introduces an environment variable: ``$SPECIALMODE``. It's value has the following meanings within the CI scripts: Mode 'none': Nothing special, business as usual (default) Mode 'rootless': Rootless testing Mode 'in_podman': Build container, run integration tests in it. This will make adding additional special-cases later easier, as well as extending the special cases in a Matrix across multiple OS's. Signed-off-by: Chris Evich <cevich@redhat.com>
24 lines
562 B
Bash
Executable File
24 lines
562 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
source $(dirname $0)/lib.sh
|
|
|
|
req_env_var "
|
|
GOSRC $GOSRC
|
|
OS_RELEASE_ID $OS_RELEASE_ID
|
|
CONTAINER_RUNTIME $CONTAINER_RUNTIME
|
|
"
|
|
|
|
DIST=$OS_RELEASE_ID
|
|
IMAGE=${DIST}podmanbuild
|
|
|
|
# Since CRIU 3.11 has been pushed to Fedora 28 the checkpoint/restore
|
|
# test cases are actually run. As CRIU uses iptables to lock and unlock
|
|
# the network during checkpoint and restore it needs the following two
|
|
# modules loaded.
|
|
modprobe ip6table_nat || :
|
|
modprobe iptable_nat || :
|
|
|
|
# Build the test image
|
|
${CONTAINER_RUNTIME} build -t ${IMAGE} -f Dockerfile.${DIST} .
|