diff --git a/CLAUDE.md b/CLAUDE.md index d60b740..1ed6833 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -62,6 +62,20 @@ bun run build # Vite build → dist/client/ - `tests/helpers/db.ts`: `createTestDb()` creates in-memory SQLite via Drizzle migrations and seeds an "Uncategorized" category. - **E2E**: Playwright (`bun run test:e2e`). Tests in `e2e/` run against a seeded SQLite database with the server in production mode. Seed script: `e2e/seed.ts`. +## Releasing + +Releases are managed by a Gitea Actions workflow (`.gitea/workflows/release.yml`). **Never create tags or releases manually** — always trigger the pipeline. + +The workflow runs CI (lint, test, build), computes the next version from the latest tag, generates a changelog, creates the tag, builds and pushes a Docker image, and creates a Gitea release. + +Trigger via Gitea API: +```bash +curl -s -X POST "https://gitea.jeanlucmakiola.de/api/v1/repos/makiolaj/GearBox/actions/workflows/release.yml/dispatches" \ + -H "Authorization: token " \ + -H "Content-Type: application/json" \ + -d '{"ref": "Develop", "inputs": {"bump": "patch"}}' # patch | minor | major +``` + ## Branching - **Develop** is the main branch. Keep it clean — don't commit large feature work directly.