Overview
The goal of the release process is to:
- Update the version numbers in the project source
- Create a tag to record the source release
- Build from the tag
- Deploy the artifacts to the Maven repository and/or other file server
These steps can be completed using the standard Maven release process (http://maven.apache.org/plugins/maven-release-plugin/), or using a more manual process. For smaller more standardized projects the standard Maven release process normally works well. Larger projects with more complex layouts may experience Maven release plugin usage issues with JBoss projects with the standard maven release process. For these projects, the manual process may be more reliable.
Project Specific Release Instructions
Preparation Steps
Prepare your project for the release: JBoss Release Preparation Checklist
Manual Release Process
- Verify that your workspace is in sync with the source repository. This can be done by either doing a fresh checkout, or using "svn update" and "svn diff".
- Prepare the branch or trunk for the release.
- Update the version strings in your project. For information about automating this update, see Update Maven Project Versions
- (Optional) Update the scm urls in your POM to reference the tag
- Verify the changes and commit to svn.
- Create a tag or branch off the remote branch or trunk:
svn cp -m 'Tag 1.2.0.GA' http://svn.jboss.org/foo/trunk http://svn.jboss.org/foo/tags/1.2.0.GA
Or the tag can be created using a GUI svn client such as subclipse. - Check out the new tag to a local working directory: svn co http://svn.jboss.org/foo/tags/1.2.0.GA target/checkout
- Change to the tag checkout directory: cd target/checkout
- Build and deploy the project using the staging settings: mvn -s ~/.m2/settings-staging.xml deploy. For more info about deploying and staging your release see Maven Deploying a Release
Log in to nexus ( https://repository.jboss.org/nexus ) and close the temporary staging repository.
- Test the release in the staging repository (Maven Staging Settings). If there is a problem, drop the staging repo and restart the release process. If everything is ok, promote the staging repo to the releases repository.
- Return to your branch or trunk, and update your version for the next development version.
- Update Maven Project Versions
- Then commit:
svn commit -m 'Update trunk to next development version'
- Update Maven Project Versions
- Done.
Maven Plugin Release Process
The process using the Maven Release plugin is described here: Maven Release Process
.
Comments