debian-forge-composer/test/cases/generation.sh
Juan Abia 4c5de045ff test: add test purpose
Most test scripts don't have any documentation regarding it's purpose,
although it can be guessed by the code. There's value in adding this
small comment.

[skip-ci]
2022-03-09 22:46:25 +01:00

40 lines
1,012 B
Bash
Executable file

#!/usr/bin/bash
#
# The objective of this script is to provide special requirement needed
# for generate-test-cases. For example, disable the dnf-json daemon
# and then execute generate-test-cases.
#
set -euxo pipefail
# Provision the software under test.
/usr/libexec/osbuild-composer-test/provision.sh
# Get OS data
source /usr/libexec/osbuild-composer-test/set-env-variables.sh
# Colorful timestamped output.
function greenprint {
echo -e "\033[1;32m[$(date -Isecond)] ${1}\033[0m"
}
# install requirements
sudo dnf -y install go
# stop dnf-json socket
sudo systemctl stop osbuild-dnf-json.socket
# test the test cases generation
WORKDIR=$(mktemp -d -p /var/tmp)
OSBUILD_LABEL=$(matchpathcon -n "$(which osbuild)")
chcon "$OSBUILD_LABEL" tools/image-info
# test the test case generation when dnf-json socket is stopped
sudo ./tools/test-case-generators/generate-test-cases\
--output test/data/manifests\
--arch x86_64\
--distro rhel-8\
--image-type qcow2\
--store "$WORKDIR"