| Instructions for the httpd-apreq-2 Release Manager (RM) |
| |
| 1. Prep the package for CPAN by running: |
| |
| % make release |
| |
| This will generate a libapreq2-2.XX-dev.tar.gz candidate in the |
| current directory. You should keep this source tree |
| intact to tag the final release. |
| |
| 2. Test the generated file with |
| |
| % make release_test |
| |
| Make sure all perl tests pass. |
| |
| 3. Upload the release candidate to httpd.apache.org/~username |
| and post a candidate announcement to apreq-dev@. Also, it is |
| strongly recommended that the RM crosspost the candidate |
| announcement to the modperl@ list, to solicit feedback |
| from a much larger audience. |
| |
| 4. Give the mailing list participants 48-72 hours to comment and |
| vote on the candidate. If there is a "majority consensus" |
| (three +1 and more +1s than -1s) among the committers, the RM |
| may proceed with the release. |
| |
| 5. Edit STATUS, marking the release date |
| |
| /** @page STATUS |
| |
| 2.XX-dev released on <today's date>. |
| |
| |
| Also add the release date to the top @section in CHANGES: |
| |
| /** @page CHANGES |
| |
| @section v2_XX_dev Changes with libapreq2-2.XX-dev (released ...). |
| |
| Commit the changes and tag the tree (tr/0-9a-zA-Z/_/c in the |
| version number) |
| |
| % cvs commit -m "2.XX-dev released." STATUS CHANGES |
| % cvs tag v2_XX_dev |
| |
| 6. Regenerate the release |
| |
| % make release && make release_test |
| |
| Then test and sign it via gpg: |
| |
| % gpg --detach-sign --armor libapreq2-2.XX-dev.tar.gz |
| |
| or pgp: |
| |
| % pgp -sba libapreq2-2.XX-dev.tar.gz |
| |
| Special note for releases on CPAN: you need to have an underscore '_' |
| character in the version number to prevent the CPAN indexer from replacing |
| libapreq-1.XX's Apache::(Cookie|Request) with the new ones in this package. |
| Currently I've been adding the two-digit release candidate number (RC) to |
| the package name at this point, eg. |
| |
| mv libapreq2-2.XX-dev.tar.gz libapreq2-2.XX_RC-dev.tar.gz |
| mv libapreq2-2.XX-dev.tar.gz.asc libapreq2-2.XX_RC-dev.tar.gz.asc |
| |
| It isn't pretty, but it does the job. |
| |
| |
| 7. Upload (scp) the package and signature to www.apache.org |
| for distribution: |
| |
| % scp libapreq2-2.XX-dev.tar.gz* \ |
| <username>@www.apache.org:/www/www.apache.org/dist/httpd/libapreq/ |
| |
| Ask another developer to confirm the uploaded signature is ok. |
| |
| % gpg --verify libapreq2-2.XX-dev.tar.gz.asc |
| % pgp libapreq2-2.XX-dev.tar.gz.asc |
| |
| Check that your public key is among those listed in the |
| /www/www.apache.org/dist/httpd/KEYS file. If not, you |
| need to commit the necessary change to KEYS the httpd-dist repos. |
| Then update the website's copy using "cvs co KEYS" in the |
| /www/www.apache.org/dist/httpd/ directory. |
| |
| 8. Upload the package to CPAN. Doublecheck that the md5 checksum |
| received from PAUSE is correct. |
| |
| 9. Wait ~12-24 hours for the ASF mirrors to pick up the new package, then |
| update the apreq homepage to list the new release in the News section |
| Be sure to update the libapreq2 documentation. For instructions on updating |
| the httpd website, see build/WEBSITE. IMPORTANT: YOU MUST UPDATE |
| download.html TO POINT AT THE NEW RELEASE PACKAGE! |
| |
| 10. Mail the announcement from your cvs.apache.org account by piping the |
| "CPAN Upload" email acknowledgement (from PAUSE) through build/announcement.pl: |
| |
| % build/announcement.pl < CPAN_ack | ssh user@cvs.apache.org "sendmail -oi -t -odq" |
| |