release revision 0c27b3fe77ac1d5094ba3521e8142d9e7973133f
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox UserCopyright (C) 2000-2007, 2009, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox UserThis Source Code Form is subject to the terms of the Mozilla Public
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox UserLicense, v. 2.0. If a copy of the MPL was not distributed with this
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox Userfile, You can obtain one at http://mozilla.org/MPL/2.0/.
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User$Id: release,v 1.74 2009/08/06 23:47:44 tbox Exp $
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox UserPreparing a bind9 release
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox UserHere's a rough outline of the steps to follow in preparing a new bind9
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox Userrelease.
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User - Update the README file
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User - Send the new README file to webteam@nominum.com at least 48
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User hours prior to the planned release and ask them to prepare
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User the web pages for the new version. If there have been only
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User minor changes, send context diffs relative to the previous
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User release instead.
1c57c3f79db0bf0358bbe6d7b5ad650c0c852f4bTinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Do a "cvs update" to check that all changes have been committed.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Verify that the file "version" contains the correct version
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt number (it should have been incremented after the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt previous release)
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - If building from a release branch, check that any important
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt bug fixes made on the mainline since the last release have
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt been pulled up. You can do this by comparing the CHANGES
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User files using the util/check-pullups.pl script. For example,
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User running the script from a mainline tree:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt perl util/check-pullups.pl CHANGES ../9.2/CHANGES ../9.2/EXCLUDED
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt This will list all bug fixes on the mainline that are not
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User on the 9.2 release branch.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Before creating a new release branch, update the lib/*/api files
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt as needed. See the libtool info file for information about what
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt the various numbers mean.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User cvs rdiff -r <last_release> -r <branch/HEAD> bind9/lib > diff
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt e.g.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User cvs rdiff -r v9_4_0rc2 -r v9_4 bind9/lib > diff
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User - Check that https://internal.isc.org/bind-build/
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User shows a clean build and test status for all supported
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User systems and that the tests are actually being run on the
dec590a3deb8e87380a8bd3a77d535dba3729bf6Tinderbox User version being released (the version can be found in the
c42708dcc8ca18a41152251654d29f0cdd5b9533Tinderbox User page behind the "Source tar build" link).
2ba8603ca962450068fe45f04c5caf8219b0d5f1Tinderbox User
2ba8603ca962450068fe45f04c5caf8219b0d5f1Tinderbox User - Check that running "make all_tests" in bin/tests does not
2ba8603ca962450068fe45f04c5caf8219b0d5f1Tinderbox User produce compile errors.
2ba8603ca962450068fe45f04c5caf8219b0d5f1Tinderbox User
2ba8603ca962450068fe45f04c5caf8219b0d5f1Tinderbox User - Regenerate the documentation by running "make man" (mainline/9.2)
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User or by running genhtml.sh in doc/arm (9.1 release branch)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt and commit it. Note that not all machines have the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt necessary XML tools, but at least trebuchet, cuba,
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt and Scanner's machine do. Commit any files that were
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User regenerated.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User Most of this has now been automated, only doc/arm/ARM.pdf will
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt not be committed:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ssh tbox@docs.lab.isc.org
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt run this command from crontab.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User1 1 * * * /usr/bin/lockf -s -t 0 /udir/tbox/bind9-documents/regenerate.lock /udir/tbox/bind9-documents/regenerate
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt Check to see if the ARM has changed since the last release
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt and if it has commit doc/arm/ARM.pdf.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User e.g.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cvs rdiff -r v9_6_1 -r v9_6 bind9/doc/arm
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User cd bind9-documents/bind9.v9_6
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cvs commit doc/arm/ARM.pdf
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Verify that the documents in doc/misc are up-to-date.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Update the copyrights.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ssh tbox@cvs.isc.org
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User run these two command from the crontab
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt#
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User# Merge and Update copyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt#
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt30 23 * * * /usr/bin/lockf -s -t 3600 /udir/tbox/tarballs/build-tarballs.lock /bin/sh /udir/tbox/tarballs/mergecopyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt45 23 * * * /usr/bin/lockf -s -t 3600 /udir/tbox/updatecopyrights/updatecopyrights.lock /bin/sh /udir/tbox/updatecopyrights/updatecopyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User When tbox@cvs.isc.org is not available:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt Go to the root of the source tree.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt The scripts need to be run from there; they reference the util
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User subdirectory internally.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ make distclean
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... [I prefer to check out a fresh source tree --gson]
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ perl util/merge_copyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ diff util/copyrights util/newcopyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... examine output, particularly any files with the "?" type, and
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... then edit util/newcopyrights if necessary
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ mv util/newcopyrights util/copyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cvs ci -m'merge_copyrights' util/copyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ perl util/update_copyrights < util/copyrights
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cvs diff
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... examine output, edit as necessary. mail me about anything that
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... the script should have been able to do itself. :-)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cvs ci -m'update_copyrights'
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Announce a CVS freeze if doing an alpha or beta release from
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt the mainline, or stop doing pullups if building from a release branch.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Run util/altbuild.sh. This is to make sure that
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt builds using libtool, separate source/object directories, and other
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User obscure build options work. This script may need some hacking if run
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt on anything other than NetBSD. Save the output (it's big) and look
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt for error and warning messages.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd $top_of_mainline_tree
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt sh util/altbuild.sh v9_0
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt or
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd $top_of_9_1_tree
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User sh util/altbuild.sh v9_1
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt Alteratively, you can do this after building the kit, by giving
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt the kit .tar.gz file as an argument to altbuild.sh instad of
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt the CVS tag.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - If you can (= your system is similar enough to the one Tale is using),
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt check the header files for cruft by running the command
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt [ This step is quite imperfect and should probably be skipped
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User for now -- Tale ]
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User find lib -name '*.h' -print | xargs perl util/check-includes.pl
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Ensure that the JPNIC patch applies cleanly (9.2 and 9.3):
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt If you don't have the "iconv" library, you need to get it from
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt http://clisp.cons.org/~haible/packages-libiconv.html and install it.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt If you're reading this part of these instructions in order to generate
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User a version of the patch for a new release, you'll need to pick a
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt version of the patch from some prior release to use as a starting
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt point. In general, the patch corresponding to the most recent
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt prior release will be the best starting point.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ patch -p0 < contrib/idn/idnkit-1.0-src/patch/bind9/bind-9.x.y-patch \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt > patch.out 2>&1
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ egrep Hunk patch.out
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User All hunks should have applied successfully with no offset or fuzz.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User If all succeeded but some were offset or had fuzz, the patch will be
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt regenerated at the end of this stage.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User Note that two of the files which the patch attempts to update
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt (configure and config.h.in) are generated automatically. When
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User generating a new patch, the old version of the patch may not apply
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt correctly to these files, but that's ok so long as the patch does
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt apply correctly to the source files from which these files are
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt generated. The steps below will regenerate these files.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cd contrib/idn/idnkit-1.0-src
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt [ Sample on netbsd ... ]
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ CFLAGS=-I/usr/local/include ./configure '--with-iconv=-L/usr/local/lib -liconv'
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt [ Sample on freebsd -- formerly used giconv, now uses iconv ]
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ./configure --with-iconv-include=/usr/local/include \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt '--with-iconv=-L/usr/local/lib -liconv'
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ make
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cd ../../.. ; : cd back to top level
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ autoheader ; : regenerate config.h.in
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ autoconf ; : regenerate configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ ./configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ make
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... should cleanly compile
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ (cd bin/dig ; rm host.1 dig.1 ; make host.1 dig.1 ; cvs update host.1 dig.1 )
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ make distclean
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ rm -rf /tmp/idn
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ mkdir -p /tmp/idn/lib /tmp/idn/include
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ idn=contrib/idn/idnkit-1.0-src
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cp $idn/lib/.libs/libidnkit.so* /tmp/idn/lib
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cp -r $idn/include/mdn $idn/include/idn /tmp/idn/include
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ ./configure --with-idn=/tmp/idn --with-iconv="-L/usr/local/lib -liconv"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ LD_LIBRARY_PATH=/usr/local/lib:/tmp/idn/lib:/usr/lib make
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ... should cleanly compile
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User [ Some tests will be added to bin/tests/system to validate operation. ]
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt Generate a fresh copy of the diffs:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ patchd=$idn/patch/bind9
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ old_patch=bind-9.x.y-patch
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ new_patch=bind-9.x.z-patch
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ files=`awk '/^Index:/ && NF == 2 {print $2}' $patchd/$old_patch`
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ missing=`cvs status $files | awk '/Status: Unknown/ { print $2; }'`
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ sed '/^Index:/,$d' $patchd/$old_patch > $patchd/$new_patch
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ for i in $missing; \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt do echo Index: $i; diff -u /dev/null $i; done >> $patchd/$new_patch
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cvs -f diff -U 2 -N $files >> $patchd/$new_patch
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ cvs add -ko $patchd/$new_patch
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ cvs ci $patchd/$new_patch
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User $ cvs update -C
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ rm README.idnkit
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt $ make distclean
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Add a marker line like " --- 9.0.0rc10 released ---"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt to the CHANGES file.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Tag the CVS source tree with the final tag, as in
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt "cvs rtag v9_0_0rc1 bind9" (mainline) or
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt "cvs rtag -r v9_2 v9_2_0rc10 bind9" (release branch).
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Build the release kit. This procedure differs
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User between the 9.0 release branch and later versions.
9d557856c2a19ec95ee73245f60a92f8675cf5baTinderbox User On the 9.0 release branch,
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd <temporary directory>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cvs export -r v9_0_0rc10 bind9
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd bind9
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User sh configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt make kit
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt On the 9.[1-2] release branch or mainline, use the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt "util/kit.sh" script.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Build bind9 from the kit on ns-ext (phred)
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User and ns-int (rc), install it, and let it run for
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt a day keeping an eye on it for any problems.
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User ssh phred.isc.org
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ver=9.2.0
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt scp rc.isc.org:bind-$ver.tar.gz .
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt gunzip <bind-$ver.tar.gz | tar xfv -
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd bind-$ver
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt sh configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt make
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt su
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User make install
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ps -elf | grep named
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User # kill both the keep-running script and named itself
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User /var/named/keep-running ns-ext &
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ssh rc
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ver=9.2.0
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt gunzip <bind-$ver.tar.gz | tar xfv -
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd bind-$ver
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt sh configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt make
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt su
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User make install
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User mv /usr/local/sbin/named /usr/local/sbin/named9
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ps -elf | grep named
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt # kill both keep-running scripts and both named9:s
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt /var/named/keep-running9 rc-res1 &
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt /var/named/keep-running9 ns-int &
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - If you can, try resolving some IPv6 addresses and
e2b184f84e846bbcb764b6f0aef5dcd583d3d7a1Tinderbox User doing queries over IPv6.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - If problems are found at this stage, fix them, move the
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User release tag up using "rtag -F", and respin the kit.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Sign the distribution files with the ISC signing PGP key
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt and fix the permissions on the signature file:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt ver=9.2.0
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt pgp -sba bind-$ver.tar.gz -u 0x51BAB2ED
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt chmod 644 bind-$ver.tar.gz.asc
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Verify the PGP signature:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt pgp bind-$ver.tar.gz.asc bind-$ver.tar.gz
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User (Look for the words "Good signature" in the output.)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - If there is a companion binary kit for NT, sign it and verify the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt signature:
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt scp rc.isc.org:/udir/mayer/BIND$ver.zip .
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt pgp -sba BIND$ver.zip -u 0x51BAB2ED
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User chmod 644 BIND$ver.zip.asc
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User pgp BIND$ver.zip.asc BIND$ver.zip
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Prepare a release announcement based on the previous one.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - Copy the distribution and PGP signature files to the FTP site:
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User ssh -n isrv4.pa.vix.com "mkdir /udir/ftp/isc/bind9/$ver"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt scp bind-$ver.tar.gz bind-$ver.tar.gz.asc \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt isrv4.pa.vix.com:/udir/ftp/isc/bind9/$ver
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - If there is a companion binary kit for NT, copy it, too:
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User ssh -n isrv4.pa.vix.com "mkdir /udir/ftp/isc/bind/contrib/ntbind-$ver"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt scp BIND$ver.zip BIND$ver.zip.asc \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt isrv4.pa.vix.com:/udir/ftp/isc/bind/contrib/ntbind-$ver
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Download using FTP (or a web browser) using the URLs in the release
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt announcement and verify the PGP signature again
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Ask webteam@nominum.com to publish the updated web pages
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - When the web pages are up, announce the release on
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt bind-announce@isc.org
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Increment the version in the file "version", "configure.in" and
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt "doc/arm/Bv9ARM-book.xml".
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User - Resume doing pullups
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt