The Ultimate MyFaces Release HowTo

On this page we want to collect all essential information that is necessary to release a MyFaces project.

Prerequisites

MyFaces releases are done by means of the Maven release plugin. For being able to use it you have to install several external tools first.

External tools

If you do not already have a private key for your apache mail address you should now either

Settings

Basics (or "How to release MyFaces Master POM")

Obviously the simplest MyFaces project is the MyFaces Master POM. It consists of nothing more than a single pom.xml file. So it is perfect for showing the basic procedure of releasing.

Release candidate

  1. Make sure that you have no local modifications or even better: do a clean checkout from the SVN repo. 2. mvn release:prepare -Dusername=YOURUSERNAME -Dpassword=YOURPASSWORD
    During the prepare run you will be asked three questions (release version, tag name, next snapshot version). Just hit RETURN for all three to use the defaults. 3. Important: Make a backup copy of the "release.properties" file now (in case something goes wrong during the release upload)! 4. mvn release:perform -Dusername=YOURUSERNAME -Dpassword=YOURPASSWORD
    During the perform run you will be asked for your gpg passphrase.

Voting

  1. Announce the new release candidate and ask for a vote
    From: "Manfred Geiler" <manolito@apache.org>
    To: "MyFaces Development" <dev@myfaces.apache.org>
    Subject: [vote] MyFaces Master pom v4
    
    This is the formal vote for the new myfaces master POM version 4.
    
    You can find the signed release candidate at [1].
    
    Please vote
    +1 if you reviewed the new master pom version 4 and think we can use it
    -1 if you found a flaw or potential problem with the new master pom
    
    Thanks,
    --Manfred
    
    [1] http://people.apache.org/builds/myfaces/m2-staging-repository/org/apache/myfaces/myfaces/4/
      

    2. The Release Manager (=you) decides about the outcome of the voting.
    Please note that there is no veto for release votings. But of cource you should address negative votes.
    As a rule of thumb you should at least get three positive votes before you decide to continue with the release process.

Distribution

  1. Copy the release candidate to the maven distribution dir
    cp -r /www/people.apache.org/builds/myfaces/m2-staging-repository/org/apache/myfaces/myfaces/* /www/people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/myfaces/myfaces/ 2. It can take up to 24 hours for a newly published release to be sync'd to all mirrors. You should at least verify that the new release is already available at the Maven main repo before adding a dependency to it within another project.