-
Notifications
You must be signed in to change notification settings - Fork 152
Legion Release Process
Elliott Slaughter edited this page Sep 16, 2024
·
1 revision
by Sean Treichler, December 12, 2022
- Ideally 3+ weeks before the end of the month, prime the
CHANGES.txtfile by adding a section for the new release and a few changes for your areas and/or the general areas that nobody really owns. (Bonus points: push with-o ci.skipto avoid wasting CI cycles on such a commit.) - Email everybody and set a target at least 1 week before the end of the month for folks to get changes listed (and any last-minute commits done).
- During these two weeks, nag people to document changes and also watch the github mirroring for the
masterbranch. If it's not happening regularly, the full CI runs are failing and that should be cleaned up before the release. :) - Once
CHANGES.txtis ready and you've got a recent-ish successful mirror commit to github, create anrcbranch based on that commit, and:- finalize
CHANGES.txt(I usually set the release date 2 days in the future to account for testing latency, but I doubt anybody cares that much) - update the
VERSIONfile for the new release name - push the branch to gitlab with
-o ci.skip- no need to do a short CI run
- finalize
- From the web interface, kick off a full pipeline for the newly-pushed
rcbranch - Once the full pipeline passes, do a fast-forward merge (if it's not a fast-forward, something went wrong somewhere) to
stable, and again push that with-o ci.skip - From the web interface, kick off a full pipeline for stable, setting
MIRROR_OKto1. - Once that pipeline passes and the mirror happens, create the appropriately named tag and push it to both gitlab (again,
-o ci.skipis your friend) and manually to github as well. - Press buttons on github to turn that tag into a release.
- Send email to the legion users list.
- Merge stable back into master and delete the
rcbranch.