Talend: Installation du plugin Git dans le studio

C’est une question qui revient  souvent dans les forums: peut-on utiliser Git avec Talend open studio en version communautaire? La réponse est oui, même si l’utilisation n’est pas aussi automatique et intégrée que dans la version professionnelle.

Introduction

Parce qu’on a tous été confrontés à ce besoin de partager des sauvegardes lorsque l’on développe avec Talend, l’utilisation d’un gestionnaire de source est obligatoire.
Talend dans son offre professionnelle propose donc cette fonctionnalité quasi obligatoire lors de gros projets, il est possible de bidouiller un peu pour obtenir un équivalent de cette fonction en utilisant le plugin Eclipse EGit directement dans le studio.

Source java VS sources Talend

Pour rappel, Talend est un générateur de code s’appuyant sur Javajet, la vrai question est de savoir ce qu’on doit vraiment sauvegarder, les sources générées ou les sources Talend basées sur des fichiers xml properties et item. Il serait intéressant de sauvegarder les deux sur deux référentiels Git différent, vu l’arrivée de maven depuis la version 6 de Talend, pourquoi ne pas se servir d’un hook pour automatiser une compilation et un déploiement avec Jenkins, la sauvegarde des sources Talend n’étant que pour sauvegarder le projet et le partager avec l’équipe. La procédure de sauvegarde du répertoire caché .java ainsi que son build automatique ne sera pas expliquée ici mais pourra faire l’objet d’un futur article 😉

Identifier la version d’eclipse

Il faut pour cela créer un projet et ouvrir Talend open studio, allez ensuite dans Help -> Installation details. Recherchez la ligne Eclipse Platform, cette ligne identifie la version d’eclipse RCP qui est la base du studio Talend

Dans mon cas c’est la version 4.4.0 qui correspond à Eclipse Luna, ne reste plus qu’à télécharger la version du plugin EGit compatible. Vous trouverez le tableau de compatibilité sur cette page, la bonne nouvelle est que ce plugin git dans sa dernière version est compatible avec toutes les versions d’eclipse à partir de la 4.4 et plus.

Installation du plugin

Téléchargez la dernière version en date ici, une fois l’archive ouverte, vous trouverez ceci:

Pour info, il est complétement impossible d’installer le plugin via l’archive zip en mode déconnecté, la fonction étant volontairement désactivée (merci Talend). Les deux répertoires importants sont donc features et plugins, ils suffit de copier-coller ceux-ci dans le répertoire d’installation du studio.

Une fois fait, relancez Talend open studio…

Utilisation du plugin

Pour vérifier la bonne opération, allez dans Help -> Installation details et listez les plugins pour retrouver la version 4.7 d’Egit

Allez dans fenêtre -> montrer la vue et sélectionner les vues relatives à Git.

Toutes les fenêtres sont disponibles en bas

Vous pouvez aussi choisir la perspective Git en haut à droite

Ajout d’un référentiel

Créez un premier job dans votre projet

Rendez-vous ensuite dans la perspective java et cliquer droit sur le projet en cours

Puis dans le menu Team, choisissez Share project

Créez au passage le référentiel sur votre disque dur local en cliquant sur Create…

Sélectionnez ou créez un répertoire de destination

Le projet de votre workspace est maintenant lié à un répertoire qui va pouvoir contenir plusieurs projets Git, ce répertoire peut être réutilisé pour d’autres projets Talend.

Un aperçu de la perspective Java qui indique que le projet est maintenant lié

Ignorer des éléments

Tout n’est pas utile dans le projet car régénéré à chaque lancement, vous pouvez construire un fichier .gitignore, pour se faire cliquez droit sur un répertoire inutile du projet puis faites Team-> Ignore

Vous pouvez aussi manuellement éditer le fichier .gitgnore et ajouter les éléments suivants en utilisant la vue Navigator

Synchroniser le référentiel distant

Seuls les fichiers des jobs (du répertoire process) sont listés afin d’être ajoutés dans la staging area, l’étape suivante est de les sélectionner puis de cliquer droit dessus puis de faire Add to Index.

Ne reste plus qu’à entrer un message et de les commiter 😉

Une fois « commitée », vos sources vont pouvoir être poussées vers votre référentiel distant, si comme moi vous utilisez GitHub, créez un dépôt et copiez l’url de celui-ci avec le bouton réservé à cet effet:

Lors du push, collez l’URL précédemment copiée en entrez vos identifiants.

Validez le push pour terminer la synchronisation

Derniers conseils

Voici quelques points à noter lors de l’utilisation de Git avec Talend:

  • La première fois que vous clonez un dépôt, vous devrez importer le projet.
  • S’il n’y a pas de création de nouveaux objets (jobs, connexions, metadonnées, etc…) vous pouvez directement ouvrir le projet après un pull.
  • En cas de création de nouveaux objets, ré-importez le projet, en effet le répertoire .metadata dédié à Eclipse n’étant pas synchronisé, celui-ci va devoir reconstruire son référentiel.
  • Évitez de sauvegarder le répertoire .metadata afin d’éviter de devoir gérer de nombreux conflits de merge.

 

 

 

6 thoughts on “Talend: Installation du plugin Git dans le studio

  1. THEBAULT

    Bonjour,

    Il semblerait que depuis le passage à la 7.2.1 l’implémentation du plug-in e-Git ait été bloqué par Talend. Nous avons réalisé un POC sur la 6.5 tout était OK mais la 7.2.1 ne permet pas d’afficher les vues e-Git.

    cdt,

    • Bjr,
      En effet, j’ai pu le constater également, je vais voir pour une mise à jour, cet article date un peu.
      Ma recommandation est de rester sur une version 6 qui reste plus stable.
      Cdlt

  2. LA

    Hi,

    I couldn’t run this in Talend DI 7.2.1 Studio.
    Do you know of a workaround?

    Thanks

    • Hello,
      You should use lastest version 6.
      Version 7 is still buggy like the search box for instance.
      Regards

  3. Arun

    Hi Jean,
    Thank you for your post. It was indeed helpful.
    How can you import the checked in project for some one else with all the components , literally the entire project as it is prior check in 🙂 .

    Thanks Arun

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

Petit calcul pour valider votre commentaire! merci * Time limit is exhausted. Please reload CAPTCHA.