4.5.0 - Release checklist
Keama Release Checklist
-
Gitlabab pipeline results:
-
Tarball preparation:
-
If this is the release of the final version, please check the sanity check ticket of the previous release and make sure all comments are addressed -
bump up version in configure.ac -
bump up version in tests/test_keama.py:test_version()
(#40) -
Note release in changelog -
check the date in LICENSE -
Check README file (including installation details) -
update copyrights in all touched files using a simple script in qa-dhcp. -
Do autoreconf -i
on a modern system, test the code compiles and push your changes.
-
-
Build tarball, packages and docker image
-
Go to keama-tarball > Build with Parameters, in field keamaBranch
put in release branch and run the job, this will build release tarball and save it as an artifact of the job -
Go to keama-pkg > Build with Parameters, in field keamaBranch
put in release branch and run the job, this will build release packages and save it as an artifact of the job (baseBranch
should be 'master' if not using custom qa-dhcp branch) -
Go to keama-docker > Build with Parameters, in field keamaBranch
put in release branch and run the job, this will build release tarball and save it as an artifact of the job (keamadockerBranch
should be 'master' if not using custom keama-docker branch) -
Go to keama-release-notes > Build with Parameters, in field version
put in release version and run the job, this will build release notes in txt format and save it as an artifact of the job. -
before tarball will be deemed as ready to release it will be release candidate
. Each consecutive respin will have it's own name starting from-rc1
-
open a ticket in keama repo called release X.Y.Z-rcX sanity checks
and put there location of release tarball, packages, and docker image -
wait for team input about new tarball, if respin is needed go back to Build tarball
point also increasing release candidate number -
if tarball is accepted create a tag of this version on a last commit in release branch and kea-docker repo -
move tarball and release notes to non release candidate location (e.g. moving to /data/shared/sweng/keama/releases/4.5.0) -
make sure that new release directory allow group write e.g. chmod 665 /data/shared/sweng/dhcp/releases/4.3.2b1
-
upload packages to cloudsmith -
upload docker image to cloudsmith -
open tickets to address issues mentioned in sanity checks IF those were not already fixed and close sanity check ticket
-
-
Signing and notification
-
Sign the tarball and put signature files with the tarball -
notify support about readiness of release, at this point QA and dev team work is done
-
-
Post release
-
mark jenkins jobs to save forever. -
Bump version in configure.ac
,tests/test_keama.py:test_version()
(#40)and doautoreconf -i
-
push to repo and unfreeze the code
-
-
Releasing tarball
-
(Support) Wait for clearance from Security Officer to proceed with the public release (if applicable). -
(Support) Confirm that the tarballs are signed correctly. -
(Support) Place tarballs in public location on FTP site. -
(Support) Publish links to downloads on ISC website. -
(Support) Write release email to dhcp-announce. -
(Support) Write email to dhcp-users (if a major release). -
(Support) Update tickets in case of waiting for support customers. -
(Marketing) Announce on social media. -
(Marketing) Write blog article (if a major release).
-
Edited by Marcin Godzina