Attention, le contenu cet article est peut-être obsolète !
Explications sur la plate-forme d'intégration en continue avec un exemple JavaAujourd'hui le développement d'un projet à échelle industrielle nécessite l'utilisation d'outils de production adéquates. IDE puissant bien sûr, mais également solution pour la PIC (plate-forme d'intégration en continu) afin d'optimiser le processus de développement et de maintenir qualité, réactivité et rationnalité.
Voici donc un exemple de PIC, dans le cadre d'un projet Java.
1- Le développeur code.
2- Quand il a besoin d'une dépendance tierce, il trouve le lien Maven correspondant à la dépendance souhaitée et le place dans la section <dependencies> du fichier pom.xml (Project Object Model) à la racine de son projet.
L'IDE va ainsi la récupérer automatiquement grâce à Maven : dans le dépôt privé de l'équipe de développement (3) ou sur le dépôt Maven publique accessible à tous sur Internet (4).
5- Le développeur déploie sur SVN (ou tout autre système de gestion de version).
6- Quand il juge avoir une version stable, le développeur lance un "build" via Jenkins. Ce dernier est un outil puissant: c'est un ordonnanceur permettant de compiler le Java en récupérant le code depuis SVN (7), tester la présence des dépendances... Il travaille de concert avec avec Maven (8) et Sonar (9). A présent parlons de Nexus : il s'agit d'un outil où l'on entrepose les divers dépendances. La première fois que l'on a besoin d'elle, une dépendance est téléchargée par Maven (10) et stockée dans Nexus (11).
12- Le développeur consulte le rapport de Sonar pour améliorer son code.
Avantages :
- Vous pouvez créer des projets "parents" avec leur dépendances, dont les projets enfants hériteront (une sorte de factorisation des dépendances).
- Vous pouvez stocker, dans Nexus, plusieurs versions d'une dépendance sans problèmes.
Note : Jenkins est également utilisable, tout comme Sonar, dans d'autres languages!