Prerequisites
In general, at the end of an iteration a new release should be build.
All tests must be green before a release might be deployed.
For deploying relases in source.valtech.com Wiki or our maven repository sufficient permissions are required. Currently these task can only be performed by
Valtech employees.
Versioning with Maven
Since we use Maven we will apply the Maven versioning conventions:
- work under development (i.e something between releases or before the first release) is versioned as SNAPSHOT (e.g. 1.21-SNAPSHOT, read: the next release will probably be 1.21, but we are not ready to release yet)
- a release gets a fixed version number, e.g. 1.2.1
The version number is set in the pom.xml of the dependometer projects.
Note: all changed projects and all changed dependent project need a new version number. Therfore you will have to update the maven dependencies versions in your pom.xml as well.
Tagging in SVN
After increasing the project versions and checking in the changed version number, all projects with a new fixed version number need to be tagged in SVN. The tags exists under the tag folder. E.g. if the version of project-xyz is increased to 3.1, then a tag should be created in a new tags/3.1 folder in the SVN repository.
Assembling a distributable
Make sure you have installed the dependometer core first (
mvn clean install
on dependometer-core)
Due to an maven assembly issue (http://jira.codehaus.org/browse/MASSEMBLY-94) the only safe way to build a module distributable seems to be:
mvn clean package assembly:assembly
to build source and binary distributions (created in target folder).
Testing the distributable
After creating the distributable they have to be tested. For this purpose you can install the distributable and run dependometer on a sample-project (dependometer-examples). Just take the dependometer-config.xml of the sample project and configure the paths to your installation and result directory.
Deploying maven artifacts
To deploy maven artifacts (jar, source-jar, etc.) in our maven repository run
mvn clean deploy
. Note that you need an account and a connection to the maven repository. To verify the upload of the release artifacts, check http://source.valtech.com/repo/content/repositories/releases/.
Package the release in JIRA
Currently, only the project owner has the right to package the release in JIRA and mark it as released. By packaging the release the change log will be updated in the issue tracker.