Releases go through a Merge Request to main. The tag is pushed after the MR is merged, not before.
- Create a release branch from
main:git checkout main && git pull git checkout -b release/0.9.0 - Update
[Unreleased]section inCHANGELOG.md— rename it to the new version with today's date, e.g.## [0.9.0] - 2026-05-19. - Update
versioninpyproject.toml. - Commit:
git commit -am "Release 0.9.0" git push origin release/0.9.0 - Open an MR targeting
mainand get it reviewed and merged via the GitLab UI. - After the MR is merged, tag the merge commit on
main:git tag v0.9.0 git push origin v0.9.0
CI picks up the tag and automatically pushes to github.com/simplito/deepfellow-cli.
Tags must match v<major>.<minor>.<patch> (e.g. v0.9.0). Only these trigger the GitHub push.
Add a CI/CD variable in GitLab → Settings → CI/CD → Variables:
| Variable | Value |
|---|---|
GITHUB_MIRROR_TOKEN |
GitHub Personal Access Token with repo scope (classic) or contents:write (fine-grained) for simplito/deepfellow-cli |