diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index a606b95..ec99593 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -56,9 +56,18 @@ jobs: - name: Tests draaien run: | set -euo pipefail - python3 -m venv /tmp/su-build-venv - /tmp/su-build-venv/bin/pip install -q -r server-up/requirements.txt pytest - /tmp/su-build-venv/bin/python -m pytest tests -q + # In een container in plaats van een venv op de runner: die heeft + # geen python3-venv, en zo draaien de tests bovendien op exact de + # Python-versie waarop de app in productie draait. + # PYTHONDONTWRITEBYTECODE + no:cacheprovider voorkomen dat er + # root-eigen bestanden in de werkmap achterblijven. + docker run --rm \ + -v "$PWD:/w" -w /w \ + -v su-pip-cache:/root/.cache/pip \ + -e PYTHONDONTWRITEBYTECODE=1 \ + python:3.12-slim \ + sh -c "pip install -q -r server-up/requirements.txt pytest \ + && python -m pytest tests -q -p no:cacheprovider" - name: Inloggen op de registry run: | diff --git a/.forgejo/workflows/deploy-prod.yml b/.forgejo/workflows/deploy-prod.yml index 3115b69..abc0492 100644 --- a/.forgejo/workflows/deploy-prod.yml +++ b/.forgejo/workflows/deploy-prod.yml @@ -44,9 +44,18 @@ jobs: - name: Tests draaien run: | set -euo pipefail - python3 -m venv /tmp/su-test-venv - /tmp/su-test-venv/bin/pip install -q -r server-up/requirements.txt pytest - /tmp/su-test-venv/bin/python -m pytest tests -q + # In een container in plaats van een venv op de runner: die heeft + # geen python3-venv, en zo draaien de tests bovendien op exact de + # Python-versie waarop de app in productie draait. + # PYTHONDONTWRITEBYTECODE + no:cacheprovider voorkomen dat er + # root-eigen bestanden in de werkmap achterblijven. + docker run --rm \ + -v "$PWD:/w" -w /w \ + -v su-pip-cache:/root/.cache/pip \ + -e PYTHONDONTWRITEBYTECODE=1 \ + python:3.12-slim \ + sh -c "pip install -q -r server-up/requirements.txt pytest \ + && python -m pytest tests -q -p no:cacheprovider" - name: Sync code naar deploy-directory run: | diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index 3bb6f2a..4acbd17 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -44,9 +44,18 @@ jobs: - name: Tests draaien run: | set -euo pipefail - python3 -m venv /tmp/su-test-venv - /tmp/su-test-venv/bin/pip install -q -r server-up/requirements.txt pytest - /tmp/su-test-venv/bin/python -m pytest tests -q + # In een container in plaats van een venv op de runner: die heeft + # geen python3-venv, en zo draaien de tests bovendien op exact de + # Python-versie waarop de app in productie draait. + # PYTHONDONTWRITEBYTECODE + no:cacheprovider voorkomen dat er + # root-eigen bestanden in de werkmap achterblijven. + docker run --rm \ + -v "$PWD:/w" -w /w \ + -v su-pip-cache:/root/.cache/pip \ + -e PYTHONDONTWRITEBYTECODE=1 \ + python:3.12-slim \ + sh -c "pip install -q -r server-up/requirements.txt pytest \ + && python -m pytest tests -q -p no:cacheprovider" - name: Sync code naar deploy-directory run: |