Move the container directory, containing the container definitions for all the test containers, to test/, where all the other test- related files are located (with the exception of `Schutzbot`). Use `test/build-container.sh` to build the container, instead of replicating that in `test-integration.sh`.
78 lines
1.9 KiB
Bash
Executable file
78 lines
1.9 KiB
Bash
Executable file
#!/bin/bash
|
|
set -euxo pipefail
|
|
|
|
function greenprint {
|
|
echo -e "\033[1;32m${1}\033[0m"
|
|
}
|
|
|
|
# Get OS data.
|
|
source /etc/os-release
|
|
|
|
if [[ $ID == rhel ]] && ! rpm -q epel-release; then
|
|
greenprint "📦 Setting up EPEL repository"
|
|
curl -Ls --retry 5 --output /tmp/epel.rpm \
|
|
https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
|
sudo rpm -Uvh /tmp/epel.rpm
|
|
fi
|
|
|
|
greenprint "Installing required packages"
|
|
sudo dnf -y install \
|
|
container-selinux \
|
|
dnsmasq \
|
|
jq \
|
|
krb5-workstation \
|
|
koji \
|
|
koji-osbuild-cli \
|
|
podman
|
|
|
|
if [[ $ID == rhel ]]; then
|
|
greenprint "Tweaking podman, maybe."
|
|
sudo cp schutzbot/vendor/87-podman-bridge.conflist /etc/cni/net.d/
|
|
sudo cp schutzbot/vendor/dnsname /usr/libexec/cni/
|
|
fi
|
|
|
|
greenprint "Fetching RPMs"
|
|
sudo mkdir -p /tmp/osbuild-composer-koji-test/rpms
|
|
sudo dnf -y \
|
|
--downloadonly \
|
|
--downloaddir=/tmp/osbuild-composer-koji-test/rpms \
|
|
download \
|
|
"koji-osbuild*"
|
|
|
|
greenprint "Creating composer SSL certificates"
|
|
sudo test/make-certs.sh
|
|
|
|
greenprint "Building containers"
|
|
sudo test/build-container.sh
|
|
|
|
greenprint "Starting containers"
|
|
sudo test/run-koji-container.sh start
|
|
|
|
greenprint "Print logs"
|
|
sudo podman logs org.osbuild.koji.koji
|
|
|
|
greenprint "Copying credentials and certificates"
|
|
sudo test/copy-creds.sh
|
|
|
|
greenprint "Testing Koji hub API access"
|
|
koji --server=http://localhost:8080/kojihub --user=osbuild --password=osbuildpass --authtype=password hello
|
|
|
|
greenprint "Starting koji builder"
|
|
sudo test/run-builder.sh start
|
|
|
|
greenprint "Creating Koji tag infrastructure"
|
|
test/make-tags.sh
|
|
|
|
greenprint "Running integration tests"
|
|
python3 -m unittest discover -v test/integration/
|
|
|
|
greenprint "Stopping koji builder"
|
|
sudo test/run-builder.sh stop
|
|
|
|
greenprint "Stopping containers"
|
|
sudo test/run-koji-container.sh stop
|
|
|
|
greenprint "Removing generated CA cert"
|
|
sudo rm \
|
|
/etc/pki/ca-trust/source/anchors/koji-ca-crt.pem
|
|
sudo update-ca-trust
|