Create a Key Pair

If you do not have one, create a key pair. Please do not create keys for each and every release.

# gpg --gen-key

the keys will be genrated in the ~/.gnupg

Export the Keys

gpg --armor --export <your id here> > KEYS

update KEYS

cd ~/release1-4-alpha
cat KEYS >> /www/www.apache.org/dist/ws/axis2/KEYS

Cut the relase

  1. tag the SVN
    • do a svn move to the tags location of your project.

Create Distribution

  1. Build Distribution Files

Take a new checkout and from the root direcotry

 # maven clean
 #maven release

This will create all the distributable in target/dist folder.

  1. Create Checksums (more info http://jakarta.apache.org/commons/releases/release.html)

Create Checksums

openssl md5 < axis2-xxx-xxx.zip > axis2-xxx-xxx.zip.md5

do same to all the distributables.

  1. Sign and verify the relases

        #cd target/dist/
        #gpg --armor --output axis2-xxx-xxx.zip.asc --detach-sig axis2-xxx-xxx.zip
        #gpg --verify axis2-xxx-xxx.zip.asc axis2-xxx-xxx.zip

do same to all the distributables.

  1. Upload Releases and Move Releases Into Distribution Directories. (/www/www.apache.org/dist/ws/axis2)
  2. Move earlier releases to archive.apache.org (/www/archive.apache.org/dist/ws/axis2)
  3. Deploy jar, project.xml and license.html to Java-Repository (maven repo) /www/www.apache.org/dist/ws/axis2/jars
  4. Test Main Site Downloads (wait until mirros pickup the distributables, before sending the release note.)

Web Site

  1. Update the website
  2. Test the Web Site

Releasing

  1. Create Announcements
  2. Update bugzilla
  3. Send the Announcements There are some scripts available that help to automate some of these steps. In particular, see the following shell scripts in subversion under committers/tools/releases:
    • sign_and_hash.sh (creates sigs and md5s)
    • verify_sigs.sh (verifies sigs and checksums)