BuyingAgent/docker-compose.test.yml

51 lines
1.2 KiB
YAML
Raw Normal View History

# Disposable test stack. Uses tmpfs so the normal data volume is never touched.
# docker compose -f docker-compose.test.yml up --build --abort-on-container-exit --exit-code-from api
name: buyingagent-test
services:
postgres:
image: postgres:17-alpine
environment:
POSTGRES_DB: buyingagent_test
POSTGRES_USER: buyingagent_test
POSTGRES_PASSWORD: test
tmpfs:
- /var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U buyingagent_test -d buyingagent_test"]
interval: 5s
timeout: 5s
retries: 10
networks:
- buyingagent-test-network
api:
build:
context: .
dockerfile: Dockerfile
target: test
environment:
DB_HOST: postgres
DB_PORT: "5432"
DB_NAME: buyingagent_test
DB_USER: buyingagent_test
DB_PASSWORD: test
ENVIRONMENT: test
ENGINE_BUILD: test
depends_on:
postgres:
condition: service_healthy
command:
[
"/bin/sh",
"-c",
"/app/.venv/bin/alembic upgrade head && /app/.venv/bin/pytest tests -ra --tb=short",
]
networks:
- buyingagent-test-network
networks:
buyingagent-test-network:
driver: bridge