#14: Gitea CI, registry composes, Node 22 image and changelog

- Gitea Actions: Trivy, Vitest in a Dockerfile test stage, arm64 image build, image
  scan and smoke test; releases reuse the image by content hash.
- docker-compose.<edition>.registry.yaml run the stack from the published image.
- Dockerfile: Node 22, a test stage, and no npm in the runtime image.
- README, CLAUDE.md and CHANGELOG describe the CI, the image and the release flow.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas RayanandClaude Sonnet 5.5 committed 2026-11-01 22:54:00 -03:00
1 parent 640e52c0c9
commit a4a2584f37
12 files changed
+606 -9

No files matched your search

+4
View File
@@ -15,8 +15,12 @@ npm run dev # dev server (loads .env, watches files), panel on :3000
npm run hash -- <pw> # generate the admin bcrypt hash (raw + base64 forms)
docker compose -f docker-compose.bedrock.yaml up -d --build # full Bedrock stack
docker compose -f docker-compose.java.yaml up -d --build # full Java stack
docker build --target test . # Vitest inside the image (what CI runs)
scripts/smoke-imagem.sh <image> # image smoke test (what CI runs)
```
CI/CD lives in `.gitea/workflows` (Gitea runners): `ci.yml` on branches, `release.yml` on `main` and `vX.Y.Z` tags. The image is `git.lucasrguerra.dev.br/lucasrguerra/craftdock` (public). Remote: `gitea`. Keep `CHANGELOG.md` updated under *Unreleased* and release with `git tag vX.Y.Z && git push gitea vX.Y.Z`.
Run a single test file: `npx vitest run test/services/playerDetailService.test.js`.
## Git workflow (mandatory)