IBM Cloud Docs
Configuration de GitHub

Configuration de GitHub

GitHub 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.

GitHub Enterprise est un service d'hébergement Web sur site pour les référentiels Git.

GitHub Issues est un outil de suivi qui conserve votre travail et vos plans à un seul et même emplacement. Il est intégré à votre référentiel de développement pour vous permettre de vous concentrer sur les tâches importantes.

Vous pouvez configurer GitHub 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 GitHub.com ou dans l'instance GitHub Enterprise de votre société. Lancez-vous dans le codage social via les wikis, le suivi des problèmes et les demandes d'extraction.

Si vous configurez cette intégration d'outils lors de la création de la chaîne d'outils, procédez comme suit :

  1. Si vous stockez votre code source dans un référentiel GitHub, dans la section Intégrations configurables, cliquez sur GitHub. Si vous configurez cette intégration d'outils sur IBM Cloud Public, vous devez autoriser IBM Cloud à accéder à GitHub en choisissant OAuth ou Personal Access Token.

    • Si vous choisissez OAuth, cliquez sur Authorize pour accéder au site Web GitHub. Si vous n'avez pas de session GitHub active, vous êtes invité à vous connecter. Cliquez sur Authorize Application pour autoriser IBM Cloud à accéder à votre compte GitHub. Si vous disposez d'une session GitHub active mais n'avez pas saisi votre mot de passe récemment, vous êtes invité à entrer votre mot de passe GitHub 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 GitHub à 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 GitHub pour en créer un. Vérifiez que votre jeton d'accès personnel dispose des droits repo, delete_repo, read:user et workflow.

  2. Si vous utilisez un repo sur votre propre serveur GitHub Enterprise, dans la section Intégrations configurables, cliquez sur 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 GitHub 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.

  3. Passez en revue les emplacements de référentiel cible par défaut pour les référentiels GitHub. 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 :

  1. Dans la console IBM Cloud, cliquez sur l'icône 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.

  2. Cliquez sur Ajouter un outil.

  3. Dans la section Intégrations d'outils, cliquez sur GitHub.

  4. Cliquez sur le serveur GitHub que vous souhaitez utiliser.

  5. Si vous disposez d'un référentiel GitHub ou GitHub Enterprise et désirez l'utiliser, cliquez sur Existant pour le type de référentiel et saisissez l'URL.

  6. Si vous souhaitez utiliser un nouveau référentiel GitHub ou GitHub Enterprise, 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 GitHub ou GitHub Enterprise, cliquez sur Cloner.

    c. Pour dévier un référentiel GitHub ou GitHub Enterprise afin de pouvoir participer aux modifications via des demandes d'extraction, cliquez sur Dévier.

  7. Si vous êtes un utilisateur GitHub.com avec un compte mis à niveau ou si vous avez sélectionné un serveur GitHub Enterprise et que vous voulez rendre un nouveau référentiel privé sur le serveur, cochez la case Rendre ce référentiel privé.

  8. Si vous souhaitez utiliser GitHub Issues pour le suivi des problèmes, cochez la case Activer GitHub Issues.

  9. 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.

  10. Cliquez sur Créer une intégration.

  11. À partir de la page Présentation de la chaîne d'outils, sur la carte Référentiels, cliquez sur GitHub ou le référentiel GitHub Enterprise avec lequel vous souhaitez travailler. Selon le référentiel que vous avez sélectionné, le site Web GitHub ou le référentiel GitHub Enterprise de votre société s'ouvre afin de vous permettre de visualiser le contenu du référentiel.

  12. Si vous avez activé GitHub Issues, cliquez sur GitHub Issues pour l'ouvrir. Vous pouvez utiliser cette instance de GitHub Issues pour l'ensemble de votre chaîne d'outils, même si cette dernière contient plusieurs référentiels GitHub Issues ou GitHub Enterprise.

    Si vous ne disposez pas d'un droit d'administrateur sur le référentiel que vous liez, 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 GitHub en utilisant l'API

L'intégration d'outils GitHub prend en charge les paramètres de configuration suivants que vous pouvez utiliser avec l'API HTTP de chaîne d'outils 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 githubconsolidated.

Paramètres d'intégration de l'outilGitHub
Paramètre Utilisation Type Argument Terraform Description
url_racine_API facultatif, pouvant être mis à jour Chaîne url_racine_API URL de la racine d'API pour le serveur GitHub.
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 Chaîne auth_type Définissez la méthode d'authentification à utiliser pour accéder au fournisseur Git.
auto_init facultatif, immuable, " Default: false Booléen auto_init Définissez cette valeur sur true pour initialiser ce référentiel avec un fichier Readme. Ce paramètre est utilisé uniquement lorsque vous créez un référentiel.
connexion_aveugle facultatif, actualisable, " Default: false Booléen connexion_aveugle La définition de cette valeur sur true signifie que le serveur n'est pas adressable sur l'Internet public. IBM Cloud ne peut pas valider les détails de connexion que vous fournissez. Certaines fonctionnalités qui nécessitent l'accès de l'API au serveur git seront désactivées. Le pipeline de distribution fonctionne uniquement à l'aide d'un agent privé disposant d'un accès réseau au serveur git.
branch_par_défaut facultatif, pouvant être mis à jour Chaîne branch_par_défaut Branche par défaut du référentiel Git.
enable_traceability facultatif, actualisable, " 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 github pour github.comou sur l'identificateur global unique d'un serveur GitHub Enterprise personnalisé.
has_issues facultatif, actualisable, " Default: true Booléen toolchain_issues_enabled Définissez cette valeur sur true pour activer les problèmes dans le référentiel GitHub et ajoutez une carte d'outil Problèmes à la chaîne d'outils. Définissez la valeur sur false pour supprimer la carte d'intégration d'outils de la chaîne d'outils. Ce paramètre n'a pas d'incidence sur l'activation ou non des problèmes sur le référentiel GitHub lui-même.
propriété_intégration facultatif, pouvant être mis à jour Chaîne propriété_intégration Sélectionnez l'utilisateur sous lequel les opérations Git sont effectuées.
owner_id facultatif, non modifiable Chaîne owner_id Utilisateur ou organisation GitHub 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, immuable, " Default: false 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 que vous clonez ou déviez 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 ID du référentiel GitHub.
repo_name facultatif, non modifiable Chaîne repo_name Nom du référentiel GitHub à 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 GitHub 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_racine facultatif, pouvant être mis à jour Chaîne url_racine URL racine du serveur. Par exemple, https://github.example.com
url_repo_source facultatif, non modifiable Chaîne url_repo_source URL du référentiel que vous déviez ou clonez. Ce paramètre est obligatoire lorsque vous déviez ou clonez un référentiel. Il n'est pas utilisé lorsque vous créez un référentiel ou un lien vers un référentiel existant.
title facultatif, pouvant être mis à jour Chaîne title Titre du serveur. Par exemple, Mon serveur GitHub Enterprise
url_jeton facultatif, pouvant être mis à jour Chaîne url_jeton URL de jeton utilisée pour l'autorisation avec le serveur GitHub.
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.