zzz_archive:dev:release_process:opensrf:2.0
This is an old revision of the document!
Rolling an OpenSRF release
- Create a local working branch for the release:
$ git checkout -b tmp_rel_2_0_1 origin/rel_2_0
. This can be thrown away after you finish the release.
- Create the Changelog containing the changes for this release only. Since 1.6.0 we have been creating ChangeLogs that show the cumulative changes for a given release in reverse chronological order, distinguishing between alphas, betas, and point releases, with a header distinguishing each block of changes. That way we will not have to link to ten different ChangeLogs if we reach 1.6.10 for example:
$ git log --pretty --numstat --summary 812d529.. | sed -e 's/Signed-off-by:/\n\n\t&/g' > ChangeLog.2.0.1 $ echo '0r ChangeLog.2.0.1 . 0a Changelog for 2.0.1 =================== . w' | ed ChangeLog
- Bump version numbers in the temporary working branch:
- Update the AC_INIT() version number in the tagged release
- Update the ChangeLog in the tagged release
- Update the version stamp in the tagged release (edit src/perl/lib/OpenSRF.pm)
- README
- Follow the steps to build and test the release (see below) and ensure that all tests pass.
- Tag the branch (-s requires having a GPG public key installed and push it):
git tag -s osrf_rel_2_0_1 git push --tags
- Push the temporary release branch to origin:
git push origin tmp_rel_2_0_1:rel_2_0
- Checkout the tag:
git checkout osrf_rel_2_0_1
- Create a clean export of the files in a working directory (
/tmp
in the following example) and generate a tarball that contains the autotools-ized files:git archive --prefix=opensrf-<version>/ <tagname> | (cd /tmp/ && tar xvf -) cd /tmp/opensrf-<version>/ ./autogen.sh cd .. tar zcvf opensrf-2.0.1.tar.gz opensrf-2.0.1/
- Bonus hygiene step: Take the tarball you just created and test installing OpenSRF from it; at the very least, ensure that
make check
passes. md5sum opensrf-2.0.1.tar.gz > opensrf-2.0.1.tar.gz.md5 cp opensrf-2.0.1/ChangeLog OpenSRF-ChangeLog-2.0.1 scp OpenSRF-ChangeLog-2.0.1 opensrf-2.0.1.tar.gz* open-ils.org:~/
- Move the above into the correct download dir
zzz_archive/dev/release_process/opensrf/2.0.1317180292.txt.gz · Last modified: 2022/02/10 13:34 (external edit)