--- services: test-db: container_name: mathesar-test-db extends: file: docker-compose.dev.yml service: dev-db-base expose: - "5432" healthcheck: interval: 1s start_period: 2s test-user-db: container_name: mathesar-test-user-db extends: service: test-db environment: - POSTGRES_DB=my_data - POSTGRES_USER=data_admin - POSTGRES_PASSWORD=data1234 api-test-service: container_name: mathesar-api-test-service build: context: . target: testing dockerfile: Dockerfile args: PYTHON_VERSION: ${PYTHON_VERSION:-3.14-bookworm} environment: - ALLOWED_HOSTS=* - DJANGO_SUPERUSER_PASSWORD=password - POSTGRES_DB=mathesar_django - POSTGRES_USER=mathesar - POSTGRES_PASSWORD=mathesar - POSTGRES_HOST=mathesar-test-db - POSTGRES_PORT=5432 - DEBUG=true - SKIP_STATIC_COLLECTION=true - SECRET_KEY=test12345 volumes: - .:/code/ depends_on: test-db: condition: service_healthy healthcheck: test: ["CMD-SHELL", "curl --fail http://localhost:8000/ || exit 1"] interval: 1s timeout: 1s retries: 30 start_period: 3s expose: - "8000" test-runner: container_name: mathesar-api-test-runner build: context: api_tests args: PYTHON_VERSION: ${PYTHON_VERSION:-3.14-bookworm} depends_on: api-test-service: condition: service_healthy test-user-db: condition: service_healthy volumes: - ./api_tests/:/code/ volumes: ui_node_modules_test: