fix(test-infra): reset docker volumes before each test run

The test-db postgres image only executes /docker-entrypoint-initdb.d on a
fresh data directory. Reusing the volume from a prior run silently skipped
new schema migrations (e.g. 04_detection_classes.sql, 05_resources.sql),
producing phantom "relation does not exist" failures on the second and
subsequent runs. Always start with a clean state.

Verified: two consecutive runs both green (48/48 e2e).
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Oleksandr Bezdieniezhnykh
2026-05-13 04:57:18 +03:00
parent 0c9340a1af
commit 43fe38e67d
+7
View File
@@ -1,4 +1,11 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -euo pipefail set -euo pipefail
cd "$(dirname "${BASH_SOURCE[0]}")/.." cd "$(dirname "${BASH_SOURCE[0]}")/.."
# Drop containers AND volumes from any prior run. The test-db image only runs
# /docker-entrypoint-initdb.d on a fresh data directory; reusing the volume
# silently skips schema migrations and produces phantom "relation does not
# exist" failures (e.g. detection_classes, resources). Always start clean.
docker compose -f docker-compose.test.yml down -v --remove-orphans
docker compose -f docker-compose.test.yml up --build --abort-on-container-exit --exit-code-from e2e-consumer --attach e2e-consumer docker compose -f docker-compose.test.yml up --build --abort-on-container-exit --exit-code-from e2e-consumer --attach e2e-consumer