Releasing

Quick notes for developers wanting to release a version of LSC.

Prerequisites

Make sure a branch is ready for release. This must involve testing by automated tests and a call for testing by developers and willing users.

Update change log

Update the CHANGES file. It is the same file, so just copy it from one to the other once it's updated. It can be reconstructed from the detail of a version in Redmine, for example: http://tools.lsc-project.org/versions/show/4

Tagging

Then, tag a version in SVN:

$ svn cp lsc/branches/v1.2/ lsc/tags/1.2.0

Edit the version number in lsc-core pom.xml:

$ vi lsc/tags/1.2.0/pom.xml
[...]
        <artifactId>lsc-core</artifactId>
        <name>Ldap Synchronization Connector</name>
        <version>1.2.0</version>
[...]

Last but not least, commit this tag:

$ svn commit -m "Tagging 1.2.0 for release" lsc/tags/1.2.0

Building

Build with

mvn package

and copy the files to be distributed from under target/.

Distributing

We currently distribute the following files:

  • lsc-core-1.2.0-src.tar.gz: source archive
  • lsc-core-1.2.0-dist.tar.gz: distribution archive, containing all required dependencies
  • lsc-core-1.2.0-installer.jar: automated graphical installer to install the dist archive above