Configuration des conditions d'une étape - 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.

Configuration des conditions d'une étape

Vous pouvez spécifier une condition pour une étape, par exemple vérifier la présence d'une variable spécifique dans l'exécution du pipeline, puis obtenir un résultat pour cette condition, par exemple en sautant l'étape ou en échouant à l'étape. Un pipeline peut être configuré pour vérifier les conditions de l'étape pendant l'exécution, en spécifiant les vérifications pour une étape, puis en spécifiant comment l'étape doit se poursuivre lorsque certaines conditions sont remplies. Les conditions contiennent une ou plusieurs règles disponibles dans une liste de règles dans CodePipeline. Si toutes les règles d'une condition sont respectées, la condition est remplie. Vous pouvez configurer les conditions de telle sorte que lorsque les critères ne sont pas remplis, le résultat spécifié s'active.

Chaque condition possède un ensemble de règles qui est un ensemble ordonné de règles évaluées ensemble. Par conséquent, si une règle échoue dans la condition, c'est la condition qui échoue. Vous pouvez annuler les conditions des règles lors de l'exécution du pipeline.

Les conditions sont utilisées pour des types d'expressions spécifiques et chacune dispose d'options spécifiques pour les résultats disponibles, comme suit :

  • Entrée - Les conditions à remplir pour effectuer des vérifications qui, si elles sont remplies, permettent d'accéder à une étape. Les règles sont activées avec les options de résultat suivantes : Échec ou Ignorer

  • En cas d'échec : conditions permettant de vérifier l'étape en cas d'échec. Les règles sont activées avec l'option de résultat suivante : Annulation

  • En cas de réussite : conditions à remplir pour vérifier la réussite de l'étape. Les règles sont activées avec les options de résultat suivantes : Annulation ou échec

Les conditions sont soutenues par un ensemble de règles pour chaque type de condition.

Pour chaque type de condition, des actions spécifiques sont définies par la condition. L'action est le résultat de la réussite ou de l'échec de la vérification de condition. Par exemple, la condition d'entrée (condition d'entrée) rencontre une alarme (règle), puis la vérification est réussie et le résultat (action) est que l'entrée sur scène est bloquée.

Vous pouvez également utiliser la AWS CodePipeline console ou le AWS CLI pour revenir en arrière ou réessayer manuellement une étape ou les actions d'une étape. Consultez Configuration des conditions d'une étape.

Cas d'utilisation des conditions scéniques

Les conditions d'étape ont de nombreux cas d'utilisation pour configurer la sécurité des rejets et des modifications dans les pipelines. Voici des exemples de cas d'utilisation pour les conditions de scène.

  • Utilisez une condition d'entrée pour définir une condition qui vérifiera l'état de l' CloudWatchalarme, qui bloquera ensuite une modification si l'environnement de production n'est pas en bon état.

  • Utilisez une condition d'entrée avec un temps d'attente de 60 pour définir une condition à évaluer lorsque toutes les actions d'une étape sont terminées avec succès, puis annulez les modifications si une CloudWatch alarme passe en état ALARM dans les 60 minutes.

  • Utilisez une condition En cas de réussite pour définir une condition afin que, lorsque l'étape se termine avec succès, la règle vérifie si l'heure actuelle est dans la fenêtre de déploiement, puis se déploie si la règle aboutit.

Considérations relatives aux résultats configurés en fonction des conditions de scène

Les considérations relatives aux conditions de scène sont les suivantes :

  • Vous ne pouvez pas utiliser la nouvelle tentative automatique d'étape avec les conditions OnFailure.

  • Lors de la configuration d'une condition avec un résultat de restauration, l'étape ne peut revenir à une exécution précédente que si elle est disponible dans la version actuelle de la structure du pipeline.

  • Lorsque vous configurez une condition avec un résultat d'annulation, vous ne pouvez pas revenir à un ID d'exécution cible correspondant à un type d'exécution de restauration.

  • Pour les conditions d'entrée qui utilisent le résultat Ignorer pour sauter l'étape en cas d'échec de la condition, seules les VariableCheck règles LambdaInvoke et sont prises en charge.

  • Vous ne pouvez pas effectuer une nouvelle tentative d'étape manuelle sur une étape dont le statut est ignoré.

  • Vous ne pouvez pas revenir manuellement à une étape dont le statut est ignoré.

  • Vous ne pouvez pas annuler une condition si celle-ci est configurée avec un résultat Ignorer.

  • À l'exception des résultats Skip, vous pouvez annuler une condition d'étape lorsque vous démarrez l'exécution d'un pipeline. Pour une condition d'étape dans laquelle une dérogation est activée, l'exécution s'effectuera comme indiqué dans le tableau suivant.

  • Type Résultat configuré en cas de défaillance État de la scène Comportement de remplacement
    Entry Fail En cours L'étape se poursuit.
    Entry Ignorer Ignoré Non applicable.

    OnFailure

    Restauration Échec L'étape est ratée.
    OnSuccess Restauration Réussi L'étape se poursuit.

    OnSuccess

    Fail Échec L'étape se poursuit.

Considérations relatives aux règles configurées pour les conditions de scène

Les considérations relatives aux règles disponibles pour les conditions de scène sont les suivantes :

  • Pour la LambdaInvoke règle, vous devez d'abord configurer la fonction Lambda à utiliser dans la règle. Assurez-vous que l'ARN de la fonction Lambda est prêt à fournir lorsque vous configurez la règle.

  • Pour la CloudWatchAlarm règle, vous devez d'abord configurer l'événement CloudWatch Events à utiliser dans la règle. Préparez l'ARN de l'événement à fournir lorsque vous configurez la règle.

Création de conditions d'entrée

Vous pouvez configurer les conditions d'entrée pour une étape à l'aide de la console ou de la CLI. Vous allez configurer les règles et les résultats correspondants pour chaque condition. Pour obtenir un résultat de restauration, le pipeline ne peut revenir à une exécution précédente que si celle-ci a été démarrée dans la version actuelle de la structure du pipeline.

Les étapes fournissent un exemple de condition d'entrée qui utilise une règle de surveillance.

Pour plus d'informations, consultez Condition RuleTypeId, et RuleExecutiondans le guide de l'CodePipeline API.

Création de conditions d'entrée : exemple de CloudWatchAlarm règle (console)

Vous pouvez configurer les conditions d'entrée pour une étape, ainsi que les règles et les résultats que vous souhaitez que l'étape exécute lorsque les conditions sont remplies.

Configuration d'une condition d'entrée (console)
  1. Remplissez tous les prérequis, tels que la création de la ressource et de l'ARN pour une règle dans laquelle une ressource est fournie, telle que le AWS CloudWatchAlarm.

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

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  3. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  4. Sur la page des détails du pipeline, choisissez Edit.

  5. Sur la page Modifier, pour l'action que vous souhaitez modifier, choisissez Modifier l'étape.

  6. Choisissez Ajouter une condition de saisie. La carte des conditions d'entrée avant l'étape s'affiche avec l'option Échec disponible pour cette condition.

  7. Choisissez Ajouter une règle, puis effectuez les opérations suivantes.

    1. Dans Nom de la règle, entrez le nom de votre règle. Pour cet exemple, entrez MyAlarmRule.

    2. Dans Fournisseur de règles, choisissez le fournisseur de règles préconfiguré à ajouter à votre condition. Pour cet exemple, choisissez AWS CloudWatchAlarm, puis effectuez les étapes suivantes.

    3. Dans Région, choisissez la région correspondant à votre état ou conservez la région par défaut.

    4. Dans Nom de l'alarme, choisissez la CloudWatch ressource à utiliser pour la règle. Vous devez déjà avoir créé la ressource dans votre compte.

    5. (Facultatif) Dans Temps d'attente, entrez le temps CodePipeline d'attente si l'alarme est en état ALARM lors de sa première évaluation. Si l'alarme est OK lorsque la règle est vérifiée pour la première fois, la règle aboutira immédiatement.

    6. (Facultatif) Entrez les états d'alarme spécifiques à surveiller et entrez l'ARN du rôle le cas échéant.

    7. Lorsque vous avez terminé de modifier la scène, choisissez OK. Sur la page de modification du pipeline, choisissez Enregistrer.

  8. Après l'exécution, visualisez le résultat.

Création de conditions d'entrée avec ignorer le résultat et VariableCheck la règle (console)

Vous pouvez configurer les conditions d'entrée pour une étape de telle sorte que si la condition d'entrée n'est pas remplie, l'étape soit ignorée. Si la condition échoue, le résultat s'active et l'étape est ignorée. Lorsqu'une étape est ignorée, le statut de l'étape est ignoré et le statut de l'action est Non exécutée. Pour les considérations relatives aux conditions de scène associées aux résultats Skip, voirConsidérations relatives aux résultats configurés en fonction des conditions de scène.

Dans l'exemple suivant, la règle de vérification des variables détecte que la valeur ne correspond pas et l'étape de construction est ignorée.

Configuration d'une condition d'entrée avec un résultat Ignorer (console)
  1. Remplissez tous les prérequis, tels que la création de la ressource et de l'ARN pour une règle dans laquelle une ressource est fournie, telle que le AWS CloudWatchAlarm.

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

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  3. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  4. Sur la page des détails du pipeline, choisissez Edit.

  5. Sur la page Modifier, pour l'action que vous souhaitez modifier, choisissez Modifier l'étape.

  6. Choisissez Ajouter une condition de saisie, puis choisissez Ignorer comme résultat.

  7. Choisissez Ajouter une règle, puis effectuez les opérations suivantes.

    1. Dans Nom de la règle, entrez le nom de votre règle. Pour cet exemple, entrez MyAlarmRule.

    2. Dans Fournisseur de règles, choisissez le fournisseur de règles préconfiguré à ajouter à votre condition. Pour cet exemple, choisissez VariableCheck, puis effectuez les étapes suivantes.

      Exemple de processus de publication utilisant CodePipeline.
    3. Dans Région, choisissez la région correspondant à votre état ou conservez la région par défaut.

    4. Dans Variable, choisissez la variable à comparer, par exemple #{SourceVariables.FullRepositoryName} pour un pipeline comportant une action source GitHub (via GitHub App). Entrez le nom du référentiel et choisissez l'opérateur, tel que Equals.

    5. Lorsque vous avez terminé de modifier la scène, choisissez OK. Sur la page de modification du pipeline, choisissez Enregistrer.

  8. Après l'exécution, visualisez le résultat.

    Exemple de processus de publication utilisant CodePipeline.
  9. Pour consulter les détails, choisissez Réviser. Le détail de l'exemple suivant montre que le résultat configuré pour la condition est Skip, qui ne peut pas être remplacé. Le statut de la règle est Échoué car la condition n'est pas remplie.

    Exemple de page de détails de la condition montrant la condition de résultat Ignorer dans CodePipeline.

Création de conditions d'entrée (CLI)

AWS CLI Pour configurer une condition d'entrée, utilisez les commandes pour créer ou mettre à jour un pipeline, comme indiqué dans Création d'un pipeline, d'étapes et d'actions etModifier un pipeline dans CodePipeline.

Configuration de la condition et de la ou des règles (CLI)
  • Ouvrez un terminal (Linux, macOS ou Unix) ou une invite de commande (Windows) et utilisez le AWS CLI pour exécuter la update-pipeline commande, en spécifiant la condition de défaillance dans la structure du pipeline. L'exemple suivant configure une condition d'entrée pour un stage nommé Deploy :

    { "name": "Deploy", "actions": [ { "name": "Deploy", "actionTypeId": { "category": "Deploy", "owner": "AWS", "provider": "S3", "version": "1" }, "runOrder": 1, "configuration": { "BucketName": "MyBucket", "Extract": "false", "ObjectKey": "object.xml" }, "outputArtifacts": [], "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-east-1", "namespace": "DeployVariables" } ], "beforeEntry": { "conditions": [ { "result": "FAIL", "rules": [ { "name": "MyAlarmRule", "ruleTypeId": { "category": "Rule", "owner": "AWS", "provider": "CloudWatchAlarm", "version": "1" }, "configuration": { "AlarmName": "CWAlarm", "WaitTime": "1" }, "inputArtifacts": [], "region": "us-east-1" } ] } ] } }

    Pour plus d'informations sur la configuration des conditions de réussite pour l'annulation d'une étape, consultez SuccessConditionsla référence de l'CodePipeline API.

Création de conditions d'entrée (CFN)

À utiliser AWS CloudFormation pour configurer une condition d'entrée, utilisez le beforeEntry paramètre. À l'entrée, l'étape exécutera la règle et exécutera le résultat.

beforeEntry: Result: FAIL
  • Mettez à jour le modèle comme indiqué dans l'extrait suivant. L'exemple suivant configure une condition d'entrée avec une règle nommée MyMonitorRule :

    Name: Deploy Actions: - Name: Deploy ActionTypeId: Category: Deploy Owner: AWS Provider: S3 Version: '1' RunOrder: 1 Configuration: BucketName: MyBucket Extract: 'false' ObjectKey: object.xml OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-east-1 Namespace: DeployVariables BeforeEntry: Conditions: - Result: FAIL Rules: - Name: MyMonitorRule RuleTypeId: Category: Rule Owner: AWS Provider: CloudWatchAlarm Version: '1' Configuration: AlarmName: CWAlarm WaitTime: '1' InputArtifacts: [] Region: us-east-1

    Pour plus d'informations sur la configuration des conditions BeforeEntry, consultez AWS::CodePipeline::Pipeline BeforeEntryConditionsle Guide StageDeclaration de l'AWS CloudFormation utilisateur ci-dessous.

Création de conditions en cas de défaillance

Vous pouvez configurer les conditions On Failure pour une étape à l'aide de la console ou de la CLI. Vous allez configurer les règles et les résultats correspondants pour chaque condition. Pour obtenir un résultat de restauration, le pipeline ne peut revenir à une exécution précédente que si celle-ci a été démarrée dans la version actuelle de la structure du pipeline.

Création de conditions en cas de défaillance (console)

Vous pouvez configurer les conditions On Failure pour une étape, ainsi que les règles et les résultats que vous souhaitez que l'étape exécute lorsque les conditions sont remplies.

Configurer une condition en cas de défaillance (console)
  1. Remplissez tous les prérequis, tels que la création de la ressource et de l'ARN pour une règle dans laquelle une ressource est fournie, telle que la LambdaInvokerègle.

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

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  3. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  4. Sur la page des détails du pipeline, choisissez Edit.

  5. Sur la page Modifier, pour l'action que vous souhaitez modifier, choisissez Modifier l'étape.

  6. Choisissez Ajouter une condition de défaillance. La carte de condition de défaillance s'affiche avec l'option Annulation disponible pour cette condition.

  7. Choisissez Ajouter une règle, puis effectuez les opérations suivantes.

    1. Dans Nom de la règle, entrez le nom de votre règle. Pour cet exemple, entrez MyLambdaRule.

    2. Dans Fournisseur de règles, choisissez le fournisseur de règles préconfiguré à ajouter à votre condition. Pour cet exemple, choisissez AWS LambdaInvoke, puis effectuez les étapes suivantes.

    3. Dans Région, choisissez la région correspondant à votre état ou conservez la région par défaut.

    4. Dans Artefacts d'entrée, choisissez l'artefact source.

    5. Dans Nom de la fonction, choisissez la ressource Lambda à utiliser pour la règle. Vous devez déjà avoir créé la ressource dans votre compte.

    6. (Facultatif) Dans Paramètres utilisateur, entrez les paires qui représentent des paramètres pour une configuration supplémentaire.

    7. (Facultatif) Dans Role Arn, entrez l'ARN du rôle s'il est configuré.

    8. (Facultatif) Dans Délai d'expiration en minutes, entrez le temps en minutes pendant lequel la règle doit attendre avant le délai d'expiration.

    9. Lorsque vous avez terminé de modifier la scène, choisissez OK. Sur la page de modification du pipeline, choisissez Enregistrer.

Exemple de création de conditions OnFailure avec un résultat Retry (console)

Vous pouvez configurer les conditions OnFailure pour une étape de telle sorte que si la condition d'entrée n'est pas remplie, l'étape soit réessayée. Dans le cadre de ce résultat, vous configurez le mode de nouvelle tentative, en spécifiant s'il faut réessayer les actions ayant échoué ou réessayer l'étape ayant échoué.

Configuration d'une condition OnFailure avec un résultat de nouvelle tentative (console)
  1. Remplissez tous les prérequis, tels que la création de la ressource et de l'ARN pour une règle dans laquelle une ressource est fournie, telle que le AWS CloudWatchAlarm.

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

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  3. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  4. Sur la page des détails du pipeline, choisissez Edit.

  5. Sur la page Modifier, pour l'action que vous souhaitez modifier, choisissez Modifier l'étape.

  6. Au bas de l'étape, sous Configuration automatique de l'étape :, choisissez Activer la nouvelle tentative automatique en cas d'échec de l'étape. En mode Réessayer, choisissez Réessayer l'étape ayant échoué ou Réessayer les actions ayant échoué.

    Configuration du mode de nouvelle tentative pour une étape dans. CodePipeline
  7. Choisissez d'ajouter une condition OnFailure, puis choisissez Ajouter une règle et entrez une règle pour la condition.

    1. Dans Nom de la règle, entrez le nom de votre règle. Pour cet exemple, entrez MyAlarmRule.

    2. Dans Fournisseur de règles, choisissez le fournisseur de règles préconfiguré à ajouter à votre condition. Pour cet exemple, choisissez CloudWatchAlarm, puis effectuez les étapes suivantes.

    3. Dans Région, choisissez la région correspondant à votre état ou conservez la région par défaut.

    4. Dans Nom de l'alarme, choisissez la ressource configurée pour l'alerte.

    5. Lorsque vous avez terminé de modifier la scène, choisissez OK. Sur la page de modification du pipeline, choisissez Enregistrer.

  8. Après l'exécution, visualisez le résultat.

Création de conditions en cas de défaillance (CLI)

Pour utiliser la AWS CLI condition « En cas d'échec », utilisez les commandes pour créer ou mettre à jour un pipeline, comme indiqué dans Création d'un pipeline, d'étapes et d'actions etModifier un pipeline dans CodePipeline.

Configuration de la condition et de la ou des règles (CLI)
  • Ouvrez un terminal (Linux, macOS ou Unix) ou une invite de commande (Windows) et utilisez le AWS CLI pour exécuter la update-pipeline commande, en spécifiant la condition de défaillance dans la structure du pipeline. L'exemple suivant configure une condition On Failure pour un stage nommé Deploy :

    { "name": "Deploy", "actions": [ { "name": "Deploy", "actionTypeId": { "category": "Deploy", "owner": "AWS", "provider": "S3", "version": "1" }, "runOrder": 1, "configuration": { "BucketName": "MyBucket", "Extract": "false", "ObjectKey": "object.xml" }, "outputArtifacts": [], "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-east-1", "namespace": "DeployVariables" } ], "onFailure": { "conditions": [ { "result": "ROLLBACK", "rules": [ { "name": "MyLambdaRule", "ruleTypeId": { "category": "Rule", "owner": "AWS", "provider": "LambdaInvoke", "version": "1" }, "configuration": { "FunctionName": "my-function" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-east-1" } ] } ] } }

    Pour plus d'informations sur la configuration des conditions de défaillance, consultez FailureConditionsla référence de l'CodePipeline API.

Création de conditions en cas de défaillance (CFN)

À utiliser AWS CloudFormation pour configurer une condition en cas d'échec, utilisez le OnFailure paramètre. En cas de succès, l'étape exécutera la règle et exécutera le résultat.

OnFailure: Result: ROLLBACK
  • Mettez à jour le modèle comme indiqué dans l'extrait suivant. L'exemple suivant configure une OnFailure condition avec une règle nommée MyMonitorRule :

    name: Deploy actions: - name: Deploy actionTypeId: category: Deploy owner: AWS provider: S3 version: '1' runOrder: 1 configuration: BucketName: MyBucket Extract: 'false' ObjectKey: object.xml outputArtifacts: [] inputArtifacts: - name: SourceArtifact region: us-east-1 namespace: DeployVariables onFailure: conditions: - result: ROLLBACK rules: - name: MyMonitorRule ruleTypeId: category: Rule owner: AWS provider: CloudWatchAlarm version: '1' configuration: AlarmName: AlarmOnHelloWorldInvocation AlarmStates: ALARM WaitTime: '1' inputArtifacts: [] region: us-east-1

    Pour plus d'informations sur la configuration des conditions de défaillance, voir OnFailureStageDeclarationle Guide de l'AWS CloudFormation utilisateur ci-dessous.

Conditions de création en cas de réussite

Vous pouvez configurer les conditions On Success pour une étape à l'aide de la console ou de la CLI. Vous allez configurer les règles et les résultats correspondants pour chaque condition. Pour obtenir un résultat de restauration, le pipeline ne peut revenir à une exécution précédente que si celle-ci a été démarrée dans la version actuelle de la structure du pipeline.

Les étapes fournissent un exemple de condition En cas de réussite qui utilise une règle de fenêtre de déploiement.

Pour plus d'informations, consultez Condition RuleTypeId, et RuleExecutiondans le guide de l'CodePipeline API.

Conditions de création en cas de réussite (console)

Vous pouvez configurer les conditions On Success pour une étape, ainsi que les règles et les résultats que vous souhaitez que l'étape exécute lorsque les conditions sont remplies.

Configurer une condition « En cas de réussite » (console)
  1. Remplissez tous les prérequis, tels que la création de la ressource et de l'ARN pour une règle dans laquelle une ressource est fournie, telle que le AWS LambdaRule.

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

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  3. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  4. Sur la page des détails du pipeline, choisissez Edit.

  5. Sur la page Modifier, pour l'action que vous souhaitez modifier, choisissez Modifier l'étape.

  6. Choisissez Ajouter une condition de réussite. La carte des conditions de réussite sur scène s'affiche. Choisissez l'option Annulation ou Echec comme résultat disponible pour ce type de condition.

  7. Choisissez Ajouter une règle, puis effectuez les opérations suivantes.

    1. Dans Nom de la règle, entrez le nom de votre condition. Pour cet exemple, entrez MyDeploymentRule.

    2. Dans Fournisseur de règles, choisissez la règle préconfigurée à ajouter à votre condition. Pour cet exemple, choisissez AWS DeploymentWindow, puis effectuez les étapes suivantes.

    3. Dans Région, choisissez la région correspondant à votre état ou conservez la région par défaut.

    4. Dans Cron, entrez l'expression cron pour la fenêtre de déploiement. L'expression cron définit les jours et heures auxquels le déploiement doit être autorisé. Pour des informations de référence sur les expressions cron, consultez la section Utilisation des expressions cron et rate pour planifier les règles.

    5. (Facultatif) Dans TimeZone, entrez le fuseau horaire de la fenêtre de déploiement.

  8. Après l'exécution, visualisez le résultat.

    Exemple de condition dans CodePipeline.

Création de conditions en cas de réussite (CLI)

Pour utiliser la AWS CLI condition « En cas de réussite », utilisez les commandes pour créer ou mettre à jour un pipeline, comme indiqué dans Création d'un pipeline, d'étapes et d'actions etModifier un pipeline dans CodePipeline.

Configuration de la condition et de la ou des règles (CLI)
  • Ouvrez un terminal (Linux, macOS ou Unix) ou une invite de commande (Windows) et utilisez le AWS CLI pour exécuter la update-pipeline commande, en spécifiant la condition de défaillance dans la structure du pipeline. L'exemple suivant configure une condition On Success pour une étape nomméeDeploy, où la règle est nommée MyDeploymentRule :

    { "name": "Deploy", "actions": [ { "name": "Deploy", "actionTypeId": { "category": "Deploy", "owner": "AWS", "provider": "S3", "version": "1" }, "runOrder": 1, "configuration": { "BucketName": "MyBucket", "Extract": "false", "ObjectKey": "object.xml" }, "outputArtifacts": [], "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-east-1", "namespace": "DeployVariables" } ], "onSuccess": { "conditions": [ { "result": "FAIL", "rules": [ { "name": "MyAlarmRule", "ruleTypeId": { "category": "Rule", "owner": "AWS", "provider": "CloudWatchAlarm", "version": "1" }, "configuration": { "AlarmName": "CWAlarm", "WaitTime": "1" }, "inputArtifacts": [], "region": "us-east-1" } ] } ] } }

    Pour plus d'informations sur la configuration des conditions de réussite, consultez SuccessConditionsla référence des CodePipeline API.

Création d'une condition de réussite (CFN)

AWS CloudFormation Pour configurer une condition On Success, utilisez le OnSuccess paramètre. En cas de succès, l'étape exécutera la règle et exécutera le résultat.

OnSuccess: Result: ROLLBACK
  • Mettez à jour le modèle comme indiqué dans l'extrait suivant. L'exemple suivant configure une OnSuccess condition avec une règle nommée MyDeploymentWindowRule :

    name: Deploy actions: - name: Deploy actionTypeId: category: Deploy owner: AWS provider: S3 version: '1' runOrder: 1 configuration: BucketName: MyBucket Extract: 'false' ObjectKey: object.xml outputArtifacts: [] inputArtifacts: - name: SourceArtifact region: us-east-1 namespace: DeployVariables onSuccess: conditions: - result: FAIL rules: - name: MyMonitorRule ruleTypeId: category: Rule owner: AWS provider: CloudWatchAlarm version: '1' configuration: AlarmName: CWAlarm WaitTime: '1' inputArtifacts: [] region: us-east-1

    Pour plus d'informations sur la configuration des conditions de défaillance pour la restauration par étapes, voir OnFailurele Guide StageDeclaration de l'AWS CloudFormation utilisateur ci-dessous.

Supprimer les conditions d'une étape

Vous pouvez supprimer les conditions d'étape qui ont été configurées pour votre pipeline.

Pour supprimer une condition d'étape
  1. Connectez-vous à la CodePipeline console AWS Management Console et ouvrez-la à l'adresse http://console.aws.amazon. com/codesuite/codepipeline/home.

    Les noms et le statut de tous les pipelines associés à votre pipeline Compte AWS sont affichés.

  2. Dans Name, choisissez le nom du pipeline que vous souhaitez modifier.

  3. Sur la page des détails du pipeline, choisissez Edit.

  4. Sur la page Modifier, pour la condition que vous souhaitez modifier, choisissez Modifier l'étape.

  5. À côté de la condition que vous souhaitez supprimer, choisissez Supprimer la condition.

Conditions de scène prioritaires

Vous pouvez remplacer les conditions d'étape qui ont été configurées pour votre pipeline. Dans la console, lorsque l'étape et la règle sont en cours d'exécution, vous pouvez choisir de remplacer la condition de l'étape. Cela se traduit par le déroulement de la scène

Pour annuler une condition d'étape
  1. Dans cet exemple, l'étape du pipeline est exécutée avec une condition. Le bouton Override est activé.

    Exemple de condition dans CodePipeline.
  2. À côté de la condition que vous souhaitez annuler, choisissez Remplacer.

    Exemple de condition dans CodePipeline.
  3. Pour consulter les détails, choisissez Réviser. Le détail de l'exemple suivant montre que le résultat configuré pour la condition est Fail, qui a été remplacé. Le statut de la règle est abandonné en raison de la dérogation.

    Exemple de page détaillée d'une condition indiquant la condition remplacée dans. CodePipeline