Mettre à jour une action source de GitHub version 1 vers une action source de GitHub version 2 - AWS CodePipeline

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mettre à jour une action source de GitHub version 1 vers une action source de GitHub version 2

Dans AWS CodePipeline, deux versions de l'action GitHub source sont prises en charge :

Note

Les connexions ne sont pas disponibles dans les régions Asie-Pacifique (Hong Kong), Asie-Pacifique (Hyderabad), Asie-Pacifique (Jakarta), Asie-Pacifique (Melbourne), Asie-Pacifique (Osaka), Afrique (Le Cap), Moyen-Orient (Bahreïn), Moyen-Orient (Émirats arabes unis), Europe (Espagne), Europe (Zurich), Israël (Tel Aviv) ou AWS GovCloud (USA Ouest). Pour faire référence aux autres actions disponibles, voirIntégrations de produits et de services avec CodePipeline. Pour les considérations relatives à cette action dans la région Europe (Milan), voir la note dansCodeStarSourceConnection pour Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com et les actions GitLab autogérées.

L'utilisation de l'action de la GitHub version 2 au lieu de l'action de la GitHub version 1 présente des avantages importants :

  • Avec les connexions, vous CodePipeline n'avez plus besoin d'applications OAuth ni de jetons d'accès personnels pour accéder à votre référentiel. Lorsque vous créez une connexion, vous installez une GitHub application qui gère l'authentification dans votre GitHub référentiel et autorise les autorisations au niveau de l'organisation. Vous devez autoriser les jetons OAuth en tant qu'utilisateur pour accéder au référentiel. Pour plus d'informations sur l' GitHub accès basé sur OAuth par rapport à l' GitHub accès basé sur les applications, consultez. https://docs.github.com/en/developers/apps/differences-between-github-apps-and-oauth-apps

  • Lorsque vous gérez les actions de la GitHub version 2 dans la CLI CloudFormation, vous n'avez plus besoin de stocker votre jeton d'accès personnel en tant que secret dans Secrets Manager. Il n'est plus nécessaire de référencer dynamiquement le secret stocké dans la configuration de votre CodePipeline action. Vous ajoutez plutôt l'ARN de connexion à votre configuration d'action. Pour un exemple de configuration d'action, voirCodeStarSourceConnection pour Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com et les actions GitLab autogérées.

  • Lorsque vous créez une ressource de connexion à utiliser avec votre action de GitHub version 2 CodePipeline, vous pouvez utiliser la même ressource de connexion pour associer d'autres services pris en charge, tels que CodeGuru Reviewer, à votre référentiel.

  • Dans la version 2 de Github, vous pouvez cloner des référentiels pour accéder aux métadonnées git lors d' CodeBuild actions ultérieures, tandis que dans la version 1 de Github, vous ne pouvez télécharger que le code source.

  • Un administrateur installe l'application pour les référentiels de votre organisation. Vous n'avez plus à suivre les jetons OAuth qui dépendent de la personne qui les a créés.

Toutes les applications installées dans une organisation ont accès au même ensemble de référentiels. Pour modifier les personnes autorisées à accéder à chaque référentiel, modifiez la politique IAM pour chaque connexion. Pour un exemple, voir Exemple : une politique limitée pour l'utilisation de connexions avec un référentiel spécifié.

Vous pouvez suivre les étapes décrites dans cette rubrique pour supprimer votre action source de GitHub version 1 et ajouter une action source de GitHub version 2 depuis la CodePipeline console.

Étape 1 : remplacer votre GitHub action de version 1

Utilisez la page d'édition du pipeline pour remplacer votre GitHub action de version 1 par une GitHub action de version 2.

Pour remplacer votre GitHub action de version 1
  1. Connectez-vous à la CodePipeline console.

  2. Choisissez votre pipeline, puis cliquez sur Modifier. Choisissez l'étape Modifier sur votre scène source. Un message s'affiche pour vous recommander de mettre à jour votre action.

  3. Dans Action provider, sélectionnez GitHub (Version 2).

  4. Effectuez l’une des actions suivantes :

    • Sous Connexion, si vous n'avez pas encore créé de connexion avec votre fournisseur, choisissez Se connecter à GitHub. Passez à l'étape 2 : créer une connexion à GitHub.

    • Sous Connexion, si vous avez déjà créé une connexion avec votre fournisseur, choisissez-la. Passez à l'étape 3 : Enregistrer l'action source pour votre connexion.

Étape 2 : créer une connexion avec GitHub

Une fois que vous avez choisi de créer la connexion, la GitHub page Connect to s'affiche.

Pour créer une connexion avec GitHub
  1. Dans les paramètres de GitHub connexion, le nom de votre connexion est affiché dans Nom de la connexion.

    Sous GitHub Applications, choisissez une installation d'application ou choisissez Installer une nouvelle application pour en créer une.

    Note

    Installez une application pour toutes vos connexions à un fournisseur particulier. Si vous avez déjà installé l' GitHub application, choisissez-la et ignorez cette étape.

  2. Si la page d'autorisation GitHub s'affiche, connectez-vous avec vos informations d'identification, puis choisissez de continuer.

  3. Sur la page d'installation de l'application, un message indique que l' AWS CodeStar application essaie de se connecter à votre GitHub compte.

    Note

    Vous n'installez l'application qu'une seule fois pour chaque GitHub compte. Si vous avez déjà installé l'application, vous pouvez choisir Configure (Configurer) pour passer à une page de modification pour l'installation de votre application, ou vous pouvez utiliser le bouton Précédent pour revenir à la console.

  4. Sur la AWS CodeStar page Installer, choisissez Installer.

  5. Sur la GitHub page Connect to, l'ID de connexion de votre nouvelle installation s'affiche. Choisissez Se connecter.

Étape 3 : Enregistrez votre action GitHub source

Effectuez vos mises à jour sur la page Modifier l'action pour enregistrer votre nouvelle action source.

Pour enregistrer votre action GitHub source
  1. Dans Référentiel, entrez le nom de votre référentiel tiers. Dans Branche, entrez la branche dans laquelle vous souhaitez que votre pipeline détecte les modifications de source.

    Note

    Dans Repository, tapez owner-name/repository-name comme indiqué dans cet exemple :

    my-account/my-repository
  2. Dans Format d'artefact de sortie, choisissez le format de vos artefacts.

    • Pour stocker les artefacts de sortie de l' GitHub action à l'aide de la méthode par défaut, choisissez CodePipeline par défaut. L'action accède aux fichiers depuis le GitHub référentiel et stocke les artefacts dans un fichier ZIP dans le magasin d'artefacts du pipeline.

    • Pour stocker un fichier JSON contenant une référence d'URL au référentiel afin que les actions en aval puissent exécuter directement les commandes Git, choisissez Full clone (Clone complet). Cette option ne peut être utilisée que par des actions CodeBuild en aval.

      Si vous choisissez cette option, vous devrez mettre à jour les autorisations associées à votre rôle de service de CodeBuild projet, comme indiqué dansAjoutez CodeBuild GitClone des autorisations pour les connexions à Bitbucket GitHub, GitHub Enterprise Server ou .com GitLab. Pour consulter un didacticiel expliquant comment utiliser l'option de clonage complet, voirTutoriel : Utiliser un clone complet avec une source de GitHub pipeline.

  3. Dans Artefacts de sortie, vous pouvez conserver le nom de l'artefact de sortie pour cette action, par exempleSourceArtifact. Choisissez OK pour fermer la page d'action Modifier.

  4. Choisissez OK pour fermer la page d'édition de l'étape. Choisissez Enregistrer pour fermer la page d'édition du pipeline.