Commit Graph

164 Commits

Author SHA1 Message Date
b1d9dce29c 🔄 fix: trigger workflow manually
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 13s
CI/CD Pipeline / CI Pipeline (push) Failing after 13s
2026-04-08 09:24:09 +02:00
39bf083a23 🤖 ci: fix Docker Compose exec issue by using run instead
- Replace docker compose exec with docker compose run --rm

- Remove unnecessary container startup step

- Fixes 409 TCP upgrade error in CI workflow

- Maintains same functionality with better isolation
2026-04-08 09:23:04 +02:00
e333c69a71 🐛 fix: set DEPS_HASH as regular variable before export 2026-04-08 00:55:59 +02:00
841b23bb32 🐛 fix: debug DEPS_HASH value 2026-04-08 00:54:43 +02:00
58c8f09c77 🐛 fix: use needs output directly in docker compose step 2026-04-08 00:54:21 +02:00
5a2c896b4a 🐛 fix: add separate step to export DEPS_HASH 2026-04-08 00:53:58 +02:00
6eaca669cd 🐛 fix: use env var instead of needs output for DEPS_HASH 2026-04-08 00:53:21 +02:00
68a5cf7876 🐛 fix: set DEPS_HASH env var for ci-pipeline job 2026-04-08 00:52:47 +02:00
6f51a69854 🐛 fix: remove docker compose install from CI 2026-04-08 00:47:05 +02:00
a0d2bd6996 🐛 fix: correct database.ssl_mode environment variable binding
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 10s
CI/CD Pipeline / CI Pipeline (push) Failing after 17s
- Fix environment variable binding for SSL mode
- Use correct mapstructure tag name
- Match struct field binding

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:28:18 +02:00
07dc72d19e 🐛 fix: remove incorrect argument from LoadConfig call
- Fix compilation error
- LoadConfig takes no arguments

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:27:18 +02:00
076bc120e0 🐛 fix: make BDD test server use actual config with environment variables
- Modify createTestConfig to load real config
- Respect DLC_DATABASE_HOST and other environment variables
- Fallback to defaults if config loading fails
- Enable proper database connection configuration
- Fix BDD tests in Docker containers

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:26:27 +02:00
0026515237 🐛 fix: add missing database environment variable bindings
- Add BindEnv calls for database configuration
- DLC_DATABASE_HOST, DLC_DATABASE_PORT, DLC_DATABASE_USER
- DLC_DATABASE_PASSWORD, DLC_DATABASE_NAME, DLC_DATABASE_SSL_MODE
- Enable environment variable override for database config
- Fix BDD test database connection issues

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:25:01 +02:00
543e9e240a 🐛 fix: use shasum on macOS, sha256sum on Linux
- Detect which hash command is available
- Fix script compatibility across platforms
- Maintain same functionality

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:18:38 +02:00
5ffa60ef65 🐛 fix: use correct DLC_DATABASE_HOST for Docker vs native execution
- Use localhost for native execution (PostgreSQL port mapping)
- Use dance-lessons-coach-postgres for Docker container execution
- Set appropriate environment variables for each execution mode
- Fix container-to-container communication

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:15:57 +02:00
f18716d447 🔧 refactor: simplify BDD database configuration
- Remove unnecessary getPostgresHost() function
- Use direct localhost configuration
- PostgreSQL port is mapped to host, so localhost works everywhere
- Simplify code by removing unnecessary abstraction
- Use existing config system properly

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:10:31 +02:00
cf13b44e0d 🐛 fix: properly detect Docker container vs native execution
- Enhance getPostgresHost() to detect Docker environment
- Check multiple Docker-specific indicators
- Use container name when running inside Docker
- Use localhost when running natively
- Fix BDD test PostgreSQL connection issues

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-08 00:03:49 +02:00
f8474b69c1 🐛 fix: BDD tests PostgreSQL connection for native execution
- Simplify getPostgresHost() to always use localhost by default
- Use DLC_DATABASE_HOST=localhost for all local execution
- Container name only needed when running INSIDE Docker containers
- Fix native execution PostgreSQL connection issues
- Ensure BDD tests connect to localhost:5432 (mapped port)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:52:57 +02:00
6c2399bea6 🔧 refactor: replace docker compose run with docker run --rm
- Use docker run --rm instead of docker compose run
- More explicit container cleanup with --rm flag
- Direct volume mounting and network configuration
- Maintain same functionality with cleaner approach
- Better matches CI/CD workflow style

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:51:54 +02:00
a1804d7aec 🐛 fix: add shared network configuration for Docker Compose services
- Add dance-lessons-coach-network to both compose files
- Ensure build-cache and postgres containers can communicate
- Fix container-to-container connectivity
- Maintain same network name for consistency

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:49:58 +02:00
22099d0ac6 🔧 refactor: simplify local CI/CD script by assuming Docker availability
- Remove conditional Docker availability checks
- Assume Docker is always available (required for workflow)
- Simplify logic flow
- Maintain same functionality but cleaner code
- Match CI/CD workflow assumptions

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:41:15 +02:00
18213f365d 🐛 fix: BDD tests PostgreSQL connection for native execution
- Enhance getPostgresHost() to detect Docker vs native execution
- Use localhost for native execution (PostgreSQL port mapping)
- Use container name for Docker execution
- Fix local CI/CD script to set correct DLC_DATABASE_HOST
- Ensure BDD tests can connect in both Docker and native modes

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:40:08 +02:00
9528b7d288 🐛 fix: BDD tests PostgreSQL connection using DLC_* environment variables
- Add getPostgresHost() function to use DLC_DATABASE_HOST env var
- Default to dance-lessons-coach-postgres container name
- Update local CI/CD script to set proper DLC_* environment variables
- Fix Docker Compose test execution to pass correct database config
- Ensure BDD tests can connect to PostgreSQL in both Docker and native modes

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:38:27 +02:00
f54c60c6a3 🔧 refactor: simplify CI/CD workflow by removing redundant cache checks
- Remove duplicate steps section
- Eliminate redundant cache availability checks
- Simplify logic since build-cache job guarantees cache availability
- Remove unnecessary conditional execution
- Streamline Docker Compose usage

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:28:47 +02:00
9213c97da6 🔧 fix: optimize Docker cache usage by removing redundant go mod tidy
- Remove unnecessary go mod tidy execution when using Docker cache
- Dependencies are already pre-installed in the cache image
- Only run go mod tidy when not using cache (native execution)
- This leverages the true purpose of the Docker build cache

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:22:30 +02:00
da0dc0e30f 🔧 chore: align local CI/CD script with Gitea workflow
- Add dependency hash calculation matching CI workflow
- Add Docker cache detection and usage
- Add PostgreSQL service with Docker Compose
- Execute commands in Docker Compose containers when cache available
- Update test summary to reflect new workflow matching

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:20:52 +02:00
2ca361ccd9 🔧 chore: align Gitea workflow with local CI/CD script
- Add go mod tidy step to match local script
- Execute build.sh script in Docker Compose container
- Maintain consistent build process between local and CI
- Ensure Docker cache compatibility

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:18:22 +02:00
02674dfb50 feat: migrate to Docker Compose for build cache management
- Replace docker run commands with docker compose
- Use separate docker-compose.build.yml for build cache
- Maintain PostgreSQL service with Docker Compose
- Ensure consistent container networking

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 23:15:26 +02:00
4848becbdc 🐛 fix: set working directory directly in Docker command instead of using cd 2026-04-07 22:30:05 +02:00
b562cad09d 🤖 ci: final trigger attempt
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 9s
CI/CD Pipeline / CI Pipeline (push) Failing after 39s
2026-04-07 19:33:27 +02:00
89024c5793 🐛 fix: correct Docker Swagger generation command to match native approach 2026-04-07 19:29:02 +02:00
705230c3ef 🤖 ci: trigger workflow again
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 8s
CI/CD Pipeline / CI Pipeline (push) Failing after 45s
2026-04-07 19:25:41 +02:00
2d0546c68e 🐛 fix: add missing closing quote in Docker Swagger generation command 2026-04-07 19:24:54 +02:00
5460b7f43c 🤖 ci: trigger workflow manually
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 9s
CI/CD Pipeline / CI Pipeline (push) Failing after 1m0s
2026-04-07 19:22:24 +02:00
53bdd9579f feat: add PostgreSQL service support for BDD tests in CI/CD 2026-04-07 19:19:53 +02:00
4604ce7caa 🐛 fix: remove syntax error from Docker Swagger generation command 2026-04-07 19:16:40 +02:00
52065c9cf3 refactor: convert all DanceLessonsCoach mentions to kebab-case
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 10s
CI/CD Pipeline / CI Pipeline (push) Failing after 13s
2026-04-07 19:11:39 +02:00
7f32a113db 🐛 fix: ensure clean BDD database creation between test runs
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 3m26s
CI/CD Pipeline / CI Pipeline (push) Failing after 1m32s
- Add DROP DATABASE IF EXISTS before creating BDD test database

- Prevents errors when database already exists from previous runs

- Ensures clean test environment for each run

Generated by Mistral Vibe.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 18:22:26 +02:00
a98656445f ♻️ refactor: organize BDD steps by domain with JWT implementation
- Split steps into domain-specific files:

  - greet_steps.go: Greet API steps

  - health_steps.go: Health check steps

  - auth_steps.go: Authentication steps with full JWT implementation

  - common_steps.go: Shared validation steps

- Add comprehensive README.md for steps organization

- Implement all TODO items in auth_steps:

  - JWT claims verification for admin

  - JWT token validation and parsing

  - User ID extraction from tokens

  - Token comparison for consecutive authentications

- Update main steps.go to register all domain steps

Generated by Mistral Vibe.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 18:22:13 +02:00
f39a0df338 🧪 test: add JWT edge case scenarios with validation endpoint
- Add expired JWT token scenario

- Add wrong secret JWT token scenario

- Add malformed JWT token scenario

- Implement /api/v1/auth/validate endpoint

- Add JWT parsing and validation to BDD steps

Generated by Mistral Vibe.

Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-07 18:21:56 +02:00
81e0afe1c7 📝 docs: add ADR 0019 for PostgreSQL integration\n\nAdd Architecture Decision Record for migrating from SQLite to PostgreSQL.\nThis ADR documents the direct PostgreSQL implementation approach since\nthere are no existing users or production data.\n\nKey aspects covered:\n- Direct PostgreSQL implementation (no migration needed)\n- Graceful shutdown integration\n- Readiness endpoint enhancement\n- BDD testing strategy with temporary databases\n- Configuration management\n\nGenerated by Mistral Vibe.\nCo-Authored-By: Mistral Vibe <vibe@mistral.ai> 2026-04-07 14:14:39 +02:00
3cfa447a5a 🗑️ chore: remove unused files and update ADR with cleanup information
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 14s
CI/CD Pipeline / CI Pipeline (push) Failing after 27s
2026-04-07 13:48:21 +02:00
c3587119b7 🗂️ refactor: organize Dockerfiles into docker/ directory and update all references
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 22s
CI/CD Pipeline / CI Pipeline (push) Failing after 47s
2026-04-07 12:45:09 +02:00
57db3e0a32 📝 docs: clarify Dockerfile.prod usage and add warnings about latest tag
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 23s
CI/CD Pipeline / CI Pipeline (push) Failing after 34s
2026-04-07 12:39:48 +02:00
2759dd15c7 🐛 fix: correct Docker volume mount paths in CI/CD workflow 2026-04-07 12:16:27 +02:00
9055c8c39b 📝 docs: update ADR 0020 with critical bug fix documentation and testing instructions 2026-04-07 12:13:43 +02:00
edd08b4e1c 🔧 ci: fix Dockerfile.prod to use proper dependency hash and add testing scripts
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 26s
CI/CD Pipeline / CI Pipeline (push) Failing after 58s
2026-04-07 12:12:22 +02:00
e12103c190 📝 docs: enhance test-local-ci-cd.sh with Dockerfile.prod testing options
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 1m21s
CI/CD Pipeline / CI Pipeline (push) Has been cancelled
2026-04-07 12:03:11 +02:00
91890659cf 📝 docs: update ADR 0020 to reflect removal of certificate configuration step 2026-04-07 11:59:00 +02:00
6e2e9e3645 🔧 ci: remove certificate configuration step (no longer needed with traditional docker) 2026-04-07 11:58:21 +02:00