release revision f7aa8ce0b3cf7f5df618a42beecf8d5517c000ac
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas GustafssonCopyright (C) 2000 Internet Software Consortium.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas GustafssonSee COPYRIGHT in the source root or http://www.isc.org/copyright for terms.
c40e033d2170ec5bd55124bbb034528888b1a76fTinderbox User
bf8267aa453e5d2a735ed732a043b77a0b355b20Mark Andrews$Id: release,v 1.10 2000/07/10 16:16:25 gson Exp $
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsPreparing a bind9 release
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
dafcb997e390efa4423883dafd100c975c4095d6Mark AndrewsHere's a rough outline of the steps to follow in preparing a new bind9
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafssonrelease.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Update the README file
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Update doc/misc/options
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Verify that the file "version" contains the correct version
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson number (it should have been incremented after the
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson previous release)
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - If this is a final release (not a beta), update the
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson lib/*/api files as needed. See the libtool info file
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson for information about what the various numbers mean.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Check that http://status.isc.org/bind9/bind9.html shows
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson a clean build and test status for all supported systems.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Check that "make all_tests" does not produce compile errors.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Make sure that the most recent version of the ARM has been
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson checked in. Look for any obvious broken links in the
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson .html files.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Update the copyrights. According to tale:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson Go to the root of the source tree.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson The scripts need to be run from there; they reference the util
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson subdirectory internally.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ make distclean
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson ... [I prefer to check out a fresh source tree --gson]
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ perl util/merge_copyrights
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ diff util/copyrights util/newcopyrights
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson ... examine output, particularly any files with the "?" type, and
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson ... then edit util/newcopyrights if necessary
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ mv util/newcopyrights util/copyrights
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ cvs ci -m'merge_copyrights' util/copyrights
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ perl util/update_copyrights < util/copyrights
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson $ cvs diff
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson ... examine output, edit as necessary. mail me about anything that
2c63b97c09e5c6409d0c448a9587f4b1d32e6d71Mark Andrews ... the script should have been able to do itself. :-)
2c63b97c09e5c6409d0c448a9587f4b1d32e6d71Mark Andrews $ cvs ci -m'update_copyrights'
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Announce a CVS pool freeze on bind-dev
2c63b97c09e5c6409d0c448a9587f4b1d32e6d71Mark Andrews
2c63b97c09e5c6409d0c448a9587f4b1d32e6d71Mark Andrews - Do basic tests on each build system:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson check out a source tree
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson do a build
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson test it:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson transfer in
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson transfer out
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson auth query
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson recursive query
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson exit cleanly with no leaks
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Do a test build using a separate build directory and libtool
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Run
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson find lib -name '*.h' -print | xargs perl util/check-includes.pl
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - On a system using gcc, do a "make install" and then
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson util/check-instincludes.sh $prefix
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - On selected platforms, do more detailed tests:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson Using bind9 as a caching server during web surfing
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson Resolving IPv6 addresses
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson Doing queries over IPv6
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Add a marker line like " --- 9.0.0b3 released ---"
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson to the CHANGES file.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Tag the CVS source tree with the final tag, as in
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson "cvs rtag v9_0_0b3 bind9" (mainline) or
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson "cvs rtag -r v9_0 v9_0_0rc1 bind9" (release branch).
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Export the source tree in to a fresh directory by
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson running "cvs export", as in "cvs export -rv9_0_0b3 bind9"
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Build the kit:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson cd bind9
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson sh configure
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson make kit
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Build bind9 from the kit on at least one machine
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson and test it
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - If problems are found at this stage, fix them, move the
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson release tag up using "rtag -F", and respin the kit.
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Take the resulting distribution files to a secure system
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson and sign them with the ISC signing PGP key:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson "pgp -sba bind-9.0.0b3.tar.gz -u 0x51BAB2ED"
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Fix the perissions permissions on the signature file:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson chmod 644 bind-9.0.0b3.tar.gz.asc
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Verify the PGP signature:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson pgp bind-9.0.0b3.tar.gz.asc bind-9.0.0b3.tar.gz
9a36fb86f5019f25705d25ea729d03fcf8ecaa95Mark Andrews
9a36fb86f5019f25705d25ea729d03fcf8ecaa95Mark Andrews - Prepare a release announcement based on the previous one
9a36fb86f5019f25705d25ea729d03fcf8ecaa95Mark Andrews
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Prepare new web site information
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Copy the distribution and PGP signature files to the FTP site:
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson ssh isrv4.pa.vix.com "mkdir /udir/ftp/isc/bind9/9.0.0b4"
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson scp bind-9.0.0b4.tar.gz bind-9.0.0b4.tar.gz.asc \
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson isrv4.pa.vix.com:/udir/ftp/isc/bind9/9.0.0b4
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Download using FTP and verify the PGP signature again
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Increment the version in the file "version"
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Announce end of CVS pool freeze on bind-dev
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson - Announce the release
f3bbe7772ff66baa28d5c1e3f620f24a384457ccAndreas Gustafsson