test: convert TestStages.run_stage_diff_test()
to pytest
#816
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: [pull_request, push] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
# Share the store between the workers speeds things up further | |
OSBUILD_TEST_STORE: /var/tmp/osbuild-test-store | |
jobs: | |
test_suite: | |
name: "Unittest" | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
test: | |
- parallel | |
- normal | |
environment: | |
- "py36" # RH8 | |
- "py39" # RH9 | |
- "py312" # latest fedora | |
steps: | |
- name: "Clone Repository" | |
uses: actions/checkout@v4 | |
- name: "Run" | |
uses: osbuild/containers/src/actions/privdocker@552e30cf1b4ed19c6ddaa57f96c342b3dff4227b | |
with: | |
image: ghcr.io/osbuild/osbuild-ci:latest-202404252004 | |
run: | | |
# Hacky replacement of container storage driver: | |
# The default overlayfs doesn't work in the runner, so let's change | |
# it to vfs for the local storage skopeo stage test. | |
sed -i 's/overlay/vfs/g' /usr/share/containers/storage.conf # default system config | |
sed -i 's/overlay/vfs/g' /etc/containers/storage.conf || true # potential overrides | |
if [ "${{ matrix.test }}" == "parallel" ]; then | |
# 4 is a bit arbitrary | |
TEST_WORKERS="-n 4" | |
TEST_CATEGORY="test_stages.py" | |
else | |
# test_assemblers.py is run below | |
TEST_CATEGORY="not test_stages.py and not test_assemblers.py" | |
fi | |
OSBUILD_TEST_STORE="${{ env.OSBUILD_TEST_STORE }}" \ | |
tox -e "${{ matrix.environment }}" -- -rs $TEST_WORKERS -k "$TEST_CATEGORY" | |
v1_manifests: | |
name: "Assembler test (legacy)" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Clone Repository" | |
uses: actions/checkout@v4 | |
- name: "Run" | |
uses: osbuild/containers/src/actions/privdocker@552e30cf1b4ed19c6ddaa57f96c342b3dff4227b | |
env: | |
# Using 4 workers is a bit arbitrary, "auto" is probably too aggressive. | |
TEST_WORKERS: "-n 4" | |
with: | |
image: ghcr.io/osbuild/osbuild-ci:latest-202404252004 | |
run: | | |
OSBUILD_TEST_STORE="${{ env.OSBUILD_TEST_STORE }}" \ | |
tox -e "py36" -- ${{ env.TEST_WORKERS }} test.run.test_assemblers |