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é.
Les comptes robots ne peuvent pas se connecter à l'interface Harbor.

Ce compte doit avoir les permissions suivantes :
- Artefact :
Lister - Dépôt:
Lister,Pull,Push - Tag:
Lister
Les permissions Lister permettent à GitLab de visualiser le registre Harbor.

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.
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 :
- Depuis votre groupe ou projet, allez dans Paramètres > Intégrations
- Sélectionnez Harbor
- 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
- Cliquez sur Enregistrer les modifications

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.
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.
- Accédez à votre projet ou groupe
- Allez dans Déploiement > Registre Harbor
Vous pouvez rechercher, trier et filtrer les images sur cette page.

Source
Cette documentation est basée sur les documentations suivantes :