Rolling an OpenSRF release
Version 2.0 of OpenSRF is deprecated.
Create a local working branch for the release:
$ git checkout -b tmp_rel_2_1.0 origin/rel_2_1
. 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:
$ # get the date of the last commit to the previous release
$ git log osrf_rel_2_0_1 # last commit was 2011-08-19
$ # this is not perfect, but it's close enough...
$ git log --pretty --numstat --summary --since 2011-08-19 > ChangeLog.2.1.0
Bump version numbers in the temporary working branch:
Update the AC_INIT() version number in the tagged release in
Update the ChangeLog in the tagged release
Update the version stamp in the tagged release (edit src/perl/lib/OpenSRF.pm)
Follow the steps to build and test the release (see below) and ensure that all tests pass.
Push the temporary release branch to origin:
git push origin tmp_rel_2_1_0:rel_2_1
Create a clean export of the files in a working directory (
in the following example) and generate a tarball that contains the autotools-ized files:
git archive --prefix=opensrf-<version>/ tmp_rel_2_1_0 | (cd /tmp/ && tar xvf -)
tar zcvf opensrf-2.1.0.tar.gz opensrf-2.1.0/
Bonus hygiene step: Take the tarball you just created and test installing OpenSRF from it; at the very least, ensure that
make check passes.
If all is well, tag the branch (-s requires having a GPG public key installed) and push the new tag to the public repository:
git tag -s osrf_rel_2_1_0
git push --tags
md5sum opensrf-2.1.0.tar.gz > opensrf-2.1.0.tar.gz.md5
cp opensrf-2.1.0/ChangeLog OpenSRF-ChangeLog-2.1.0
scp OpenSRF-ChangeLog-2.1.0 opensrf-2.1.0.tar.gz* open-ils.org:~/
versions of the install instructions and release notes for the web site:
asciidoc -a toc -a numbered opensrf-2.1.0/INSTALL
asciidoc -a toc -a numbered opensrf-2.1.0/doc/RELEASE_NOTES.txt
Move the release files into the correct download directories:
Previews / alphas / betas / release candidates go in
Final releases go in
Install docs go in
Release notes go in
zzz_archive/dev/release_process/opensrf/2.0.txt · Last modified: 2020/10/30 11:31 by roganh