Dans ce document, nous allons décrire comment faire des livraisons simples ( manuelles) sans passer par les cibles release de maven. Finalement, la méthode release de maven sera décrite.
Notations
<FudaaCrueDevel> indique la racine des fichiers du projet Fudaa-Crue
Compte Maven pour uploader les livrables
Pour uploader les livrables (jar) sur Artifactory, un compte est nécessaire. Pour configurer les paramètres de connexion de cet utilisateur, il faut modifier le fichier settings.xml et ajouter :
Code Block | ||||
---|---|---|---|---|
| ||||
<settings xmlns:profile="http://maven.apache.org/SETTINGS/1.0.0">
<localRepository>C:\devel\.m2\repository\</localRepository>
<servers>
<server>
<id>artifactory-fudaa</id>
<username>maven</username>
<password>ADemanderAEquipeFudaa</password>
</server>
<server>
<id>artifactory-fudaa-snapshot</id>
<username>maven</username>
<password>ADemanderAEquipeFudaa</password>
</server>
</servers>
.... |
Livraison manuelle
Incrémenter les numéros de version
Chaque fichier pom.xml du projet doit être modifié pour incrémenter la version. La balise <version> doit être modifiée
Code Block | ||
---|---|---|
| ||
<groupId>org.fudaa.soft.fudaa-crue</groupId>
<artifactId>fudaa-crue</artifactId>
<version>X.XX</version> |
Pour faire cela, l'action Edit>Replace in projects
peut être utilisées.
Une fois ce remplacement effectué, n'oubliez pas de commiter vos modifications.
Note |
---|
Avant de continuer, lancer la commande mvn clean install pour vérifier que tous les tests passent |
Taguer les sources
Pour cela il faut faire une copie de sources, via la commande Copy To...
Copier vers tags/soft/fudaa-crue-X.XX
avec X.XX représentant la version livrée
Commande maven basique
Afin de générer les livrables la commande à lancer dans le répertoire <FudaaCrueDevel> est la suivante
Code Block |
---|
mvn -Prelease clean install |
- L'activation du profil
release
sur le projet Fudaa-Crue permet de générer :- le livrable spécifique à OTFA : crue-otfa-<VERSION>-otfa.zip, qui contient un fichier lisez-moi.txt décrivant l'utilisation d'otfa-batch,
- le livrable général FudaaCrue : Fudaa-Crue-<VERSION>.zip
- pour rappel, le profil
noIntegrationTests
évite de lancer les tests d'intégration qui sont longs
Note |
---|
Les tests d'intégration doivent être lancés avant toute release. Les tests sont lancés à chaque modification par le job https://fudaa.ci.cloudbees.com/job/Fudaa-Crue%20Integration/. |
Serveur d'intégration continue
La livraison peut être effectuée via le job https://fudaa.ci.cloudbees.com/job/Fudaa-Crue%20Release/. Ce job lance uniquement la commande maven adéquate.
Après la livraison manuelle: incrémenter de nouveau les numéros de version
Il faut maintenant passer à la version n+1 et incrémenter de nouveau les versions dans les fichiers pom.
Livraison complète avec maven release
Cette commande est expliquée dans le document Utilisation de Maven et de Hudson et la paragraphe Release
Ces commandes sont assez complexes mais réalisent toutes les étapes de la livraison manuelle ( tag et incrément de versions). Attention, si un commande échoue il faut faire machine arrière ( voir les liens ci-dessus).
La commande à effectuer dans un premier temps serait :
Code Block |
---|
mvn release:prepare -DdryRun=true |
Il s'agit simplement de tester que tout se passera bien.
Les commandes à effectuer pour la livraison seraient:
Code Block |
---|
mvn -Prelease,noIntegrationTests --batch-mode release:prepare -Dusername=IdentifiantSourceforge -Dpassword=PassordSourceforge
mvn -Prelease,noIntegrationTests release:perform -Dusername=IdentifiantSourceforge -Dpassword=PassordSourceforge |
Note |
---|
Je pense que l'activation des profils release et noIntegrationTest sont inutiles dans la première commande |
L'options batch-mode évite les questions "inutiles".
Ou récupérer les livrables
Après la construction, les livrables sont disponibles sous les arborescences suivantes ( X.XX étant la version de Fudaa-Crue):
- <FudaaCrueDevel>\src\fudaa-crue\ui-application\target\Fudaa-Crue-X.XX.zip contient l'application
- <FudaaCrueDevel>\src\fudaa-crue\crue-otfa\target\crue-otfa-X.XX-otfa.zip contient le livrable pour otfa batch
Ou déposer les livrables
Comme indiqué dans le PQL, les livrables doivent être déposés sur l'instance sharepoint dans le répertoire Livraisons de sharepoint.