Libqb Release Checklist

From ClusterLabs

Jump to: navigation, search

Pre-release testing

Run the internal test suite on all supported operating systems.

BSD-based systems must use gmake, e.g.:

./autogen.sh
MAKE=gmake ./configure --prefix=/usr/local
gmake all check

Release process

  • This should be done from a system with a reasonably recent automake and autoconf (e.g. RHEL7).
  • Ensure you have a completely clean and up-to-date checkout, either by making a new one or by pulling from upstream master and running:
 make maintainer-clean
 ./autogen.sh
 ./configure
  • Edit the -version-info version in lib/Makefile.am appropriately to the release. For details on library versioning, see Updating library version information.
  • Commit that change, but do not push yet.
  • Build and GPG-sign the tarballs, and tag the release (either pass in a GPG key or edit the default in the file):
  make -f build-aux/release.mk version=$NEW_RELEASE_VERSION release=yes [gpgsignkey=$KEY]
  make
  (watch for the line like warning: "1.0.0.17-43ef" parsed as: "1" "." "0" "." "0" ".17-43ef")
  • Ensure upstream has the new commit and tag (replace origin if upstream is configured differently in for your checkout):
  git push --follow-tags origin
  • Update the generated documentation:
    • Checkout the gh-pages branch
    • Pull in changes from master branch (merge and commit if necessary).
    • From the top level of the checkout, run the following to generate online documentation (ABI compatibility, API documentation and changelog).
 ./build-aux/generate-docs
Personal tools