release revision 3d4a70fe38769e42b943717256208b63fec05f32
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCopyright (C) 2000 Internet Software Consortium.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinSee COPYRIGHT in the source root or http://isc.org/copyright.html for terms.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson$Id: release,v 1.15 2000/09/08 21:27:47 gson Exp $
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsPreparing a bind9 release
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas GustafssonHere's a rough outline of the steps to follow in preparing a new bind9
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafssonrelease.
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson - Update the README file
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - Update doc/misc/options, verify that doc/misc/dnssec is up-to-date
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - Verify that the file "version" contains the correct version
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews number (it should have been incremented after the
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews previous release)
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson - If this is a final release (not a beta), update the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein lib/*/api files as needed. See the libtool info file
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson for information about what the various numbers mean.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Check that http://status.isc.org/bind9/bind9.html shows
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein a clean build and test status for all supported systems.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Check that "make all_tests" does not produce compile errors.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Make sure that the most recent version of the ARM has been
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein checked in. Look for any obvious broken links in the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein .html files. If "fgrep .HTML *.html" produces output,
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein there is a problem.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Update the copyrights. According to tale:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Go to the root of the source tree.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein The scripts need to be run from there; they reference the util
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein subdirectory internally.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ make distclean
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ... [I prefer to check out a fresh source tree --gson]
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ perl util/merge_copyrights
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ diff util/copyrights util/newcopyrights
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ... examine output, particularly any files with the "?" type, and
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ... then edit util/newcopyrights if necessary
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ mv util/newcopyrights util/copyrights
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ cvs ci -m'merge_copyrights' util/copyrights
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ perl util/update_copyrights < util/copyrights
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ cvs diff
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ... examine output, edit as necessary. mail me about anything that
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ... the script should have been able to do itself. :-)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $ cvs ci -m'update_copyrights'
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Announce a CVS pool freeze on bind-dev
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Run util/altbuild.sh (from the mainline). This is to make sure that
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein builds using libtool, separate source/object directories, and other
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein obscure build options work. Save the output (it's big) and look
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein for error and warning messages.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein cd $top_of_mainline_tree
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein sh util/altbuild.sh v9_0
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - On a system like the one Tale is using (:-)), run the command
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein find lib -name '*.h' -print | xargs perl util/check-includes.pl
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - On a system using gcc, do a "make install" and then
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein util/check-instincludes.sh $prefix
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - On selected platforms, do more detailed tests:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Using bind9 as a caching server during web surfing
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Resolving IPv6 addresses
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Doing queries over IPv6
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Add a marker line like " --- 9.0.0b3 released ---"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein to the CHANGES file.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Tag the CVS source tree with the final tag, as in
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein "cvs rtag v9_0_0b3 bind9" (mainline) or
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein "cvs rtag -r v9_0 v9_0_0rc1 bind9" (release branch).
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Build the release kit:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein cd <temporary directory>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein cvs export -r v9_0_0rc3 bind9
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein cd bind9
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein sh configure
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein make kit
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Build bind9 from the kit on at least one machine
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein and test it.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - If problems are found at this stage, fix them, move the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein release tag up using "rtag -F", and respin the kit.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Take the resulting distribution files to a secure system
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein and sign them with the ISC signing PGP key:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein pgp -sba bind-9.0.0rc5.tar.gz -u 0x51BAB2ED
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Fix the permissions on the signature file:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein chmod 644 bind-9.0.0rc5.tar.gz.asc
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Verify the PGP signature:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein pgp bind-9.0.0rc5.tar.gz.asc bind-9.0.0rc5.tar.gz
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Prepare a release announcement based on the previous one
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Prepare new web site information
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Copy the distribution and PGP signature files to the FTP site:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ver=9.0.0rc5
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ssh isrv4.pa.vix.com "mkdir /udir/ftp/isc/bind9/$ver"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein scp bind-$ver.tar.gz bind-$ver.tar.gz.asc \
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein isrv4.pa.vix.com:/udir/ftp/isc/bind9/$ver
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Download using FTP (or Netscape) and verify the PGP signature again
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Increment the version in the file "version"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Announce end of CVS pool freeze on bind-dev
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Announce the release
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein