Configuration de GitLab
GitLab est un service d'hébergement Web pour les référentiels Git. Vous pouvez avoir des copies en local et à distance de vos référentiels, ce qui simplifie la collaboration.
Vous pouvez configurer GitLab en tant qu'intégration d'outils dans votre chaîne d'outils afin de pouvoir gérer le code source dans un référentiel nouveau ou existant sur GitLab.com ou dans l'instance GitLab de votre société. Lancez-vous dans le codage social via les wikis, le suivi des problèmes et les demandes de fusion.
Si vous configurez cette intégration d'outils lors de la création de la chaîne d'outils, procédez comme suit :
-
Si vous stockez votre code source dans un référentiel GitLab, dans la section Intégrations configurables, cliquez sur GitLab. Si vous configurez cette intégration d'outils sur IBM Cloud Public, vous devez autoriser IBM Cloud à accéder à GitLab en choisissant OAuth ou Personal Access Token.
-
Si vous choisissez OAuth, cliquez sur Authorize pour accéder au site Web GitLab. Si vous n'avez pas de session GitLab active, vous êtes invité à vous connecter. Cliquez sur Authorize Application pour autoriser IBM Cloud à accéder à votre compte GitLab. Si vous disposez d'une session GitLab active mais n'avez pas saisi votre mot de passe récemment, vous êtes invité à entrer votre mot de passe GitLab pour confirmation.
-
Si vous choisissez le jeton d'accès personnel, vous devez entrer le jeton d'accès personnel à utiliser pour l'autoriser avec GitLab à cloner des référentiels et à effectuer d'autres actions en votre nom. Si vous ne disposez pas d'un jeton d'accès personnel, vous pouvez suivre la documentation sur le site Web GitLab pour en créer un. Assurez-vous que votre jeton d'accès personnel dispose des droits
api
.
-
-
Si vous utilisez un référentiel sur votre propre serveur GitLab, dans la section Intégrations configurables, cliquez sur Ajouter un serveur personnalisé.
a. Entrez un titre pour votre serveur GitHub personnalisé, spécifiez l'URL racine du serveur et entrez votre jeton d'accès personnel.
b. Si vous ne disposez pas d'un jeton d'accès personnel, vous pouvez suivre la documentation sur le site Web GitLab pour en créer un.
c. Si votre GitHub serveur est air-gapped ou n'est pas accessible sur l'internet public, vous pouvez connecter et intégrer un Delivery Pipeline Private Worker à exécuter sur votre propre Kubernetes pour accéder à des ressources internes ou sur site. Pour plus d'informations sur les Delivery Pipeline Travailleurs privés, voir Travail avec Delivery Pipeline Travailleurs privés.
-
b. Passez en revue les emplacements de référentiel cible par défaut pour les référentiels GitLab. Ces référentiels sont clonés à partir des référentiels exemple. Si nécessaire, modifiez les noms des référentiels cible.
Si vous disposez d'une chaîne d'outils et que vous lui ajoutez cette intégration d'outils, procédez comme suit :
-
Dans la console IBM Cloud, cliquez sur l'
Menu > Automatisation de la plateforme > Chaînes d'outils. Sur la page Chaînes d'outils, cliquez sur la chaîne d'outils afin d'ouvrir sa page Vue d'ensemble. Vous pouvez également, depuis votre page de présentation de l'application, sur la carte Distribution continue, cliquer sur Afficher la chaîne d'outils. Ensuite, cliquez sur Vue d'ensemble.
-
Cliquez sur Ajouter un outil.
-
Dans la section Intégrations d'outils, cliquez sur GitLab.
-
Cliquez sur le serveur GitLab que vous souhaitez utiliser.
-
Si vous disposez d'un référentiel GitLab et désirez l'utiliser, cliquez sur Existant pour le type de référentiel et saisissez l'URL.
-
Si vous souhaitez utiliser un nouveau référentiel GitLab, indiquez un nom pour le référentiel, entrez l'URL du référentiel que vous clonez ou déviez, puis sélectionnez le type de référentiel :
a. Pour créer un référentiel vide, cliquez sur Nouveau.
b. Pour créer une copie d'un référentiel GitLab, cliquez sur Cloner.
c. Pour dévier un référentiel GitLab afin de pouvoir participer aux modifications via des demandes d'extraction, cliquez sur Dévier.
-
Si vous voulez créer un référentiel public sur le serveur, désélectionnez la case Rendre ce référentiel privé.
-
Si vous voulez utiliser GitLab Issues pour le suivi des problèmes, cochez la case Activer GitLab Issues.
-
Si vous voulez suivre le déploiement des changements du code en créant des étiquettes et des commentaires sur les validations, ainsi que des libellés et des commentaires sur les problèmes référencés par les validations, cochez la case Suivi du déploiement des changements du code. Pour plus d'informations, voir Suivre où votre code est déployé avec les chaînes d'outils.
-
Cliquez sur Créer une intégration.
-
À partir de la page Présentation de la chaîne d'outils, sur la carte Référentiels, cliquez sur le référentiel GitLab avec lequel vous souhaitez travailler. Selon le référentiel que vous avez sélectionné, le site Web GitLab ou le référentiel GitLab de votre société s'ouvre afin de vous permettre de visualiser le contenu du référentiel.
-
Si vous avez activé GitLab Issues, cliquez sur GitLab Issues pour l'ouvrir. Vous pouvez utiliser cette instance de GitLab Issues pour l'ensemble de votre chaîne d'outils, même si cette dernière contient plusieurs référentiels GitLab.
Si vous ne disposez pas d'un droit maître ou propriétaire sur le référentiel avec lequel vous établissez une liaison, votre intégration sera limitée car vous ne pouvez pas utiliser un webhook. Les webhooks sont nécessaires pour exécuter un pipeline automatiquement lorsqu'une validation est envoyée par commande push au référentiel. Sans webhook, vous devez démarrer manuellement vos pipelines.
Configurer GitLab en utilisant l'API
L'intégration d'outils GitLab prend en charge les paramètres de configuration suivants que vous pouvez utiliser avec l'API HTTP Toolchain et les logiciels SDK lorsque vous créez, lisezet mettez à jour les intégrations d'outils.
Vous devez spécifier la propriété tool_type_id
dans le corps de la demande avec la valeur gitlab
.
Paramètre | Utilisation | Type | Argument Terraform | Description |
---|---|---|---|---|
url_racine_API | facultatif, pouvant être mis à jour | Chaîne | url_racine_API | L'URL de l'API GitLab. |
jeton_API | facultatif, pouvant être mis à jour | Mot de passe | jeton_API | Jeton d'accès personnel (PAT). Ce paramètre est requis uniquement si auth_type est défini sur pat , sinon il est ignoré. |
auth_type | facultatif, pouvant être mis à jour, Default: oauth |
Chaîne | auth_type | Définissez la méthode d'authentification à utiliser pour accéder au fournisseur Git. |
connexion_aveugle | facultatif, pouvant être mis à jour, Default: false |
Booléen | connexion_aveugle | Définissez cette valeur à true pour indiquer que le serveur n'est pas adressable sur l'internet public parce que IBM Cloud ne peut pas valider les détails de connexion que vous fournissez. Certaines fonctions nécessitant un accès API au serveur Git seront désactivées. Delivery Pipeline ne fonctionne qu'en utilisant un travailleur privé qui a un accès réseau au serveur Git. |
branch_par_défaut | facultatif, pouvant être mis à jour | Chaîne | branch_par_défaut | Nom de la branche par défaut du référentiel Git. |
enable_traceability | facultatif, pouvant être mis à jour, Default: false |
Booléen | enable_traceability | Définissez cette valeur sur " true pour suivre le déploiement des modifications de code en créant des étiquettes et des commentaires sur les commits, les pull requests et les problèmes référencés. |
git_id | facultatif, non modifiable | Chaîne | git_id | Définissez cette valeur sur gitlab for gitlab.comou sur l'identificateur global unique d'un serveur GitLab personnalisé. |
has_issues | facultatif, pouvant être mis à jour, Default: true |
Booléen | toolchain_issues_enabled | Définissez cette valeur sur true pour activer les problèmes dans le référentiel GitLab et ajoutez une carte d'intégration d'outils Problèmes à la chaîne d'outils. Définissez cette valeur sur false pour supprimer
la carte d'intégration d'outils de la chaîne d'outils. Cette action n'a pas d'impact sur l'activation des problèmes sur le référentiel GitLab lui-même. |
propriété_intégration | facultatif, pouvant être mis à jour | Chaîne | propriété_intégration | Sélectionnez l'utilisateur pour lequel les opérations Git sont effectuées. |
owner_id | facultatif, non modifiable | Chaîne | owner_id | Utilisateur ou groupe GitLab propriétaire du référentiel. Ce paramètre est obligatoire lorsque vous créez un référentiel ou que vous clonez ou déviez un référentiel. Cette valeur est calculée lorsque vous établissez un lien vers un référentiel existant. |
rep_privé | facultatif, non modifiable, Default: true |
Booléen | rep_privé | Définissez cette valeur sur true pour rendre le référentiel privé lorsque vous créez un référentiel, ou clonez ou bifurquez un référentiel. Ce paramètre n'est pas utilisé lorsque vous établissez un lien vers un référentiel
existant. |
repo_id | facultatif, non modifiable | Chaîne | repo_id | L'identifiant du projet GitLab. |
repo_name | facultatif, non modifiable | Chaîne | repo_name | Le nom du repo GitLab à créer. Ce paramètre est obligatoire lorsque vous créez un référentiel ou que vous clonez ou déviez un référentiel. Cette valeur est calculée lorsque vous établissez un lien vers un référentiel existant. |
repo_url | facultatif, non modifiable | Chaîne | repo_url | URL du référentiel GitLab pour cette intégration d'outils. Ce paramètre est obligatoire lorsque vous établissez un lien vers un référentiel existant. Cette valeur est calculée lorsque vous créez un référentiel ou que vous clonez ou bifurquez un référentiel. |
url_repo_source | facultatif, non modifiable | Chaîne | url_repo_source | URL du référentiel que vous souhaitez dévier ou cloner. Ce paramètre est obligatoire lorsque vous déviez ou clonez un référentiel, mais il n'est pas utilisé lorsque vous créez un référentiel ou un lien vers un référentiel existant. |
url_jeton | facultatif, pouvant être mis à jour | Chaîne | url_jeton | URL de jeton utilisée pour l'autorisation avec le serveur GitLab. |
type | requis, non modifiable | Chaîne | type | Opération à effectuer pour initialiser la nouvelle intégration d'outils. Utilisez new pour créer un référentiel Git, clone pour cloner un référentiel existant dans un nouveau référentiel Git, fork pour dévier un référentiel Git existant ou link pour le lier à un référentiel Git existant. |