This repository has been archived on 2026-02-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
breakpilot-pwa/docker-compose.test.yml
Benjamin Admin bfdaf63ba9 fix: Restore all files lost during destructive rebase
A previous `git pull --rebase origin main` dropped 177 local commits,
losing 3400+ files across admin-v2, backend, studio-v2, website,
klausur-service, and many other services. The partial restore attempt
(660295e2) only recovered some files.

This commit restores all missing files from pre-rebase ref 98933f5e
while preserving post-rebase additions (night-scheduler, night-mode UI,
NightModeWidget dashboard integration).

Restored features include:
- AI Module Sidebar (FAB), OCR Labeling, OCR Compare
- GPU Dashboard, RAG Pipeline, Magic Help
- Klausur-Korrektur (8 files), Abitur-Archiv (5+ files)
- Companion, Zeugnisse-Crawler, Screen Flow
- Full backend, studio-v2, website, klausur-service
- All compliance SDKs, agent-core, voice-service
- CI/CD configs, documentation, scripts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 09:51:32 +01:00

154 lines
4.1 KiB
YAML

# BreakPilot PWA - Test-Infrastruktur
#
# Vollstaendige Integration-Test Umgebung fuer CI/CD Pipeline.
# Startet alle Services isoliert fuer Integration-Tests.
#
# Verwendung:
# docker compose -f docker-compose.test.yml up -d
# docker compose -f docker-compose.test.yml down -v
#
# Verbindungen:
# PostgreSQL: localhost:55432 (breakpilot_test/breakpilot/breakpilot)
# Valkey/Redis: localhost:56379
# Consent Service: localhost:58081
# Backend: localhost:58000
# Mailpit Web: localhost:58025
# Mailpit SMTP: localhost:51025
version: "3.9"
services:
# ========================================
# Datenbank-Services
# ========================================
postgres-test:
image: postgres:16-alpine
container_name: breakpilot-postgres-test
environment:
POSTGRES_DB: breakpilot_test
POSTGRES_USER: breakpilot
POSTGRES_PASSWORD: breakpilot_test
ports:
- "55432:5432"
volumes:
- postgres_test_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U breakpilot -d breakpilot_test"]
interval: 5s
timeout: 5s
retries: 5
networks:
- breakpilot-test-network
restart: unless-stopped
valkey-test:
image: valkey/valkey:7-alpine
container_name: breakpilot-valkey-test
ports:
- "56379:6379"
healthcheck:
test: ["CMD", "valkey-cli", "ping"]
interval: 5s
timeout: 5s
retries: 5
networks:
- breakpilot-test-network
restart: unless-stopped
# ========================================
# Application Services
# ========================================
# Consent Service (Go)
consent-service-test:
build:
context: ./consent-service
dockerfile: Dockerfile
container_name: breakpilot-consent-service-test
ports:
- "58081:8081"
depends_on:
postgres-test:
condition: service_healthy
valkey-test:
condition: service_healthy
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:8081/health"]
interval: 10s
timeout: 5s
retries: 10
start_period: 30s
environment:
- DATABASE_URL=postgres://breakpilot:breakpilot_test@postgres-test:5432/breakpilot_test
- VALKEY_URL=redis://valkey-test:6379
- REDIS_URL=redis://valkey-test:6379
- JWT_SECRET=test-jwt-secret-for-integration-tests
- ENVIRONMENT=test
- LOG_LEVEL=debug
networks:
- breakpilot-test-network
restart: unless-stopped
# Backend (Python FastAPI)
backend-test:
build:
context: ./backend
dockerfile: Dockerfile
container_name: breakpilot-backend-test
ports:
- "58000:8000"
depends_on:
postgres-test:
condition: service_healthy
valkey-test:
condition: service_healthy
consent-service-test:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 10s
timeout: 5s
retries: 10
start_period: 45s
environment:
- DATABASE_URL=postgresql://breakpilot:breakpilot_test@postgres-test:5432/breakpilot_test
- CONSENT_SERVICE_URL=http://consent-service-test:8081
- VALKEY_URL=redis://valkey-test:6379
- REDIS_URL=redis://valkey-test:6379
- JWT_SECRET=test-jwt-secret-for-integration-tests
- ENVIRONMENT=test
- SMTP_HOST=mailpit-test
- SMTP_PORT=1025
- SKIP_INTEGRATION_TESTS=false
networks:
- breakpilot-test-network
restart: unless-stopped
# ========================================
# Development/Testing Tools
# ========================================
# Mailpit (E-Mail Testing)
mailpit-test:
image: axllent/mailpit:latest
container_name: breakpilot-mailpit-test
ports:
- "58025:8025" # Web UI
- "51025:1025" # SMTP
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:8025/api/v1/info"]
interval: 10s
timeout: 5s
retries: 5
networks:
- breakpilot-test-network
restart: unless-stopped
networks:
breakpilot-test-network:
driver: bridge
volumes:
postgres_test_data: