mirror of
https://seed.radicle.dev/rad:zwTxygwuz5LDGBq255RA2CbNGrz8.git
synced 2026-10-18 19:30:29 +08:00
2.3 KiB
2.3 KiB
Release process for the Radicle CI broker
Lars follows this process to make a release of the CI broker.
- Make sure all the changes needed for the release have been made.
- check open issues for anything urgent
- check open patches for anything that should be included
- check Zulip discussions for anything not captured in issues
- Make sure the code in
maincan be deployed toci0and CI runs successfully for all repositories.cibtool --db ci-broker.db trigger --all
- Start a branch for the release.
git switch -c release
- Run
make, ensure it's successful. This builds the code and runs the test suite. - Update version number in
Cargo.toml, runmake semverto verify the new version number follows semantic versioning. - Run
cargo updateto make sureCargo.lockhas the new crate version number. - Update new version in
debian/changelogas well.dch -v a.b.c-1 New version.dch -r ''
- Update
NEWS.mdbasedon what's changed since the previous release.git log -p vA.B.C..
- Run
rad cito make sure CI runs successfully. - Commit changes.
git commit -am "chore: prepare radicle-ci-broker release A.B.C."
- Check if publishing would work.
cargo publish --dry-run
- Check
debbuilding works. Throw away results.debian/build-debrm ../*_*
- Push patch, wait for CI to succeed.
git push rad HEAD:refs/patches
- Merge patch, push merge.
git switch maingit merge releasegit push rad HEAD
- Create release tag.
git tag -sam "radicle-ci-broker release version A.B.C"vA.B.C
- Publish crate.
cargo publish
- Build
deb, import into the Radicle APT repository.debian/build-deb
- Push tag.
git push --tags rad
- Announce on Zulip in the
#annoncechannel in the topic for Radicle CI releases. IncludeNEWS.mdsnipppet for release, changing the top heading to mention "Radicle CI broker". - Upgrade my CI nodes to new releasse.
- Update my other Radicle CI components if needed.
- Add commit of new release to upgrade tests in
ci-broker.md