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