#!/bin/bash set -euo pipefail source /usr/libexec/tests/osbuild-composer/shared_lib.sh WORKING_DIRECTORY=/usr/libexec/osbuild-composer TESTS_PATH=/usr/libexec/osbuild-composer-test mkdir --parents /tmp/logs LOGS_DIRECTORY=$(mktemp --directory --tmpdir=/tmp/logs) PASSED_TESTS=() FAILED_TESTS=() TEST_CASES=( "osbuild-weldr-tests" "osbuild-composer-cli-tests" "osbuild-auth-tests" "osbuild-composer-dbjobqueue-tests" ) if nvrGreaterOrEqual "osbuild-composer" "41"; then # 0 - osbuild-composer == v41 # 11 - osbuild-composer > v41 # 12 - osbuild-composer < v41 echo "INFO: enabling osbuild-dnf-json-tests" TEST_CASES+=("osbuild-dnf-json-tests") fi # Print out a nice test divider so we know when tests stop and start. test_divider () { printf "%0.s-" {1..78} && echo } # Run a test case and store the result as passed or failed. run_test_case () { TEST_NAME=$(basename "$1") echo test_divider echo "🏃🏻 Running test: ${TEST_NAME}" test_divider if sudo "${1}" -test.v | tee "${LOGS_DIRECTORY}"/"${TEST_NAME}".log; then PASSED_TESTS+=("$TEST_NAME") else FAILED_TESTS+=("$TEST_NAME") fi test_divider echo } # Provision the software under test. /usr/libexec/osbuild-composer-test/provision.sh # Set up a basic postgres db sudo dnf install -y go postgresql postgresql-server postgresql-contrib PWFILE=$(sudo -u postgres mktemp) cat <