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