Dataparty#4

Dataparty#4 : Git et forges logicielles

Une Dataparty dédiée à l'usage des forges logicielles avec Git et Gitlab

L’objectif de cette Dataparty du 19 mars 2025 était de présenter les forges à un public plus ouvert que les développeurs du LESSEM .

dataparty#4_affiche
Affiche de la Dataparty#4 © Ninon Bray

Pourquoi une Dataparty sur les forges ?

Lors des deux dernières rencontres des RDO à Sète, la nouvelle forge institutionnelle nous a été présentée, avec un objectif de mise en production pour le printemps 2025. Nous avions déjà mis en place des formations sur Git et le contrôle de versions, mais il nous semblait important de représenter l'unité LESSEM sur la forge dans un effort de regrouper les projets de l'UR.
De nombreuses personnes de l'unité produisent du code mais également des pages web, qui ont leur place sur une forge logicielle. L'idée de cette journée est de présenter les forges à un public plus ouvert que des développeurs, une fois la nouvelle forge en ligne pour faciliter la migration d'un grand nombre de projets.
Nous avons maintenu cette journée malgré un report de mise en production de la forge.

Les organisateurs

  • Maxime Jaunatre (RDO Ecodiv)
  • Clément Lattelais (RDO ACT)
  • Delphine Jaymond (RDO Ecodiv)
  • Frédéric Bray (RDO ACT) 

Les intervenants du jour

  • Maxime Jaunatre, LESSEM
  • Alizia Tarayoun, IGE
  • Elias Chetouane, OSUG
  • Jean Mathieu Monet, LESSEM 

Le programme 

  • Introduction aux Forges par Alizia
  • Atelier Forge INRAE par Maxime
  • Workflow de publication de code avec Software Heritage par Elias
  • REX par Jean-Matthieu
  • Jeu Matrix
  • Présentation GIT par Maxime
  • Atelier GIT
  • Conclusion

Résumé de la journée

 
Introduction aux Forges : Alizia

Alizia a présenté le concept de forges et leurs utilités au sein de l'ESR, en se basant sur la forge de l'Université Grenoble Alpes et la Forge MIA actuellement utilisée au sein du laboratoire. Son intervention est importante pour nous, car elle permet de faire le lien avec la formation de l'école doctorale sur l'utilisation des moyens du Gricad.

Atelier Forge INRAE : Maxime

Maxime a présenté plus d'aspects de la forge, pour répondre aux questions et visiter des dépôts déjà présents dans le groupe LESSEM. De nombreuses questions se sont portées sur les chaînes d'Intégration Continue / Déploiement Continu (CI-CD) et comment elles peuvent répondre à des besoins pour des modèles déjà existants. Il y a eu plusieurs questions sur l'organisation à venir du groupe LESSEM, qu'il va nous falloir résoudre.

Workflow de publication de code avec Software Heritage : Elias

Elias a présenter la plateforme Software Heritage, qui permet d'archiver des dépôts versionnés pour ensuite avoir des identifiants stables pour les dépôts sur HAL. Une partie importante de ce workflow repose sur la récolte de métadonnées liées au code ainsi que l'utilisation de licences.

REX : Jean-Mathieu

Jean-Matthieu a illustré sa découverte et son utilisation de logiciels de versionnement à travers sa carrière, depuis la récupération de codes existants à la publication de packages R sur des dépôts en ligne. Chaque étape permet d'identifier les limites des précédentes méthodes et pourquoi chaque outil mérite un investissement en formation.

Jeu Matrix

Jeu collaboratif sur l'utilisation du site Gitlab pour corriger du bug.
Principe général : un dépôt Gitlab avec 3 équipes, avec un issue et une branche par équipe pour les faire travailler chacun de leurs côtés. Ils n'ont qu'à modifier le code depuis l'interface web. A la fin, l'animateur merge les trois branches, présente la résolution de conflits et la chaîne de CI-CD présente le site web final réparé.
Pour résoudre les bugs présents sur le dépôt, chaque équipe doit visiter des salles informatiques de serveurs sur le site grenoblois d'INRAE et découvrir l'aspect matériel de l'hébergement de serveurs, les archives et les bureaux des informaticiens.
Le fonctionnement en branches illustre bien le travail de chacun de son côté afin d'aboutir à un projet commun, ainsi que l'utilité d'un "organisateur" de chaque projet qui sera en charge de résoudre les conflits.

Présentation GIT

Maxime a repris sa présentation précédente sur le fonctionnement de Git, pour introduire les termes techniques du logiciel (commit, pull push, branch). Cela permet de débroussailler le terrain avant une mise en pratique essentielle.

Atelier GIT

Nous nous sommes séparés en deux groupes, sur deux tables, avec chacun son ordinateur portable (ou presque).
Une première table (tenue par Delphine, Clément et Maxime) était dédiée aux personnes découvrant Git, afin de tout paramétrer et les guider dans leurs premiers commits. Beaucoup de ces utilisateurs sont des stagiaires et l'utilisation se fait principalement à travers un IDE connu (Rstudio, VSC).
La deuxième table (tenue par Alizia et Fred) était plutôt réservée aux personnes ayant déjà une pratique hebdomadaire de Git, afin de mettre en place des clés SSH, et s'intéresser davantage à l'utilisation de branches, de merge et le terminal de commande.

Bilan

Cette DataParty dédiée à l'utilisation des forges logicielles a permis de répondre à un certain nombre de questions bien concrètes, en testant l'outil. En début de journée, Gitlab et Git étaient complètement inconnus pour les participants. On peut dire qu'au final, tous les participants ont compris les avantages d'utiliser de tels outils pour être reproductibles.

Prochain Rendez-vous : À l'automne 2025 !