- Create Dockerfile for API Gateway
- Multi-stage build using golang:1.25-alpine
- Minimal runtime image using alpine:latest
- Exposes port 8080
- Add API Gateway service to docker-compose.yml
- Depends on Consul and all core services
- Environment variables for gateway configuration
- Port 8080 exposed
- Update SUMMARY.md
- Add API Gateway to service list
- Add API Gateway to Docker build instructions
- Update file structure to include API Gateway Dockerfile
- Remove duplicate CoreModule() calls from all service main.go files
- NewContainer() already includes CoreModule() automatically
- This was causing duplicate ConfigProvider provider errors
- Update all _fx.go files to use *database.Client instead of *ent.Client
- database.Client embeds *ent.Client, so it can be used directly
- This fixes type mismatches between providers and consumers
- Keep ent import for constants like ent.Desc
- All services now build and should start successfully
- Create Dockerfiles for all four services (auth, identity, authz, audit)
- Multi-stage builds using golang:1.25-alpine
- Minimal runtime images using alpine:latest
- Copy config files to runtime image
- Create docker-compose.dev.yml for development
- Only PostgreSQL and Consul
- Use when running services locally with 'go run'
- Update docker-compose.yml for full deployment
- All services + infrastructure
- Services build from Dockerfiles
- Health checks and dependencies configured
- Environment variables for service configuration
- Add .dockerignore to optimize build context
- Excludes docs, tests, IDE files, build artifacts
- Update SUMMARY.md
- Document both docker-compose files
- Add Docker deployment section
- Update file structure to include Dockerfiles
- Add Consul service to docker-compose.yml
- Running in dev mode on port 8500
- Health checks configured
- Persistent volume for data
- Web UI available at http://localhost:8500/ui
- Update SUMMARY.md
- Document Consul setup in docker-compose
- Add Consul verification steps
- Update prerequisites to include Docker Compose
- Add note about Consul Web UI
- Remove obsolete version field from docker-compose.yml
Story 1.6: OpenTelemetry Distributed Tracing
- Implemented tracer initialization with stdout (dev) and OTLP (prod) exporters
- Added HTTP request instrumentation via Gin middleware
- Integrated trace ID correlation in structured logs
- Added tracing configuration to config files
- Registered tracer provider in DI container
Documentation and Setup:
- Created Docker Compose setup for PostgreSQL database
- Added comprehensive Epic 1 summary with verification instructions
- Added Epic 0 summary with verification instructions
- Linked summaries in documentation index and epic READMEs
- Included detailed database testing instructions
- Added Docker Compose commands and troubleshooting guide
All Epic 1 stories (1.1-1.6) are now complete. Story 1.7 depends on Epic 2.