BlogTechnique

Talend + Gitlab : Oh my God !

Récemment, j’ai eu la contrainte d’effectuer une mission Talend exclusivement en télétravail. De plus sans horaires fixes, c’est-à-dire sans avoir souvent le client en direct. Dans ce contexte, on peut d’avance anticiper des problèmes de compréhension, de délai, de moyen de livraison, etc…

Pourtant, avec la combinaison des outils Talend et Gitlab, la mission s’est parfaitement déroulée et le client en a été très satisfait. Cet article vous explique pourquoi…

Les outils

GitLab

Outil Open Source de versionning Git à l'origine, il a acquis de nombreuses fonctionnalités annexes qui apporte notamment : la gestion de tickets, de tâches, de temps passé.

Talend Open Studio

Outil Open Source très célèbre dans l'univers de l'intrégration de données, il permet graphiquement (par glisser-déposer de composant) de réaliser tout type de tâches (étant un générateur de code java, il n'a quasiment pas de limites).

La méthodologie

1-Versionning Talend

Dans sa version Open Source, Talend ne propose pas d’outil de versionning. Cependant, il est possible de le mettre manuellement sous versionning avec Git et son interface utilisateur Gitlab (bientôt un article pour plus de précisions).

2-Paramétrage de Gitlab

Dans Gitlab, nous allons créer le projet lié à notre client :

  1. Création du compte utilisateur en rôle « reporter » afin qu’il puisse créer des tâches, des bugs, et accéder aux sources si besoin
  2. Création des lots de développement (milestones sur Gitlab) 
  3. Création des tâches à réaliser

3-Déroulement du projet

Le diagramme ci-dessous montre le cycle de développement du projet, et notamment les interactions GitLab <-> Talend :

Lorsque nous développons dans Talend des fonctionnalités liées à une ou plusieurs tâches, ce travail se matérialise concrètement dans GitLab par un commit. Tout l’intérêt est de lier ce commit aux tâches créées dans GitLab. L’astuce est simplement de mentionner la tâche dans le message de commit (expl #4 pour lier le commit à la tâche 4). Et alors, la boucle est bouclée : la tâche créée par le client a son commit dans GitLab, c’est-à-dire le développement Talend correspondant à son besoin.

Cette démarche demande une certaine rigueur qui sera très vite récompensée par une transparence et une propreté du projet sans équivalent. A certains égards, cela est même bien plus « propre » et précis que l’enregistrement automatique dans la version entreprise de Talend. En effet, celle-ci déclenche un commit sans commentaires humains, et donc sans lien immédiat avec une tâche.

Les avantages

A première vue, cette méthodologie peut paraître lourde en comparaison d’un développement fait rapidement sous Talend et envoyé au client. Mais à bien y regarder, côté client, les avantages sont clairs :

  • Facilité de comprendre ce que le développeur réalise
  • Facilité de communication avec le développeur sur des sujets précis (imaginez l’équivalent en communication email…)
  • Transparence du développeur sur ce qu’il réalise
  • Transparence du développeur sur le temps passé
  • Facilité de transmission si le client doit changer de prestataire
Cette dernière assertion n’est pas anodine et nous tient à coeur. Chez Effidic, nous mettons en avant une réelle expertise, et en cela nous ne voulons en aucune façon garder des clients captifs en livrant des boîtes noires qui lient de manière forcée le client et le prestataire.

2 réflexions au sujet de « Talend + Gitlab : Oh my God ! »

  1. Bonjour,
    avez vous les etapes de recuperation d’un projet publié sur git , modifications et push sur le mem projet remote ?
    Jai vu que git ne conserve pas la structute des job mais transforme chaque job en 3 fichiers.. alors comment recuperer un job pour en appliquer des modification et les pusher ..
    merci bcp

    1. Bonjour,
      Ce n’est pas Git qui transforme un job en 3 fichiers, c’est la méthode de stockage de Talend qui est comme cela.
      Ce sont ces fichiers qu’il faut « mettre sous git » et pusher sur un serveur remote.
      Il y a aussi tout un tas de fichier à ignorer car ils bloquent le travail collaboratif.
      Nous proposons ce genre de prestation et plus (publication sur Nexus par exemple), n’hésitez pas à nous contacter pour plus de détails.
      Bonne journée.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.