IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intégration Continue Discussion :

Quel outil pour automatiser une release ?


Sujet :

Intégration Continue

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 113
    Points : 64
    Points
    64
    Par défaut Quel outil pour automatiser une release ?
    Bonjour,

    J'ai mis en place une usine logicielle avec intégration continue (Jenkins) pour un ensemble de projets Java gérés avec Maven 3.

    Je souhaiterais maintenant automatiser mon processus de livraison. Pour cela j'ai mis en place le plugin "release" sous Maven et cela fonctionne bien. Mais je dois lancer la commande release manuellement depuis mon poste de développement pour produire mon livrable.

    Je suis donc à la recherche d'un plugin Jenkins ou d'un outil tiers qui permettrait de produire des livrables à travers une IHM Web. L'idéal serait de proposer ensuite les différentes versions produites en téléchargement sur une page Web. Est-ce qu'un tel outil existe ?

    Merci pour votre aide.

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 350
    Points : 794
    Points
    794
    Par défaut
    Dans le contexte de Maven, le processus de livraison (release) est un processus extérieur. Il est lancé manuellement et à la demande.

    Dans tous les cas, il s'agit avant tout d'une tâche automatisée.
    Et comme toutes les tâches automatisées, il est conseillé de les centraliser dans Jenkins qui fait alors office de véritable référentiel de traitement (Jenkins est avant tout un cron de luxe).

    Pour intégrer des tâches automatisées dans Jenkins qui seront déclencher à la demande, de façon générale, tu as plusieurs possibilités:
    1. Créer un job qui lance tes traitements.
    Dans ton cas: mvn release:prepare release:perform ...
    Ce job sera lancé manuellement
    2. Utiliser le Batch Task Jenkins plugin
    Ce plugin permet d'attacher des commandes transverses à un job principal
    Il s'agit d'un plugin générique traitant tout type de tâches d'administration et qui ira donc au delà du processus de release (mais en tout, cas il le couvrira).
    Ainsi, tu va attacher ce processus de release au job d'intégration continue qui build en continue le projet (version SNAPSHOT).
    Les tâches d'administrations sont lancés manuellement et ont leurs propres historiques.
    https://wiki.jenkins-ci.org/display/...ch+Task+Plugin

    Mais comme tu es dans un cas Maven, je conseille une autre solution
    3. Utiliser le plugin M2 Release plugin
    https://wiki.jenkins-ci.org/display/...Release+Plugin
    Il s'agit du même principe que le plugin Batch Task plugin mais spécialisé pour une release Maven.
    Dans un monde exclusif Maven, c'est le plugin le plus conseillé.

    Quel que soit le type d'intégration Jenkins, le processus de release déclenche l'upload des artefacts dans un repository Maven distant.
    Le mieux est que ces repository distants soit admistrés par des gestionnaires tel que Sonatype Nexus, JFrog Artifactory ou Apache Archiva.
    Ces outils t'offrirons des interfaces facilitant aux utilisateurs la recherche d'artefacts, le browsing et le téléchargement.

    Est-ce que cela répond à la questions?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 113
    Points : 64
    Points
    64
    Par défaut
    Merci c'est très clair.

    Je vais donc m'orienter vers le M2 Release plugin. Comme j'ai un Artifactory comme repository Maven je devrais avoir tout ce qu'il me faut.

    Merci pour ton aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Outil] Quel outil pour le suivi de BUGS/Release logicielles.
    Par philcero dans le forum Gestion de projet
    Réponses: 1
    Dernier message: 18/02/2008, 15h52
  2. Quels outils pour monitorer une base 9i ?
    Par loupin dans le forum Administration
    Réponses: 6
    Dernier message: 15/05/2007, 09h38
  3. Quel outil pour prototyper une interface Web?
    Par mat360 dans le forum Outils
    Réponses: 2
    Dernier message: 13/04/2007, 14h10
  4. Quels outils pour dvper une appli de gestion Full Web ?
    Par Neva dans le forum Général Conception Web
    Réponses: 8
    Dernier message: 18/03/2005, 18h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo