Utilisation des variables - 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.

Utilisation des variables

Certaines actions permettent de CodePipeline générer des variables. Pour utiliser des variables :

  • Vous affectez un espace de noms à une action pour rendre les variables qu'elle produit disponibles pour une configuration d'action en aval.

  • Vous configurez l'action en aval pour utiliser les variables générées par l'action.

    Vous pouvez afficher les détails de chaque exécution d'action pour voir les valeurs de chaque variable de sortie générée par l'action au moment de l'exécution.

Pour voir step-by-step des exemples d'utilisation de variables :

Configuration d'actions pour des variables

Lorsque vous ajoutez une action à votre pipeline, vous pouvez lui affecter un espace de noms et le configurer pour utiliser les variables des actions précédentes.

Configuration d'actions avec les variables (console)

Cet exemple crée un pipeline avec une action CodeCommit source et une action CodeBuild build. L' CodeBuild action est configurée pour consommer les variables produites par l' CodeCommit action.

Si l'espace de noms n'est pas spécifié, les variables ne sont pas disponibles pour référence dans la configuration de l'action. Lorsque vous utilisez la console pour créer un pipeline, l'espace de noms de chaque action est généré automatiquement.

Pour créer un pipeline avec des variables
  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Choisissez Créer un pipeline. Entrez un nom pour votre pipeline, puis choisissez Next (Suivant).

  3. Dans Source, dans Fournisseur, sélectionnez CodeCommit. Choisissez le CodeCommit référentiel et la branche pour l'action source, puis choisissez Next.

  4. Dans Build, dans Provider, choisissez CodeBuild. Choisissez le nom d'un projet de CodeBuild construction existant ou choisissez Créer un projet. Dans Créer un projet de construction, créez un projet de construction, puis choisissez Retourner à CodePipeline.

    Sous Environment variables (Variables d'environnement), choisissez Add environment variables (Ajouter des variables d'environnement). Par exemple, entrez l'ID d'exécution avec la syntaxe variable #{codepipeline.PipelineExecutionId} et l'ID de validation avec la syntaxe variable#{SourceVariables.CommitId}.

    Note

    Vous pouvez entrer la syntaxe de variable dans n'importe quel champ de configuration d'action de l'assistant.

  5. Choisissez Créer.

  6. Une fois le pipeline créé, vous pouvez afficher l'espace de noms créé par l'assistant. Sur le pipeline, choisissez l'icône de l'étape dont vous souhaitez afficher l'espace de noms. Dans cet exemple, l'espace de noms généré automatiquement de l'action source, SourceVariables, est affiché.

    Exemple : Écran des informations sur l'action
Pour modifier l'espace de noms d'une action existante
  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Choisissez le pipeline à modifier, puis choisissez Edit (Modifier). Pour l'étape source, choisissez Edit stage (Modifier l'étape). Ajoutez l' CodeCommit action.

  3. Dans Edit action (Modifier l'action), affichez le champ Variable namespace (Espace de noms de variable). Si l'action existante a été créée précédemment ou sans utiliser l'assistant, vous devez ajouter un espace de noms. Dans Variable namespace (Espace de noms de variable), entrez un nom d'espace de noms, puis choisissez Save (Enregistrer).

Pour afficher les variables de sortie
  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Une fois le pipeline créé et exécuté avec succès, vous pouvez afficher les variables sur la page Action execution details (Détails de l'exécution de l'action). Pour plus d’informations, veuillez consulter Affichage des variables (console).

Configuration d'actions pour les variables (interface de ligne de commande)

Lorsque vous utilisez la commande create-pipeline pour créer un pipeline ou la commande update-pipeline pour modifier un pipeline, vous pouvez référencer ou utiliser des variables dans la configuration d'une action.

Si l'espace de noms n'est pas spécifié, les variables produites par l'action ne peuvent être référencées dans des configurations d'action en aval.

Pour configurer une action avec un espace de noms
  1. Suivez les étapes décrites dans Créez un pipeline dans CodePipeline pour créer un pipeline à l'aide de l'interface de ligne de commande. Démarrez un fichier d'entrée pour fournir le paramètre --cli-input-json à la commande create-pipeline. Dans la structure du pipeline, ajoutez le paramètre namespace et spécifiez un nom, tel que SourceVariables.

    . . . { "inputArtifacts": [], "name": "Source", "region": "us-west-2", "namespace": "SourceVariables", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "CodeCommit" }, "outputArtifacts": [ . . .
  2. Enregistrez le fichier avec un nom tel que MyPipeline.json.

  3. Sur un terminal (Linux, macOS ou Unix) ou une invite de commande (Windows), exécutez la create-pipelinecommande et créez le pipeline.

    Utilisez le fichier que vous avez créé lorsque vous avez exécuté la commande create-pipeline. Par exemple :

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json
Pour configurer des actions en aval pour utiliser des variables
  1. Modifiez un fichier d'entrée pour fournir le paramètre --cli-input-json à la commande update-pipeline. Dans l'action en aval, ajoutez la variable à la configuration pour cette action. Une variable est constituée d'un espace de noms et d'une clé, séparés par un point. Par exemple, pour ajouter des variables pour l'ID d'exécution du pipeline et l'ID de validation source, spécifiez l'espace de noms codepipeline pour la variable #{codepipeline.PipelineExecutionId}. Spécifiez l'espace de noms SourceVariables pour la variable #{SourceVariables.CommitId}.

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifacts" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },
  2. Enregistrez le fichier avec un nom tel que MyPipeline.json.

  3. Sur un terminal (Linux, macOS ou Unix) ou une invite de commande (Windows), exécutez la create-pipelinecommande et créez le pipeline.

    Utilisez le fichier que vous avez créé lorsque vous avez exécuté la commande create-pipeline. Par exemple :

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json

Affichage des variables de sortie

Vous pouvez afficher les détails de l'exécution de l'action pour voir les variables de cette action, spécifiques à chaque exécution.

Affichage des variables (console)

Vous pouvez utiliser la console pour afficher les variables d'une action.

  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

    Les noms de tous les pipelines associés à votre AWS compte sont affichés.

  2. Dans Name, choisissez le nom du pipeline.

  3. Choisissez Afficher l'historique.

  4. Une fois le pipeline exécuté avec succès, vous pouvez afficher les variables produites par l'action source. Choisissez Afficher l'historique. Choisissez Source dans la liste d'actions pour l'exécution du pipeline afin d'afficher les détails de l'exécution de l' CodeCommit action. Dans l'écran des détails de l'action, affichez les variables sous Output variables (Variables de sortie).

    Exemple : Variables de sortie source
  5. Une fois le pipeline exécuté avec succès, vous pouvez afficher les variables utilisées par l'action de génération. Choisissez Afficher l'historique. Dans la liste des actions pour l'exécution du pipeline, choisissez Build pour afficher les détails de l'exécution de l' CodeBuild action. Sur la page de détails de l'action, affichez les variables sous Action configuration (Configuration de l'action). L'espace de noms généré automatiquement s'affiche.

    Exemple : Variables de configuration d'action

    Par défaut, Action configuration (Configuration d'action) affiche la syntaxe de la variable. Vous pouvez choisir Show resolved configuration (Afficher la configuration résolue) pour faire basculer la liste de manière à afficher les valeurs produites lors de l'exécution de l'action.

    Exemple : Variables de configuration d'action résolue

Affichage des variables (interface de ligne de commande)

Vous pouvez utiliser la commande list-action-executions pour afficher les variables d'une action.

  1. Utilisez la commande suivante :

    aws codepipeline list-action-executions

    La sortie affiche le paramètre outputVariables comme indiqué ici.

    "outputVariables": { "BranchName": "main", "CommitMessage": "Updated files for test", "AuthorDate": "2019-11-08T22:24:34Z", "CommitId": "d99b0083cc10EXAMPLE", "CommitterDate": "2019-11-08T22:24:34Z", "RepositoryName": "variables-repo" },
  2. Utilisez la commande suivante :

    aws codepipeline get-pipeline --name <pipeline-name>

    Dans la configuration de l' CodeBuild action, vous pouvez visualiser les variables :

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifact" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },

Exemple : Utiliser des variables dans les approbations manuelles

Lorsque vous spécifiez un espace de noms pour une action et que cette action produit des variables de sortie, vous pouvez ajouter une approbation manuelle qui affiche les variables dans le message d'approbation. Cet exemple montre comment ajouter une syntaxe de variable à un message d'approbation manuelle.

  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

    Les noms de tous les pipelines associés à votre AWS compte sont affichés. Choisissez le pipeline auquel vous souhaitez ajouter l'approbation.

  2. Pour modifier votre pipeline, choisissez Modifier. Ajoutez une approbation manuelle après l'action source. Dans Nom de l'action, entrez le nom de l'action d'approbation.

  3. Dans Fournisseur d'action, choisissez Approbation manuelle.

  4. Dans URL pour révision, ajoutez la syntaxe variable pour CommitId à votre CodeCommit URL. Assurez-vous d'utiliser l'espace de noms attribué à votre action source. Par exemple, la syntaxe de variable pour une CodeCommit action avec l'espace de noms par défaut SourceVariables est#{SourceVariables.CommitId}.

    Dans Commentaires, dansCommitMessage, entrez le message de validation :

    Please approve this change. Commit message: #{SourceVariables.CommitMessage}
  5. Une fois le pipeline exécuté avec succès, vous pouvez afficher les valeurs des variables dans le message d'approbation.

Exemple : utilisation d'une BranchName variable avec des variables d' CodeBuild environnement

Lorsque vous ajoutez une CodeBuild action à votre pipeline, vous pouvez utiliser des variables d' CodeBuild environnement pour référencer une variable de BranchName sortie issue d'une action source en amont. Avec une variable de sortie provenant d'une action CodePipeline, vous pouvez créer vos propres variables d' CodeBuildenvironnement à utiliser dans vos commandes de construction.

Cet exemple montre comment ajouter la syntaxe d'une variable de sortie d'une action GitHub source à une variable d' CodeBuild environnement. Dans cet exemple, la syntaxe de la variable de sortie représente la variable de sortie de l'action GitHub source pourBranchName. Une fois l'action exécutée avec succès, la variable est résolue pour afficher le nom de la GitHub branche.

  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon.com/codesuite/codepipeline/home.

    Les noms de tous les pipelines associés à votre AWS compte sont affichés. Choisissez le pipeline auquel vous souhaitez ajouter l'approbation.

  2. Pour modifier votre pipeline, choisissez Modifier. Sur la scène qui contient votre CodeBuild action, choisissez Modifier l'étape.

  3. Cliquez sur l'icône pour modifier votre CodeBuild action.

  4. Sur la page Modifier l'action, sous Variables d'environnement, entrez ce qui suit :

    • Dans Nom, entrez le nom de votre variable d'environnement.

    • Dans Value, entrez la syntaxe de la variable de sortie de votre pipeline, qui inclut l'espace de noms attribué à votre action source. Par exemple, la syntaxe de la variable de sortie pour une GitHub action avec l'espace de noms par défaut SourceVariables est#{SourceVariables.BranchName}.

    • Dans Type, choisissez Plaintext.

  5. Une fois le pipeline exécuté avec succès, vous pouvez voir comment la variable de sortie résolue est la valeur de la variable d'environnement. Sélectionnez l'une des méthodes suivantes :

    • CodePipeline console : choisissez votre pipeline, puis sélectionnez Historique. Choisissez l'exécution de pipeline la plus récente.

      • Sous Chronologie, choisissez le sélecteur pour Source. Il s'agit de l'action source qui génère les variables GitHub de sortie. Choisissez Afficher les détails de l'exécution. Sous Variables de sortie, consultez la liste des variables de sortie générées par cette action.

      • Sous Chronologie, choisissez le sélecteur pour Build. Il s'agit de l'action de génération qui spécifie les variables d' CodeBuild environnement de votre projet de génération. Choisissez Afficher les détails de l'exécution. Sous Configuration des actions, consultez vos variables d' CodeBuildenvironnement. Choisissez Afficher la configuration résolue. La valeur de votre variable d'environnement est la variable de BranchName sortie résolue de l'action GitHub source. Dans cet exemple, la valeur résolue estmain.

        Pour plus d’informations, consultez Affichage des variables (console).

    • CodeBuild console : Choisissez votre projet de build et choisissez le lien pour votre exécution de build. Sous Variables d'environnement, votre variable de sortie résolue est la valeur de la variable d' CodeBuild environnement. Dans cet exemple, la variable d'environnement Name est BranchName et la valeur est la variable de BranchName sortie résolue à partir de l'action GitHub source. Dans cet exemple, la valeur résolue estmain.