Skip to content
Luigi Andrea Pascarelli edited this page Aug 12, 2016 · 12 revisions

Release Numbering Convention

Release Numbering Scheme: [major].[minor]

  • Major Releases: incrementing the first number ('major') will represent a new MAJOR release of JDynA. A major release may include any or all of the following: new features, system improvements, architectural changes, bug fixes. All major releases end in ".0", so "3.0", "4.0", and "5.0" would all represent major releases.
  • Minor (Bug-Fix) Releases: incrementing the second number ('minor') will represent a new MINOR release of JDynA. A minor release will only include bug fixes to an existing major release. For example, "3.1" and "3.2" would represent two minor releases which only include bug fixes to the "3.0" major release.

Prerequisites

Verify Release Privileges

Use Maven 3 or above

Make sure you're using a recent version of Maven. As of this writing, Maven 3.0.3 or 3.0.4 is known to work.

Tag and Increment Version

  • Use mvn release:prepare

Preparing a release goes through the following release phases:

> * Check that there are no uncommitted changes in the sources
> * Check that there are no SNAPSHOT dependencies
> * Change the version in the POMs from x-SNAPSHOT to a new version (you will be prompted for the versions to use)
> * Transform the SCM information in the POM to include the final destination of the tag
> * Run the project tests against the modified POMs to confirm everything is in working order
> * Commit the modified POMs
> * Tag the code in the SCM with a version name (this will be prompted for)
> * Bump the version in the POMs to a new value y-SNAPSHOT (these values will also be prompted for)
> * Commit the modified POMs

more details: http://maven.apache.org/maven-release/maven-release-plugin/examples/prepare-release.html

Deploy Artifacts to official mvn-repo on github

  • mvn release:perform

Performing a release runs the following release phases:

  • Checkout from an SCM URL with optional tag
  • Run the predefined Maven goals to release the project (by default, deploy site-deploy)

more details: http://maven.apache.org/maven-release/maven-release-plugin/examples/perform-release.html

if mvn release has errors, then follow this step:

  • clone mvn-repo git clone [email protected]:4Science/mvn-repo.git
  • from jdyna root run mvn -DaltDeploymentRepository=repo::default::file:../mvn-repo/releases clean deploy
  • go into mvn-repo and add/commit/push the changes