Tutoriel : utilisez les balises Git pour démarrer votre pipeline - 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.

Tutoriel : utilisez les balises Git pour démarrer votre pipeline

Dans ce didacticiel, vous allez créer un pipeline qui se connecte à votre GitHub dépôt où l'action source est configurée pour le type de déclencheur des balises Git. Lorsqu'une balise Git est créée lors d'un commit, votre pipeline démarre. Cet exemple montre comment créer un pipeline qui permet de filtrer les balises en fonction de la syntaxe du nom de la balise. Pour plus d'informations sur le filtrage à l'aide de modèles globulaires, consultezUtilisation de modèles globulaires dans la syntaxe.

Ce didacticiel se connecte à l' GitHub aide du type CodeStarSourceConnection d'action.

Note

Cette fonctionnalité n'est pas disponible dans les régions Asie-Pacifique (Hong Kong), Afrique (Le Cap), Moyen-Orient (Bahreïn) ou Europe (Zurich). 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.

Prérequis

Avant de commencer, vous devez exécuter les opérations suivantes :

  • Créez un GitHub référentiel avec votre GitHub compte.

  • Préparez vos GitHub informations d'identification. Lorsque vous utilisez le AWS Management Console pour établir une connexion, il vous est demandé de vous connecter avec vos GitHub informations d'identification.

Étape 1 : Ouvrez CloudShell et clonez votre dépôt

Vous pouvez utiliser une interface en ligne de commande pour cloner votre dépôt, effectuer des validations et ajouter des balises. Ce didacticiel lance une CloudShell instance pour l'interface de ligne de commande.

  1. Connectez-vous au AWS Management Console.

  2. Dans la barre de navigation supérieure, choisissez l' AWS icône. La page principale des AWS Management Console écrans.

  3. Dans la barre de navigation supérieure, choisissez l' AWS CloudShell icône. CloudShell ouvre. Patientez pendant que l' CloudShell environnement est créé.

    Note

    Si l' CloudShell icône ne s'affiche pas, assurez-vous que vous vous trouvez dans une région prise en charge par CloudShell. Ce didacticiel part du principe que vous vous trouvez dans la région de l'ouest des États-Unis (Oregon).

  4. Dans GitHub, accédez à votre référentiel. Choisissez Code, puis HTTPS. Copiez le chemin. L'adresse pour cloner votre référentiel Git est copiée dans votre presse-papiers.

  5. Exécutez la commande suivante pour cloner le référentiel.

    git clone https://github.com/<account>/MyGitHubRepo.git
  6. Entrez votre GitHub compte Username et Password lorsque vous y êtes invité. Pour la Password saisie, vous devez utiliser un jeton créé par l'utilisateur plutôt que le mot de passe de votre compte.

Étape 2 : Création d'un pipeline à déclencher sur les balises Git

Dans cette section, vous créez un pipeline avec les actions suivantes :

  • Un stage source avec une connexion à votre GitHub référentiel et une action.

  • Une phase de construction avec une action de AWS CodeBuild construction.

Pour créer un pipeline avec l'assistant
  1. Connectez-vous à la CodePipeline console à l'adresse https://console.aws.amazon.com/codepipeline/.

  2. Sur la page Bienvenue, Démarrez ou Pipelines, choisissez Créer un pipeline.

  3. Dans l'Étape 1 : Choisir les paramètres d'un pipeline, dans Nom du pipeline, saisissez MyGitHubTagsPipeline.

  4. Dans Type de pipeline, conservez la sélection par défaut à V2. Les types de pipelines diffèrent en termes de caractéristiques et de prix. Pour plus d’informations, consultez Types de pipelines.

  5. Dans Service role (Rôle de service), choisissez New service role (Nouveau rôle de service).

    Note

    Si vous choisissez plutôt d'utiliser votre rôle de CodePipeline service existant, assurez-vous d'avoir ajouté l'autorisation codestar-connections:UseConnection IAM à votre politique de rôle de service. Pour obtenir des instructions relatives au rôle de CodePipeline service, voir Ajouter des autorisations au rôle CodePipeline de service.

  6. Sous Paramètres avancés, conservez les valeurs par défaut. Dans le magasin d'artefacts choisissez Default location (Emplacement par défaut) pour utiliser le magasin d'artefacts par défaut, tel que le compartiment d'artefacts Amazon S3 désigné par défaut, pour votre pipeline dans la région que vous avez sélectionnée pour ce dernier.

    Note

    Il ne s'agit pas du compartiment source de votre code source. Il s'agit du magasin d'artefacts pour votre pipeline. Un magasin d'artefacts distinct, tel qu'un compartiment S3, est nécessaire pour chaque pipeline.

    Choisissez Suivant.

  7. Sur la page Étape 2 : Ajouter une étape source, ajoutez un étape source :

    1. Dans Source provider, sélectionnez GitHub (Version 2).

    2. Sous Connexion, choisissez une connexion existante ou créez-en une nouvelle. Pour créer ou gérer une connexion pour votre action GitHub source, consultezGitHub connexions.

    3. Dans Nom du dépôt, choisissez le nom de votre GitHub dépôt.

    4. Sous Pipeline trigger, choisissez Git tags.

      Dans le champ Inclure, entrezrelease*.

      Dans Branche par défaut, choisissez la branche que vous souhaitez spécifier lorsque le pipeline est démarré manuellement ou avec un événement source autre qu'une balise Git. Si la source de la modification n'est pas le déclencheur ou si une exécution de pipeline a été lancée manuellement, la modification utilisée sera le commit HEAD de la branche par défaut.

      Important

      Les pipelines qui commencent par des balises Git de type déclencheur seront configurés pour les événements WebhookV2 et n'utiliseront pas l'événement Webhook (détection des modifications sur tous les événements push) pour démarrer le pipeline.

    Choisissez Suivant.

  8. Dans le champ Ajouter une étape de génération, ajoutez une étape de génération :

    1. Dans le champ Fournisseur de génération, choisissez AWS CodeBuild. Acceptez la région du pipeline comme Région par défaut.

    2. Sélectionnez Create a project (Créer un projet).

    3. Dans Nom du projet, saisissez un nom pour ce projet de génération.

    4. Dans le champ Image d'environnement, choisissez Image gérée. Pour Système d'exploitation, choisissez Ubuntu.

    5. Pour Runtime (Exécution), sélectionnez Standard. Pour Image, choisissez aws/codebuild/standard:5.0.

    6. Pour Rôle de service, choisissez Nouveau rôle de service.

      Note

      Notez le nom de votre rôle CodeBuild de service. Vous aurez besoin du nom du rôle pour la dernière étape de ce didacticiel.

    7. Sous Buildspec, pour Build specifications (Spécifications de génération), choisissez Insert build commands (Insérer des commandes de génération). Choisissez Passer à l'éditeur, puis collez le texte suivant sous Commandes de génération.

      version: 0.2 #env: #variables: # key: "value" # key: "value" #parameter-store: # key: "value" # key: "value" #git-credential-helper: yes phases: install: #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions. #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails. runtime-versions: nodejs: 12 #commands: # - command # - command #pre_build: #commands: # - command # - command build: commands: - #post_build: #commands: # - command # - command artifacts: files: - '*' # - location name: $(date +%Y-%m-%d) #discard-paths: yes #base-directory: location #cache: #paths: # - paths
    8. Choisissez Continuer vers CodePipeline. Cela revient à la CodePipeline console et crée un CodeBuild projet qui utilise vos commandes de construction pour la configuration. Le projet de construction utilise un rôle de service pour gérer les AWS service autorisations. Cette étape peut prendre quelques minutes.

    9. Choisissez Suivant.

  9. Sur la page Step 4: Add deploy stage (Étape 4 : Ajouter une étape de déploiement), choisissez Skip deploy stage (Ignorer l'étape de déploiement), puis acceptez le message d'avertissement en choisissant à nouveau Skip (Ignorer). Choisissez Suivant.

  10. Dans Étape 5 : Vérification, choisissez Créer un pipeline.

Étape 3 : Marquez vos commits pour publication

Après avoir créé votre pipeline et spécifié les balises Git, vous pouvez étiqueter les validations dans votre GitHub dépôt. Au cours de ces étapes, vous allez étiqueter un commit avec le release-1 tag. Chaque commit dans un dépôt Git doit avoir une balise Git unique. Lorsque vous choisissez le commit et que vous le balisez, cela vous permet d'intégrer les modifications provenant de différentes branches dans le déploiement de votre pipeline. Notez que le nom du tag release ne s'applique pas au concept de version dans GitHub.

  1. Référencez les identifiants de validation copiés que vous souhaitez étiqueter. Pour afficher les validations dans chaque branche, dans le CloudShell terminal, entrez la commande suivante pour capturer les identifiants de validation que vous souhaitez étiqueter :

    git log
  2. Dans le CloudShell terminal, entrez la commande pour étiqueter votre commit et le renvoyer à l'origine. Une fois que vous avez tagué votre commit, vous utilisez la commande git push pour transférer le tag vers l'origine. Dans l'exemple suivant, entrez la commande suivante pour utiliser la release-1 balise pour le deuxième commit avec ID49366bd. Cette balise sera filtrée par le filtre de release* balise de pipeline et démarrera le pipeline.

    git tag release-1 49366bd
    git push origin release-1
    Utilisez le terminal pour exécuter la commande permettant de baliser un commit.

Étape 4 : publier les modifications et consulter les journaux

  1. Une fois le pipeline exécuté avec succès, lors de la phase de construction réussie, choisissez Afficher le journal.

    Sous Logs, consultez le résultat de la CodeBuild compilation. Les commandes produisent la valeur de la variable saisie.

  2. Sur la page Historique, consultez la colonne Déclencheurs. Afficher le type de déclencheur GitTag : release-1.