Files
fm-orchestrator/openshift/integration/koji/pipelines/tests/runtests
Michal Kovarik 5b770dfbf5 C3I: switch koji auth from ssl to kerberos
New pipeline-as-a-service Koji is going to use Kerberos instead SSL.
Added dist-git to services since new koji worker in
pipeline-as-a-service is integrated with dist-git.
Changing package_manager from dnf to yum which is configured in koji
from pipeline-as-a-service.
2020-06-17 08:26:33 +02:00

52 lines
1.5 KiB
Bash
Executable File

#!/bin/bash -ex
export PIPELINE_ID=$1
if [ -z "$PIPELINE_ID" ]; then
echo You must specify the pipeline ID
exit 1
fi
if [ "$TESTCASES" == "skip" ]; then
echo "TESTCASES=skip defined, skipping tests"
exit 0
fi
DOMAIN=${2:-"cloud.paas.psi.redhat.com"}
CONTROLLER=http://${PIPELINE_ID}.${DOMAIN}
export TEST_DIR=$(realpath $(dirname $0))
echo "Provisioning pipeline services..."
curl -X POST -F data=@${TEST_DIR}/mbs-cgimport-vars.yaml $CONTROLLER/scripts/provision
CERT_DIR=$(mktemp -d)
export CACERT="${CERT_DIR}/ca.crt"
curl -s ${CONTROLLER}/ca/cacert > $CACERT
export KRB5_CONFIG=$(mktemp)
curl -so $KRB5_CONFIG ${CONTROLLER}/krb5/configfile
export MBS_FRONTEND_HOST="$(curl -s ${CONTROLLER}/vars/MBS_FRONTEND_HOST)"
# The MBS user is defined in the Ansible vars file
export MBS_USER="mbs-user-${PIPELINE_ID}"
export MBS_USER_PASSWORD=$(curl -s ${CONTROLLER}/krb5/principal/${MBS_USER})
kinit -V $MBS_USER <<<$MBS_USER_PASSWORD
KOJI_HUB_HOST="$(curl -s ${CONTROLLER}/vars/KOJI_HUB_HOST)"
export KOJI_CONFIG=$(mktemp)
cat > $KOJI_CONFIG <<EOF
[koji]
server = https://${KOJI_HUB_HOST}/kojihub
weburl = https://${KOJI_HUB_HOST}/koji
serverca = $CACERT
authtype = kerberos
EOF
for TEST_FILE in $(ls ${TEST_DIR}); do
TEST="${TEST_DIR}/${TEST_FILE}"
if [ -x "$TEST" ] && [ "${TEST_FILE}" != "runtests" ]; then
if [ -z "$TESTCASES" ] || echo "$TESTCASES" | grep "${TEST_FILE}"; then
echo "Running test ${TEST_FILE}"
$TEST
else
echo "Skipping test ${TEST_FILE}"
fi
fi
done