Tests in der CI über den Build-Kontext statt per Bind-Mount
Docker-Image bauen / build (push) Successful in 1m31s
Docker-Image bauen / build (push) Successful in 1m31s
Der bisherige Schritt hängte das Arbeitsverzeichnis mit -v "$PWD":/app in einen Container. Läuft der Gitea-Runner selbst in einem Container, zeigt $PWD auf einen Pfad, den der Docker-Daemon des Hosts nicht kennt: der Mount wäre leer, pytest fände keine Tests und meldete Erfolg. Wieder ein Test, der nicht hätte fehlschlagen können. Jetzt über Dockerfile.test - der Code kommt über den Build-Kontext hinein, unabhängig davon, wie der Runner aufgebaut ist. tests/ bleibt dafür im Kontext; das Anwendungs-Image kopiert sie weiterhin nicht mit. Lokal genauso ausgeführt wie die CI es tun wird: 81 Tests grün. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GR4bNaj9GtRu57J4Niii8o
This commit is contained in:
@@ -28,10 +28,12 @@ jobs:
|
||||
- name: Tests
|
||||
run: |
|
||||
set -eu
|
||||
docker run --rm -v "$PWD":/app -w /app python:3.11-slim bash -c '
|
||||
pip install --quiet -r requirements-dev.txt
|
||||
python -m pytest -q
|
||||
'
|
||||
# Über den Build-Kontext statt per Bind-Mount: läuft der Runner
|
||||
# selbst in einem Container, zeigt $PWD auf einen Pfad, den der
|
||||
# Docker-Daemon des Hosts nicht kennt - der Mount wäre leer und
|
||||
# die Tests liefen ohne Fehlermeldung ins Leere.
|
||||
docker build -f Dockerfile.test -t kleiderboerse-tests .
|
||||
docker run --rm kleiderboerse-tests
|
||||
|
||||
- name: Version bestimmen
|
||||
id: meta
|
||||
|
||||
Reference in New Issue
Block a user