Creating a Release for Subprojects

This page documents the requirements for releasing a Click subproject.

Please note this section is for committers only.

Prerequisites

Subprojects have the same prerequisites as Click. See here for details.

Release Procedure

Subproject releases should adhere to the following steps:
  1. Create the distribution using your favorite build tool e.g. Ant.
  2. Create MD5 and SHA1 hashes of the distribution file.
  3. Digitally sign the distribution, for example:
    gpg --armor --output ClickIDE-X.X.X.zip.asc --detach-sig ClickIDE-X.X.X.zip
  4. Upload the distribution to your account at people.apache.org under the folder ~/public_html/click/SUBPROJECT/X.X.X, where SUBPROJECT is the name of the subproject and X.X.X is the version.

    For example version 2.2.0 of subproject ClickIDE could be published to:

    ~/public_html/click/clickide/2.2.0
    Make sure the uploaded files have the right permissions (664) and belong to the 'click' group to ensure that other members have proper access to these files. If not execute the following commands to ensure file and directory permissions are correct:
    ssh people.apache.org
    cd ~/public_html/click/clickide/X.X.X
    find . -type d | xargs chmod 775
    find . -type f | xargs chmod 664
    chgrp -R click *
  5. Verify the digital signatures at people.apache.org to ensure nothing went wrong with the upload.

    Please note if this is the first time you verify your key at people.apache.org, you'll need to import your public key first.

    Assuming your public key ID is 'B51329CB' and your key is available from the public key server 'pgp.mit.edu', the following command will import the key on people.apache.org:

    ssh people.apache.org
    gpg --keyserver pgp.mit.edu --recv-keys B51329CB
    
    Next verify the signature with the following command: (Replace SUBPROJECT with the name of the actual project.)
    ssh people.apache.org
    cd ~/public_html/click/SUBPROJECT/X.X.X
    gpg --verify SUBPROJECT-X.X.X.zip.asc SUBPROJECT-X.X.X.zip
    
  6. Releases must be voted on before they are published. Please see the Voting section for details.
  7. Releases are published at people.apache.org under the folder:

    /www/www.apache.org/dist/click/SUBPROJECT/X.X.X

    For example ClickIDE will be published to the folder:

    /www/www.apache.org/dist/click/clickide/X.X.X

    An easy way to do this is to copy the files in your public_html folder for example:

    ssh people.apache.org
    cp -R ~/public_html/click/clickide/X.X.X/ /www/www.apache.org/dist/click/clickide/X.X.X
    
  8. Email release announcement to click-user and click-dev mailing lists.