yocto-autobuilder-helper/scripts/run-toaster-tests
Richard Purdie 3659743a57 scripts/run-toaster-tests: Add check of toaster fixtures against current release data
Add a check of the fixture data to try and ensure we don't release with
incorrect configuration for toaster.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-03-05 10:24:55 +00:00

40 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
#
# SPDX-License-Identifier: GPL-2.0-only
#
# Called with $1 as the build directory
# $2 as the path to poky
set -e
set -u
set -o pipefail
set -x
builddir=$(realpath "$1")
pokydir=$(realpath "$2")
cd $builddir
bitbake -e > bbenv
export SSTATE_DIR=$(grep '^SSTATE_DIR=' bbenv | cut -d "=" -f2- | sed -e 's/^"//' -e 's/"$//')
export DL_DIR=$(grep '^DL_DIR=' bbenv | cut -d "=" -f2- | sed -e 's/^"//' -e 's/"$//')
export BB_HASHSERVE=$(grep '^BB_HASHSERVE=' bbenv | cut -d "=" -f2- | sed -e 's/^"//' -e 's/"$//')
export TOASTER_DJANGO_TMPDIR=$builddir
export TOASTER_DIR=$builddir
export TOASTER_TEST_USE_SSTATE_MIRROR=True
export BUILDDIR=$builddir/
mkdir -p toaster_logs
python3 -m venv venv --without-pip --system-site-packages
source venv/bin/activate
python3 -m pip install -r $pokydir/bitbake/toaster-requirements.txt -r $pokydir/bitbake/lib/toaster/tests/toaster-tests-requirements.txt
python3 -m pytest -c $pokydir/bitbake/lib/toaster/pytest.ini $pokydir/bitbake/lib/toaster/tests/
if [ -e $pokydir/bitbake/lib/toaster/orm/fixtures/check_fixtures.py ]; then
echo "Checking toaster fixtures"
cd $pokydir/bitbake/lib/toaster/orm/fixtures/
$pokydir/bitbake/lib/toaster/orm/fixtures/check_fixtures.py
fi