docs: add release flow for nightly and main
This commit is contained in:
44
docs/RELEASE.md
Normal file
44
docs/RELEASE.md
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
# Release Flow (Main + Nightly)
|
||||||
|
|
||||||
|
This project uses two release channels:
|
||||||
|
|
||||||
|
- `nightly`: integration and test channel
|
||||||
|
- `main`: stable channel
|
||||||
|
|
||||||
|
## Rules
|
||||||
|
|
||||||
|
- Feature work goes to `nightly` only.
|
||||||
|
- Promote from `nightly` to `main` with `--squash` only.
|
||||||
|
- `main` version has no suffix (`0.1.60`).
|
||||||
|
- `nightly` version uses `-nightly` and is always at least one patch higher than `main` (`0.1.61-nightly`).
|
||||||
|
- Keep changelogs split:
|
||||||
|
- `CHANGELOG-NIGHTLY.md`
|
||||||
|
- `CHANGELOG.md`
|
||||||
|
|
||||||
|
## Nightly publish
|
||||||
|
|
||||||
|
1) Finish changes on `nightly`.
|
||||||
|
2) Bump addon version in `addon/addon.xml` to `X.Y.Z-nightly`.
|
||||||
|
3) Build and publish nightly repo artifacts.
|
||||||
|
4) Push `nightly`.
|
||||||
|
|
||||||
|
## Promote nightly to main
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git checkout main
|
||||||
|
git pull origin main
|
||||||
|
git merge --squash nightly
|
||||||
|
git commit -m "release: X.Y.Z"
|
||||||
|
```
|
||||||
|
|
||||||
|
Then:
|
||||||
|
|
||||||
|
1) Set `addon/addon.xml` version to `X.Y.Z` (without `-nightly`).
|
||||||
|
2) Build and publish main repo artifacts.
|
||||||
|
3) Push `main`.
|
||||||
|
4) Optional tag: `vX.Y.Z`.
|
||||||
|
|
||||||
|
## Local ZIPs (separated)
|
||||||
|
|
||||||
|
- Main ZIP output: `dist/local_zips/main/`
|
||||||
|
- Nightly ZIP output: `dist/local_zips/nightly/`
|
||||||
Reference in New Issue
Block a user