UPDATE

Please see http://maven.apache.org/developers/release/releasing.html for the current process.

NOTE

I'll be fixing the formatting for this page over the next couple of days, but here is the release process I compiled from the 3 release diaries we have on file here in Confluence now. I'll also be appending the actual 2.0.3 release diary to this page, for tracking of deviations and notes.

Release Procedure

  ---
  Maven Release Process
  ---
  John Casey
  ---
  27 March 2006
  ---

Maven Release Process

* Steps

  * <<IMPORTANT:>> Start diary file to capture deviations from this process.

  * [re]move $HOME/.m2/repository

  * run bootstrap

  * update/build these plugins from SVN:

    * maven-assembly-plugin

    * maven-site-plugin and maven-skins (needed for /site deployment)

    []

  * In /components directory:

    * <<<mvn clean install -DperformRelease=true>>> (dry run, to make sure release:perform will work)

    * <<<mvn clean release:prepare release:perform>>>

    []

  * In /components/target/checkout/maven-core directory:

    * <<<mvn clean assembly:assembly>>

    * <<<cd target>>>

    * <<<mkdir scp-temp>>>

    * <<<mv maven-2.0.3-bin* scp-temp>>>

    * <<<cd scp-temp>>>

    * <<<sign_and_hash.sh>>>

    * <<<scp -r * people.apache.org:/www/www.apache.org/dist/maven/binaries>>>

    []

  * In /components/target/checkout directory:

    * <<<mvn clean assembly:assembly -Dsource-assembly=true>>>

    * <<<cd target>>>

    * <<<mkdir scp-temp>>>

    * <<<mv maven-2.0.3-src* scp-temp>>>

    * <<<cd scp-temp>>>

    * <<<sign_and_hash.sh>>>

    * <<<scp -r * people.apache.org:/www/www.apache.org/dist/maven/source>>>

    []

  * In /components/target/checkout directory:

    * <<<mvn clean site-deploy>>>

    []

  * SSH to people.apache.org:

    * <<<cd /www/maven.apache.org/ref>>>

    * <<<rm -f current>>>

    * <<<ln -s 2.0.3 current>>>

    []

  * In components/maven-artifact-ant directory:

    * adjust \<parent\>\<version/\> to the version just released, to get newer copies of wagon-file, etc.

    * <<<mvn clean install -DperformRelease=true>>>

    * <<<mvn release:prepare release:peform>>>

    * <<<cd target/checkout>>>

    * <<<mvn clean assembly:assembly>>>

    * Verify that <<<ant -f sample.build.xml>>> works

    * <<<cd target>>>

    * <<<mkdir scp-temp>>>

    * <<<mv maven-artifact-ant-2.0.3-dep.jar scp-temp>>>

    * <<<cd scp-temp>>>

    * <<<sign_and_hash.sh>>>

    * <<<scp -r * people.apache.org/www/www.apache.org/dist/maven/binaries>>>

    * <<<cd ../..>>> (puts you back in target/checkout)

    * <<<mvn clean site-deploy>>>

    []

  * In components/maven-embedder directory:

    * adjust ${mavenVersion} in pom.xml if need be

    * <<<mvn clean install -DperformRelease=true>>>

    * <<<mvn release:prepare release:peform>>>

    * <<<cd target/checkout>>>

    * <<<mvn clean assembly:assembly>>>

    * <<<cd target>>>

    * <<<mkdir scp-temp>>>

    * <<<mv maven-embedder-2.0.3-dep.jar scp-temp>>>

    * <<<cd scp-temp>>>

    * <<<sign_and_hash.sh>>>

    * <<<scp -r * people.apache.org/www/www.apache.org/dist/maven/binaries>>>

    * <<<cd ../..>>> (puts you back in target/checkout)

    * <<<mvn clean site-deploy>>>

    []

  * Modify site for new downloads:

    * <<<site/src/site/apt/download.apt>>>

    * <<<site/src/site/xdoc/index.xml>>>

    * <<<site/src/site/apt/release-notes.apt>>> (prepend the JIRA release notes here)

    * <<<mvn site-deploy>>>

    []

  * Update version in <<<components/bootstrap/*/pom.xml>>>

  * Announce to announce@maven.apache.org

    * <<NOTE:>> FROM: address must be <<<@apache.org>>>.

    * Also, include a brief description of what Maven does (should be some stock description)

      <Add description here.>

    []

  * Deal with <<<svnmerge>>> command to re-initialize the merge point?

  * <<IMPORTANT:>> Post diary file to http://docs.codehaus.org/display/MAVEN, 
    child of <<<Maven+Release+Process>>> (this page)

  []