1. Cargo : Release procedure This page last changed on Mar 22, 2006 by vmassol. Releases are now performed using Maven 2 so you need to have Maven 2 installed (see the building page). Create a branch in SVN so that others can keep working on the trunk. Create the branch in `svn+ssh://svn.cargo.codehaus.org/home/projects/cargo/scm/cargo/branches/<version>` and check it out on your local machine. Example:
       svn copy svn+ssh://svn.cargo.codehaus.org/home/projects/cargo/scm/cargo/trunk \
          svn+ssh://svn.cargo.codehaus.org/home/projects/cargo/scm/cargo/branches/<N>
       svn co svn+ssh://svn.cargo.codehaus.org/home/projects/cargo/scm/cargo/branches/<N>
7. On the SVN trunk change all references of `(N)-SNAPSHOT` by `(N+1)-SNAPSHOT` (for ex from `0.6-SNAPSHOT` to `0.7-SNAPSHOT`) and commit. Perform this by doing a global search and replace. Note: You may want to perform a clean before doing the search and replace to avoid changing all the build `target` directories. In the new branch, do the same and replace all references of `(N)-SNAPSHOT` by `(N)` and commit (Ex: from `0.3-SNAPSHOT` to `0.3`). Delete all the `(N)-SNAPSHOT` artifacts from your local maven repositories to have a clean slate. Run `mvn install` at the top level of the release branch to build the different artifacts and ensure everything is ok Run `mvn assembly:assembly` in `core/uberjar` of the release branch. Note: in the future this will be done automatically when you call `mvn install`. Deploy everything by typing `mvn deploy` at the top level of the release branch. For this to work you'll need to create a `settings.xml` file (in your `.m2` directory or in your user home directory. Inside you'll need to define your credentials and more. Here's an example `settings.xml`:
       <settings>
         [...]
         <servers>
           <server>
             <id>cargo-snapshot</id>
             <username>vmassol</username>
             <privateKey>/my/private/ssh/key</privateKey>
             <filePermissions>664</filePermissions>
             <directoryPermissions>775</directoryPermissions>
           </server>
           <server>
             <id>cargo-release</id>
             <username>vmassol</username>
             <privateKey>/my/private/ssh/key</privateKey>
             <filePermissions>664</filePermissions>
             <directoryPermissions>775</directoryPermissions>
           </server>
         </servers>
       </settings>
Log onto Cargo JIRA, release the current version and add the next version Check that the Cargo wiki is up to date. Specifically, perform the following updates: modify the status on the home page about the delivery modify the Downloads and Archived Downloads pages to update the download links create a release notes page for the new version export the wiki to a zipped HTML file and add it the Downloads page modify the Cargo version in the Navigation page on the wiki Tag the branch created in step 1 to `svn+ssh://svn.cargo.codehaus.org/home/projects/cargo/scm/cargo/tags/<version>` Send an announcement email to Cargo mailing lists (and to other relevent sites) Create a blog post

Document generated by Confluence on Mar 22, 2006 15:28