Add comprehensive E2E testing infrastructure including: docker-compose.playwright.yml for test environment orchestration TestDataManager utility for per-test namespace isolation Wait helpers for flaky test prevention Role-based auth fixtures for admin/user/guest testing GitHub Actions e2e-tests.yml with 4-shard parallelization Health check utility for service readiness validation Phase 0 of 10-week E2E testing plan (Supervisor approved 9.2/10) All 52 existing E2E tests pass with new infrastructure
Docker Compose Files
This directory contains all Docker Compose configuration variants for Charon.
File Descriptions
| File | Purpose |
|---|---|
docker-compose.yml |
Main production compose configuration. Base services and production settings. |
docker-compose.dev.yml |
Development overrides. Enables hot-reload, debug logging, and development tools. |
docker-compose.local.yml |
Local development configuration. Standalone setup for local testing. |
docker-compose.remote.yml |
Remote deployment configuration. Settings for deploying to remote servers. |
docker-compose.override.yml |
Personal local overrides. Gitignored - use for machine-specific settings. |
Usage Patterns
Production Deployment
docker compose -f .docker/compose/docker-compose.yml up -d
Development Mode
docker compose -f .docker/compose/docker-compose.yml \
-f .docker/compose/docker-compose.dev.yml up -d
Local Testing
docker compose -f .docker/compose/docker-compose.local.yml up -d
With Personal Overrides
Create your own docker-compose.override.yml in this directory for personal
configurations (port mappings, volume paths, etc.). This file is gitignored.
docker compose -f .docker/compose/docker-compose.yml \
-f .docker/compose/docker-compose.override.yml up -d
Notes
- Always use the
-fflag to specify compose file paths from the project root - The override file is automatically ignored by git - do not commit personal settings
- See project tasks in VS Code for convenient pre-configured commands