Generar una release con maven

A continuación vamos a explicar algunos pasos para generar una release con maven.

Lo primero que tenemos que hacer es configurar la conexión contra el SCM correspondiente en nuestro
caso SVN.

Para eso usaremos el plugin maven-scm-plugin

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-scm-plugin</artifactId>
                <version>1.9</version>
                <configuration>
                      <connectionType>connection</connectionType>
                </configuration>
</plugin>

Añadiendo las siguientes lineas a nuestro pom.xml

<scm>       
        <connection>scm:svn:http://somerepository.com/MyApplication/trunk</connection>
        <developerConnection>scm:svn:http://somerepository.com/MyApplication/trunk</developerConnection>
</scm>

Una vez configurada la conexión scm procederemos a preparar la release.

mvn clean release:clean release:prepare -Dusername=${username} -DdryRun=true

IMPORTANTE!! para poder hacer la release tendremos que tener totalmente actualizado el entorno, sin que falte por realizar ningún commit del mismo.

Tampoco podemos olvidarnos de que necesitamos estar en una versión SNAPSHOT para hacerlo, sino tendremos un error del tipo:

"You don't have a SNAPSHOT project in the reactor projects list."

Este error ocurre porque estas intentando hacer una release de una release, la versión
de tu proyecto dentro del pom.xml debería ser una SNAPSHOT, algo así como
0.0.8-SNAPSHOT.

Una vez preparada la release si todo bien quitaremos el parámetro dryRun y lanzaremos otra vez la instrucción.

mvn clean release:clean release:prepare -Dusername=${username}

Durante el proceso nos pedirá el número de versión para la release y el nombre del tag que va a crear para la misma, así como cual sera el número de versión para la nueva versión de desarrollo SNAPSHOT en la rama principal trunk

Y con esto digo yo que es suficiente por ahora ....

Comentarios