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 : Utiliser les balises Git pour démarrer votre pipeline
Dans ce didacticiel, vous allez créer un pipeline qui se connecte à votre GitHub référentiel dans lequel 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.
Important
Dans le cadre de la création d'un pipeline, un compartiment d'artefacts S3 fourni par le client sera utilisé par CodePipeline les artefacts. (Ce compartiment est différent du compartiment utilisé pour une action source S3.) Si le compartiment d'artefacts S3 se trouve dans un compte différent de celui de votre pipeline, assurez-vous que le compartiment d'artefacts S3 appartient Comptes AWS à une société sûre et fiable.
Ce didacticiel se connecte GitHub via le 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 consulter les autres actions disponibles, consultezIntégrations de produits et de services avec CodePipeline. Pour les considérations relatives à cette action dans la région Europe (Milan), voir la note figurant dansCodeStarSourceConnection pour Bitbucket Cloud GitHub, GitHub Enterprise Server et GitLab.com les actions GitLab autogérées.
Rubriques
Conditions préalables
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 Console de gestion AWS 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 de ligne de commande pour cloner votre référentiel, effectuer des commits et ajouter des balises. Ce didacticiel lance une CloudShell instance pour l'interface de ligne de commande.
-
Connectez-vous au Console de gestion AWS.
-
Dans la barre de navigation supérieure, choisissez l' AWS icône. La page principale des Console de gestion AWS écrans.
-
Dans la barre de navigation supérieure, choisissez l' AWS CloudShell icône. CloudShell ouvre. Attendez que l' CloudShell environnement soit créé.
Note
Si vous ne voyez pas l' CloudShell icône, 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 ouest des États-Unis (Oregon).
-
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.
-
Exécutez la commande suivante pour cloner le référentiel.
git clone https://github.com/<account>/MyGitHubRepo.git -
Entrez votre GitHub compte
UsernameetPasswordlorsque vous y êtes invité. Pour laPasswordsaisie, 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 :
-
Stage source avec connexion à votre GitHub référentiel et à votre action.
-
Une étape de construction avec une action de AWS CodeBuild construction.
Pour créer un pipeline avec l'assistant
-
Connectez-vous à la CodePipeline console à l'adresse https://console.aws.amazon.com/codepipeline/
. -
Sur la page Bienvenue, Démarrez ou Pipelines, choisissez Créer un pipeline.
-
Sur la page Étape 1 : Choisissez l'option de création, sous Options de création, choisissez l'option Créer un pipeline personnalisé. Choisissez Suivant.
-
À l'étape 2 : choisissez les paramètres du pipeline, dans Nom du pipeline, entrez
MyGitHubTagsPipeline. -
Dans Type de pipeline, conservez la sélection par défaut sur V2. Les types de pipelines diffèrent en termes de caractéristiques et de prix. Pour de plus amples informations, veuillez consulter Types de canalisations.
-
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:UseConnectionIAM à 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. -
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.
-
Sur la page Étape 3 : Ajouter une étape source, ajoutez une étape source :
-
Dans Source provider, choisissez GitHub (via GitHub App).
-
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.
-
Dans Nom du référentiel, choisissez le nom de votre référentiel GitHub.
-
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 qui n'est pas une balise Git. Si la source de la modification n'est pas le déclencheur ou si l'exécution d'un pipeline a été démarrée manuellement, la modification utilisée sera le commit HEAD de la branche par défaut.
-
Sous Événements Webhook, dans Type de filtre, choisissez Tags.
Dans le champ Tags ou modèles, saisissez
release*.Important
Les pipelines qui commencent par un type de déclencheur de balises Git 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.
-
-
Dans le champ Ajouter une étape de génération, ajoutez une étape de génération :
-
Dans le champ Fournisseur de génération, choisissez AWS CodeBuild. Acceptez la région du pipeline comme Région par défaut.
-
Sélectionnez Create a project (Créer un projet).
-
Dans Nom du projet, saisissez un nom pour ce projet de génération.
-
Dans le champ Image d'environnement, choisissez Image gérée. Pour Système d'exploitation, choisissez Ubuntu.
-
Pour Runtime (Exécution), sélectionnez Standard. Pour Image, choisissez aws/codebuild /standard:5.0.
-
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.
-
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 et collez ce qui suit sous Commandes de création.
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 -
Choisissez Continuer vers CodePipeline. Cela revient à la CodePipeline console et crée un CodeBuild projet qui utilise vos commandes de build pour la configuration. Le projet de génération utilise un rôle de service pour gérer les Service AWS autorisations. Cette étape peut prendre quelques minutes.
-
Choisissez Suivant.
-
-
À l'étape 5 : Ajouter une phase de test, choisissez Ignorer la phase de test, puis acceptez le message d'avertissement en choisissant de nouveau Ignorer.
Choisissez Suivant.
-
Sur la page Étape 6 : Ajouter une phase de déploiement, choisissez Ignorer l'étape de déploiement, puis acceptez le message d'avertissement en choisissant de nouveau Ignorer. Choisissez Suivant.
-
À l'étape 7 : Révision, choisissez Créer un pipeline.
Étape 3 : Marquez vos commits en vue de leur publication
Après avoir créé votre pipeline et spécifié des balises Git, vous pouvez baliser les commits dans votre GitHub référentiel. Au cours de ces étapes, vous allez baliser un commit avec le release-1 tag. Chaque commit d'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 de la balise release ne s'applique pas au concept de version dans GitHub.
-
Faites référence aux ID de validation copiés que vous souhaitez baliser. Pour afficher les validations dans chaque branche, dans le CloudShell terminal, entrez la commande suivante pour capturer les ID de validation que vous souhaitez baliser :
git log -
Dans le CloudShell terminal, entrez la commande pour baliser votre commit et le transmettre à l'origine. Après avoir marqué votre commit, vous utilisez la commande git push pour envoyer le tag vers l'origine. Dans l'exemple suivant, entrez la commande suivante pour utiliser la
release-1balise pour le deuxième commit avec ID49366bd. Cette balise sera filtrée par le filtre derelease*balises du pipeline et démarrera le pipeline.git tag release-1 49366bdgit push origin release-1
Étape 4 : publier les modifications et afficher les journaux
-
Une fois le pipeline exécuté avec succès, lors de la phase de création réussie, choisissez Afficher le journal.
Sous Journaux, affichez le résultat de la CodeBuild compilation. Les commandes génèrent la valeur de la variable saisie.
-
Sur la page Historique, consultez la colonne Déclencheurs. Afficher le type de déclencheur GitTag : release-1.