Skip to content
Snippets Groups Projects
Name Last commit Last update
README.md

Page d'information sur gitlab-forge

Cette page permet de vous informer des fonctionnalités actuellement en production ainsi que les procédures si vous avez besoin d'un espace.

N'hésitez pas à proposer un merge request si vous voyez des erreurs ou discuter de Gitlab sur le canal ariane #gitlab-forge

Gitlab-forge est mise à disposition des services du ministère. La version installée est indiquée sur l'en-tête du canal.

Gitlab-forge est accessible à partir d'intranet ainsi qu'à partir d'internet en https (aucun accès en ssh).

Accès

Tous les agents du pôle ministériel ayant une adresse en @developpement-durable.gouv.fr ou @i-carre.net peuvent accéder à Gitlab-forge (à l'aide de l'identifiant et mot de passe de la messagerie) et y créer des projets individuels sous leur profil.

Une demande d'accès d'une personne externe peut s'effectuer par l'intermédiaire d'un agent du pôle ministériel. Pour cela, accéder à l'encart "Faire une demande d'assistance" sur le portail Architecture et Méthodes.

Afin de pouvoir travailler en équipe, vous pouvez demander la création d'un groupe, via le même encart "Faire une demande d'assistance" sur le portail Architecture et Méthodes, et indiquer obligatoirement :

  • la motivation de cette création ;
  • le nom du groupe correspondant au service du demandeur ;
  • et le owner du groupe (l'administrateur) qui aura la possibilité de créer des sous-groupes ou projets au sein de ce groupe ainsi que les permissions. L'administrateur doit appartenir au service créé, et doit transmettre un accord écrit de la part du responsable hiérarchique de ce service. Cet administrateur devient alors responsable du fonctionnement de son groupe.

Note : pour être administrateur d'un groupe racine (tel qu'une direction par ex.), la demande devra toutefois être validée par la hiérarchie du niveau approprié.

Les groupes et projets peuvent être internes ou privés :

  • un groupe ou projet interne est lisible par tous les agents pouvant se connecter à Gitlab-forge ;
  • un groupe ou projet privé ne sera accessible qu'aux membres de celui-ci.

A votre demande, nous pouvons également créer un sous-groupe du groupe "pub" dédié aux groupes publics. La visibilité des sous-groupes/projets de pub pourra être interne, privée ou publique.

  • un groupe/projet publique est accessible à tout internet sans authentification.

Il est interdit de créer un projet publique sous votre profil individuel gitlab. Dans ce cas, l'URL est publiée avec votre nom de compte et n'est donc pas pérenne. Par ailleurs, Gitlab-forge n'est pas destiné à publier des projets individuels. Un script sera exécuté ultérieurement pour enlever la visibilité publique sur les projets individuels.

Enfin, pour qu'un agent externe puisse accéder à votre groupe/projet, vous devez demander à votre administrateur Amédée de lui créer un compte externe (et une BALI en i-carre.net ) pour cela.
Cet agent pourra se connecter à Gitlab-forge le lendemain (synchronisation Cerbère) et vous pourrez ainsi l'ajouter en tant que membre d'un groupe ou d'un projet.

Accès public

Si vous devez publier/partage un groupe ou projet public sur internet sans authentification, vous devez en faire la demande à la BALF @PND Forge en précisant :

  • le nom du groupe correspondant au service du demandeur ;
  • le owner du groupe (l'administrateur) qui aura la possibilité de créer des sous-groupes ou projets (public, interne ou privé) au sein de ce groupe.

Sauvegardes

Gitlab-forge est sauvegardé une fois par jour avec une rétention d'une semaine sur le BaaS (stockage objet fournis par DIS/GIC).
Plus précisement, il y a une sauvegarde par jour ouvert et une sauvegarde le premier week-end du mois.

La restauration consiste à restaurer le serveur complet !

Il n'est pas possible de restaurer à la carte : un groupe ou projet supprimé par mégarde par exemple.

Par ailleurs, les runners et les pages ne sont pas sauvegardés. Ceux-ci pouvant être relancés.

Fonctionnalités

Dépôt git

Le dépôt est accessible en https uniquement. Les utilisateurs doivent créer, puis utiliser un jeton (token) qui sert de mot de passe pour le client git :

  • login : login Gitlab-forge (indiqué en haut à droite lorsque vous êtes connecté) ;
  • mot de passe : token que vous aurez soigneusement noté (s'il est perdu vous pouvez en créer un autre et résiler l'ancien).

Container Registry

Le registry de Gitlab-forge est mis à disposition sur intranet et internet.

L'URL est affichée dans le menu du projet : Packages et Registries - Container Registry - CLI Commands

Merci d'y faire le ménage réguliérement afin de ne pas saturer inutilement le disque du serveur et de veiller à créer des images minimalistes, dans la mesure du possible, pour ne pas saturer rapidement le serveur.

Runner

Un runner peut être mis à disposition d'un groupe d'un service d'administration centrale à la demande @PND Forge. Celui-ci est installé sur un serveur kubernetes en POC (donc pas très gros et il peut arriver que le runner soit indisponible quelques jours).

Si vous disposez déjà de votre propre runner local ou comptez disposer de votre propre runner, vous pouvez le connecter à Gitlab-forge.

Pages en dev

Les Gitlab pages sont opérationnelles, en version limitées pour l'instant : les pages sont en http et accessibles seulement à partir d'intranet ou via le VPN.

Afin de générer les gitlab pages, vous pouvez utiliser votre propre runner local ou en demander un @PND Forge.

Dependency proxy

Vous pouvez activer et utiliser la fonction Dependency Proxy pour votre groupe, ce qui évite de multiples téléchargements de la même image sur Docker Hub, à chaque exécution de runner.