GitLab : hébergement, versionning et partage de code

Présentation

L’IR* Huma-Num met à disposition des projets de recherche en sciences humaines et sociales (SHS) une instance du logiciel Gitlab. L’instance GitLab d’Huma-Num permet l’hébergement sécurisé et le partage maîtrisé de fichiers, en particulier des fichiers de code informatique (tous langages) selon le protocole de versionnage git.

Il s’agit d’une implémentation du logiciel Gitlab. Les principales fonctionnalités sont :

  • La gestion de version et des dépôts (git) de code et de programmes ;
  • L’édition collaborative de code et de programmes ;
  • l’intégration continue et le déploiement de programmes ;
  • l’automatisation d’actions de déploiement et publication de programmes informatiques ;
  • la compilation de code ;
  • la génération de sites web statiques (sous la forme d’ensemble de pages Web HTML avec Hugo par exemple), la gestion de tickets (issues) et permet la gestion des développements de code communautaires.

Ce service est reservé aux porteurs et participants de projets de recherche en SHS et il est mis à disposition dans la limite des ressources dont dispose Huma-Num (en particulier sur les besoins en stockage et en déploiement de code).

Fonctionnalités disponibles

L’instance d’Huma-Num propose les fonctionnalités standards :

Pages

Il est possible d’utiliser, avec l’instance GitLab proposée par Huma-Num, la fonctionnalité GitLab Pages pour générer et publier un site Web en HTML statique (uniqement dans le sous-domaine “huma-num.fr”) par exemple avec des modèles de sites Web tel que HUGO, RTD, JEKYLL, …. Gitlab Pages utilisent Gitlab CI, c’est à dire le système d’intégration continue de Gitlab.

Runners

Les runners préinstallés et disponibles sur l’instance sont:

  • Alpine
  • Shell

Publication des dépôts et archivage de code

Les dépôts publics (au sens de publié par leurs auteurs) créés dans l’instance GitLab d’Huma-Num sont signalés sur la plateforme “Mission logiciels libres Code.gouv.fr” développée par la DINUM. Cela offre une visibilité sur les codes sources des organisme publics français. Dans ce cadre, ils sont aussi archivés sur la plateforme internationale Software Heritage développée par INRIA. La publication des dépôts sur code.gouv.fr implique leur mise sous une licence ouverte (dont la licence Ouverte 2.0 par exemple).

Modalités de sauvegarde et de stockage

Hébergés sur les infrastructures exploitées par Huma-Num, les dépôts sur Gitlab bénéficient des moyens de sauvegarde appliqués à l’ensemble des serveurs. Une sauvegarde incrémentale est ainsi effectuée chaque nuit. Il n’y a pas de limite imposée à la volumétrie de stockage. Néanmoins pour un usage particulier (autre que des fichiers de code) qui utiliserait un volume de stockage jugé important, nous vous remercions de le signaler à cogrid@huma-num.fr.

Par ailleurs les projets sont limités au nombre de 50 pour chaque comptes HumanID.

Ouverture d’un compte Gitlab et accès

L’accès à Gitlab se fait exclusivement via un compte “HumanID”, l’interface d’authentifcation centralisée d’Huma-Num. Pour cela, il est nécessaire de disposer au préalable d’un compte HumanID (voir la documentation).

Une fois ce compte obtenu, la demande d’ouverture du service Gitlab se fait à partir du tableau de bord : “demander l’accès” : tableau de bord HumanID.

Accès direct au service Gitlab hébergé par Huma-Num : gitlab.huma-num.fr.

Les autres forges de l’enseignement supérieur en France

A titre d’information, le Comite pour la Science Ouverte du ministère de la recherche a publié un rapport sur les forges logicielles utilisées dans les établissements de l’Enseignement supérieur et de la Recherche (ESR). Son propos est de faire un premier état des lieux des forges logicielles utilisées dans l’ESR français et d’identifier les moyens de rendre plus visibles les productions logicielles issues de la science ouverte. Il permet également aux utilisateurs de mieux cartographier les forges de code et donc de se répartir sur les forges les plus pertinantes pour leurs besoins de développements.