Aller au contenu principal

Intégration GitLab

Cette documentation explique comment configurer l'intégration Harbor présente dans GitLab. Cette intégration vous permet d'utiliser Harbor comme registre de conteneurs pour vos projets GitLab.

Créer un compte robot dans Harbor

Pour permettre à GitLab de joindre Harbor, il faut lui créer un compte robot dédié.

info

Les comptes robots ne peuvent pas se connecter à l'interface Harbor.

Créer un compte robot - Informations de baseCréer un compte robot - Informations de base

Ce compte doit avoir les permissions suivantes :

  • Artefact : Lister
  • Dépôt: Lister, Pull, Push
  • Tag: Lister
astuce

Les permissions Lister permettent à GitLab de visualiser le registre Harbor.

Créer un compte robot - Sélectionner les permissionsCréer un compte robot - Sélectionner les permissions

Une fois le compte créé, notez les informations suivantes :

  • Le nom du compte robot (Au format <prefix><project_name>+<account_name>)
  • Le secret du compte robot
  • Le nom du projet Harbor
  • L'URL de votre Harbor

Configurer l'intégration Harbor dans GitLab

Dans GitLab, l'intégration peut être configurée au niveau d'un groupe ou d'un projet.

info

La configuration de l'intégration faite au niveau du projet remplace celle faite au niveau du groupe.

Elle se configure de la manière suivante :

  1. Depuis votre groupe ou projet, allez dans Paramètres > Intégrations
  2. Sélectionnez Harbor
  3. Remplissez les informations de configuration :
    • URL de Harbor : l'URL de votre instance Harbor
    • Nom du projet Harbor : le nom de votre projet Harbor
    • Nom d'utilisateur Harbor : le nom du compte Harbor
    • Mot de passe Harbor : le mot de passe de l'utilisateur
  4. Cliquez sur Enregistrer les modifications
Configurer l'intégration Harbor dans GitLabConfigurer l'intégration Harbor dans GitLab

Utiliser les variables Harbor dans la CI GitLab

Une fois l'intégration Harbor activée, les variables globales $HARBOR_USERNAME, $HARBOR_HOST, $HARBOR_OCI, $HARBOR_PASSWORD, $HARBOR_URL, et $HARBOR_PROJECT seront créées pour être utilisées dans la CI/CD.

Ci-dessous, un exemple d'utilisation de ces variables dans un job de construction d'image Docker avec Buildah.

.gitlab-ci.yml
build-with-buildah:
stage: build
image: quay.io/buildah/stable:latest
before_script:
- echo "$HARBOR_PASSWORD" | buildah login --username "$HARBOR_USERNAME" --password-stdin $HARBOR_HOST
script:
- buildah build --tag $HARBOR_HOST/$HARBOR_PROJECT/$CI_PROJECT_NAME:latest .
- buildah push $HARBOR_HOST/$HARBOR_PROJECT/$CI_PROJECT_NAME:latest
after_script:
- buildah logout $HARBOR_HOST

Visualiser le registre Harbor dans GitLab

Vous pouvez consulter le registre de conteneurs Harbor d'un projet ou d'un groupe.

  1. Accédez à votre projet ou groupe
  2. Allez dans Déploiement > Registre Harbor

Vous pouvez rechercher, trier et filtrer les images sur cette page.

Visualiser le registre Harbor dans GitLabVisualiser le registre Harbor dans GitLab

Source

Cette documentation est basée sur les documentations suivantes :