From 23faa83a0b5d38e2c16b2af355924655889d87e2 Mon Sep 17 00:00:00 2001 From: Rafael Guterres Jeffman Date: Wed, 29 Jun 2022 11:00:19 -0300 Subject: [PATCH] sanity.sh: Allow use of podman instead of docker When running tests/sanity/sanity.sh locally, podman might be available instead of Docker. Due to current configuration, only Docker is used by sanity.sh. This patch searches for the availability of docker, which is kept as the default container engine to use, and use podman only if docker is not found. This change also allows the execution of the script from a directory other than the repository root. --- tests/sanity/sanity.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tests/sanity/sanity.sh b/tests/sanity/sanity.sh index 32784414..0bf1eb78 100644 --- a/tests/sanity/sanity.sh +++ b/tests/sanity/sanity.sh @@ -1,8 +1,13 @@ #!/bin/bash +TOPDIR=$(readlink -f "$(dirname "$0")/../..") +pushd "${TOPDIR}" >/dev/null || exit 1 + VENV=/tmp/ansible-test-venv ANSIBLE_COLLECTION=freeipa-ansible_freeipa +use_docker=$(which docker >/dev/null 2>&1 && echo "True" || echo "False") + virtualenv "$VENV" # shellcheck disable=SC1091 source "$VENV"/bin/activate @@ -15,7 +20,8 @@ rm -f importer_result.json utils/build-galaxy-release.sh -export GALAXY_IMPORTER_CONFIG=tests/sanity/galaxy-importer.cfg +sed "s/LOCAL_IMAGE_DOCKER = True/LOCAL_IMAGE_DOCKER = ${use_docker}/" < tests/sanity/galaxy-importer.cfg > ${VENV}/galaxy-importer.cfg +export GALAXY_IMPORTER_CONFIG=${VENV}/galaxy-importer.cfg collection=$(ls -1 "$ANSIBLE_COLLECTION"-*.tar.gz) echo "Running: python -m galaxy_importer.main $collection" @@ -33,4 +39,6 @@ done < <(python -m galaxy_importer.main "$collection") rm -rf "$VENV" +popd >/dev/null || exit 1 + exit "$error"