Commit Graph

3 Commits

Author SHA1 Message Date
3a148fabe2 fix: add gosu to chown skins directory and drop privileges
All checks were successful
CI / lint (push) Successful in 19s
CI / test (push) Successful in 19s
CI / build (push) Successful in 19s
CI / docker (push) Successful in 1m6s
- Install gosu in container to change ownership of mounted volume\n- Entrypoint now chowns /var/www/cdn/skins to appuser:appuser and runs server as non-root\n- This should resolve permission denied errors when creating skin subdirectories\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 17:47:33 +03:00
3e4b97e262 fix: update builder image to golang:1.25-alpine
All checks were successful
CI / lint (push) Successful in 19s
CI / test (push) Successful in 19s
CI / build (push) Successful in 18s
CI / docker (push) Successful in 1m12s
go.mod requires Go 1.25+, but Dockerfile was still using golang:1.22-alpine
as the builder image. This caused CI build failure:
  "go.mod requires go >= 1.25.0 (running go 1.22.12)"
2026-06-01 17:20:51 +03:00
5fba2e78d5 feat: add Docker infrastructure, migrations, CI/CD client, session cleanup, tests
Docker & Deployment:
- Add Dockerfile (multi-stage, alpine, non-root)
- Add docker-compose.yml (caddy, backend, postgres, watchtower)
- Add Caddyfile (TLS, file_server, reverse proxy)
- Add .env.example

Database:
- Add migrations/001_init.sql (all tables + indexes)

CI/CD:
- Add cmd/ci-release/main.go (launcher binary upload tool)

Session management:
- Add internal/session/cleanup.go (background expired session cleanup)
- Integrate cleanup worker into main.go

Bug fixes:
- Fix launcherLatest download URL to include version segment
- Fix serveLauncherAsset path to match route pattern
- Add Content-Type detection from file extension in CAS serveFile
- Add empty-field validation in webLogin
- Format string fix in ci-release (%d → %s for resp.Status)

Tests:
- Add internal/auth/auth_test.go (8 tests)
- Add internal/cas/cas_test.go (7 tests)
- Add internal/session/cleanup_test.go (1 test)
- Add internal/api/api_test.go (5 tests)
- All tests passing, go vet clean

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-29 20:09:00 +03:00