blob: 67bc9602d4d0787e821ef158c3783e5ec4a5b803 [file] [log] [blame]
Instructions for mod_perl 2.0 Release Manager
1. 'make dist' - to make sure nothing is missing from the manifest,
etc. Now test this generated package (not cvs) with as many
configurations as possible on as many platforms as possible.
a) nuke any preinstalled mod_perl libs and run 'make test'
b) test that you can 'make install' and then run 'make test' again
c) test whether we still 100% OK on systems with no LWP:
% APACHE_TEST_PRETEND_NO_LWP=1 make test
2. once confident that the package is good, upload a release candidate
to perl.apache.org/~username and post 24 hour-ish candidate alert
to the modperl/dev list (may be longer to give most people a chance
to catch up). no need to tag this package
2a. if problems are detected during stage 2, repeat stages 1 and 2.
3. when the package has been reported to be good, prepare a new
package to be released
a. edit ./Changes:
- remove '-dev'
- add release date
b. make sure tag looks right (might need to rerun Makefile.PL)
% make -n cvs_tag
c. commit Changes
% cvs ci Changes
d. tag
% make cvs_tag
e. create the final package
% make dist
f. test the final package again at least once
4. Release the package and update links (e.g. mod_perl-1.99_11.tar.gz)
a. upload to www.apache.org:/www/perl.apache.org/dist/
b. ssh to www.apache.org, unpack the package, update symlinks to the
tar ball and unpacked distro:
% ssh www.apache.org
% cd /www/perl.apache.org/dist/
% ln -sf /www/perl.apache.org/dist/mod_perl-1.99_11.tar.gz \
/www/perl.apache.org/dist/mod_perl-2.0-current.tar.gz
% tar -xzvf mod_perl-1.99_11.tar.gz
% rm /www/perl.apache.org/dist/mod_perl-2.0-current
% ln -sf /www/perl.apache.org/dist/mod_perl-1.99_11 \
/www/perl.apache.org/dist/mod_perl-2.0-current
c. remove releases older by 2 subversions (keep the last one)
d. update the version and release date
modperl-docs/src/download/index_top.html and commit. It'll be
automatically updated within 6 hours. Alternatively you can do a
manual update by logging into www.apache.org and running:
% /home/perlwww/apache.org/modperl-docs/bin/site_build
5. Upload the package to CPAN
6. Announce the package
a. post ... to the modperl, announce lists
Subject: [ANNOUNCE]: mod_perl 1.99_11
include
- MD5 sig (as it comes from CPAN upload announce).
- the latest Changes
7. Tarball signing
(depending on whether you use GPG or PGP, pick the first or the
second set of the commands):
a. sign your local copy of the tarball:
% gpg --detach-sign --armor mod_perl-1.99_11.tar.gz
% pgps -b --armor mod_perl-1.99_11.tar.gz
b. upload the generated sig file to www.apache.org:
% scp mod_perl-1.99_11.tar.gz.asc www.apache.org:/www/perl.apache.org/dist/
% ssh www.apache.org
% chmod 0664 /www/perl.apache.org/dist/mod_perl-1.99_11.tar.gz.asc
% ln -sf /www/perl.apache.org/dist/mod_perl-1.99_11.tar.gz.asc \
/www/perl.apache.org/dist/mod_perl-2.0-current.tar.gz.asc
c. ask one of the other developers to double check the signature file
and tarball: download both files and verify the signature:
% gpg --verify mod_perl-1.99_11.tar.gz.asc
% pgpv mod_perl-1.99_11.tar.gz.asc
8. Prepare for the next cycle
a. increment version in lib/mod_perl.pm
b. edit ./Changes:
- start a new item with incremented version + '-dev'
=item 1.99_12-dev
c. commit Changes
% cvs ci Changes lib/mod_perl.pm
d. add a release entry in STATUS and commit
% cvs ci STATUS