chore(ci): bootstrap CI + hooks #1
4
TODO.md
4
TODO.md
@@ -21,8 +21,8 @@ TODO
|
||||
- [ ] Optional: add CODEOWNERS
|
||||
|
||||
- Protections & settings (in Gitea UI)
|
||||
- [ ] Protect main and integration with required checks
|
||||
- [ ] Enable auto-merge on green for feature→integration
|
||||
- [ ] Protect main and release/* with required checks
|
||||
- [ ] Leave integration unprotected; allow auto-merge on green
|
||||
- [ ] Require 1 approval for integration→main
|
||||
- [ ] Revisit enabling CI and protections after runners are ready (target: 2025-09-24)
|
||||
|
||||
|
@@ -4,16 +4,16 @@ Scope
|
||||
- Applies to this repo. Users typically consume tagged releases; contributors work via branches/PRs. CI/CD config is Gitea‑native; no GitHub/GitLab.
|
||||
|
||||
Branches
|
||||
- main: production; default branch.
|
||||
- integration: development. Equivalent to develop.
|
||||
- Working branches: feature/<topic>, fix/<topic>, chore/<topic> from integration.
|
||||
- Hotfix: hotfix/<date> from main; PR back to main, then forward-merge into integration.
|
||||
- Release branch: not long‑lived. Optionally maintain a lightweight release branch fast‑forwarded to the latest tag via CI.
|
||||
- main: production; default branch. Protected.
|
||||
- integration: development (unprotected; merges auto on green).
|
||||
- Working branches: `feature/<topic>`, `fix/<topic>`, `chore/<topic>` from integration.
|
||||
- Hotfix: `hotfix/<date>` from main; PR back to main, then forward-merge into integration.
|
||||
- Release branch: ephemeral or lightweight `release/*`. Protect when present; optionally fast‑forward to latest tag via CI.
|
||||
|
||||
Merges & Approvals
|
||||
- Feature → integration: squash merge; bot auto‑merge on green (no human approval). Self‑merge allowed.
|
||||
- Feature → integration: squash merge; auto‑merge on green (no human approval). Self‑merge allowed.
|
||||
- integration → main: squash merge; require 1 approval; self‑merge not allowed.
|
||||
- Force pushes disabled on protected branches; PRs required.
|
||||
- Force pushes disabled on protected branches (`main`, `release/*`); PRs required.
|
||||
|
||||
Commit Style
|
||||
- Conventional Commits for PR titles and commit messages.
|
||||
@@ -27,11 +27,10 @@ Release Flow
|
||||
3) Optional: CI fast‑forwards a release branch pointer to the new tag.
|
||||
|
||||
Protected Checks (to enable when runners are ready)
|
||||
- ci / lint, ci / build, ci / commitlint. Add ci / test and ci / security if/when introduced.
|
||||
- On protected branches (`main`, `release/*`): ci / lint, ci / build, ci / commitlint. Add ci / test and ci / security if/when introduced.
|
||||
|
||||
CODEOWNERS
|
||||
- Keep minimal; require your review for integration → main.
|
||||
|
||||
Notes
|
||||
- No secrets required for this repo. Future repos should integrate Vault for secrets.
|
||||
|
||||
|
Reference in New Issue
Block a user