

Amazon n' CodeCatalyst est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. Pour de plus amples informations, veuillez consulter [Comment effectuer une migration depuis CodeCatalyst](migration.md).

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.

# Exemples : déclencheurs dans les flux de travail
<a name="workflows-add-trigger-examples"></a>

Les exemples suivants montrent comment ajouter différents types de déclencheurs dans un fichier de définition de CodeCatalyst flux de travail Amazon.

Pour plus d'informations sur les déclencheurs, consultez [Démarrage d'un flux de travail exécuté automatiquement à l'aide de déclencheurs](workflows-add-trigger.md).

**Topics**
+ [Exemple : un simple déclencheur push à code](#workflows-add-trigger-examples-push-simple)
+ [Exemple : un simple déclencheur « push to main »](#workflows-add-trigger-examples-push-main)
+ [Exemple : un simple déclencheur de pull request](#workflows-add-trigger-examples-pull-simple)
+ [Exemple : un simple déclencheur de planification](#workflows-add-trigger-examples-schedule-simple)
+ [Exemple : un déclencheur avec un calendrier et des branches](#workflows-add-trigger-examples-schedule-branches)
+ [Exemple : un déclencheur avec un calendrier, un push et des branches](#workflows-add-trigger-examples-schedule-push-branches)
+ [Exemple : une gâchette avec une traction et des branches](#workflows-add-trigger-examples-pull-branches)
+ [Exemple : un déclencheur avec un pull, des branches et un événement « CLOSED »](#workflows-add-trigger-examples-push-pull-close)
+ [Exemple : un déclencheur avec un push, des branches et des fichiers](#workflows-add-trigger-examples-push-multi)
+ [Exemple : un déclencheur manuel](#workflows-add-trigger-examples-manual)
+ [Exemple : déclencheurs dans une configuration à CI/CD flux de travail multiples](#workflows-add-trigger-usecases)

## Exemple : un simple déclencheur push à code
<a name="workflows-add-trigger-examples-push-simple"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois que du code est *envoyé* à une branche de votre référentiel source.

Lorsque ce déclencheur est activé, CodeCatalyst lance un flux de travail exécuté à l'aide des fichiers de la branche vers laquelle vous *pointez* (c'est-à-dire la branche de destination). 

Par exemple, si vous envoyez un commit à`main`, CodeCatalyst lance un flux de travail exécuté à l'aide du fichier de définition du flux de travail et d'autres fichiers source. `main`

Autre exemple, si vous envoyez un commit à`feature-branch-123`, CodeCatalyst lance un flux de travail exécuté à l'aide du fichier de définition du flux de travail et d'autres fichiers source. `feature-branch-123`

```
Triggers:
  - Type: PUSH
```

**Note**  
Si vous souhaitez qu'un flux de travail ne démarre que lorsque vous appuyez dessus`main`, consultez[Exemple : un simple déclencheur « push to main »](#workflows-add-trigger-examples-push-main).

## Exemple : un simple déclencheur « push to main »
<a name="workflows-add-trigger-examples-push-main"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois que du code est transmis à la `main` branche (et *uniquement* à la `main` branche) de votre référentiel source.

```
Triggers:
  - Type: PUSH
    Branches:
      - main
```

## Exemple : un simple déclencheur de pull request
<a name="workflows-add-trigger-examples-pull-simple"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois qu'une pull request est créée ou révisée dans votre référentiel source.

Lorsque ce déclencheur est activé, CodeCatalyst lance un flux de travail exécuté à l'aide du fichier de définition du flux de travail et des autres fichiers source de la branche *d'*où vous effectuez l'extraction (c'est-à-dire la branche source).

Par exemple, si vous créez une pull request avec une branche source appelée `feature-123` et une branche de destination appelée`main`, CodeCatalyst lance un flux de travail exécuté à l'aide du fichier de définition du flux de travail et d'autres fichiers source. `feature-123`

```
Triggers:
  - Type: PULLREQUEST
    Events:
      - OPEN
      - REVISION
```

## Exemple : un simple déclencheur de planification
<a name="workflows-add-trigger-examples-schedule-simple"></a>

L'exemple suivant montre un déclencheur qui lance un flux de travail exécuté à minuit (UTC\$10) du lundi au vendredi.

Lorsque ce déclencheur est activé, CodeCatalyst lance une seule exécution de flux de travail pour chaque branche de votre référentiel source contenant un fichier de définition de flux de travail avec ce déclencheur.

Par exemple, si votre référentiel source comporte trois branches,, `main` `release-v1``feature-123`, et que chacune de ces branches contient un fichier de définition de flux de travail avec le déclencheur suivant, CodeCatalyst lance trois exécutions de flux de travail : une utilisant les fichiers dans`main`, une autre utilisant les fichiers dans `release-v1` et une autre utilisant les fichiers dans`feature-123`.

```
Triggers:
  - Type: SCHEDULE
    Expression: "0 0 ? * MON-FRI *"
```

Pour plus d'exemples d'expressions cron que vous pouvez utiliser dans la `Expression` propriété, consultez[Expression](workflow-reference.md#workflow.triggers.expression).

## Exemple : un déclencheur avec un calendrier et des branches
<a name="workflows-add-trigger-examples-schedule-branches"></a>

L'exemple suivant montre un déclencheur qui lance un flux de travail exécuté à 18h15 (UTC\$10) tous les jours.

Lorsque ce déclencheur est activé, CodeCatalyst lance un flux de travail à l'aide des fichiers de la `main` branche et lance des exécutions supplémentaires pour chaque branche commençant par`release-`.

Par exemple, si vous avez des branches nommées`main`, `release-v1``bugfix-1`, `bugfix-2` dans votre référentiel source, CodeCatalyst démarre deux exécutions de flux de travail : l'une utilisant les fichiers dans`main`, l'autre utilisant les fichiers dans`release-v1`. Il ne lance *pas* les exécutions de flux de travail pour les `bugfix-1` branches `bugfix-1` et.

```
Triggers:
  - Type: SCHEDULE
    Expression: "15 18 * * ? *"
    Branches:
      - main
      - release\-.*
```

Pour plus d'exemples d'expressions cron que vous pouvez utiliser dans la `Expression` propriété, consultez[Expression](workflow-reference.md#workflow.triggers.expression).

## Exemple : un déclencheur avec un calendrier, un push et des branches
<a name="workflows-add-trigger-examples-schedule-push-branches"></a>

L'exemple suivant montre un déclencheur qui lance un flux de travail exécuté à minuit (UTC\$10) tous les jours, et chaque fois que le code est envoyé à la branche. `main`

Dans cet exemple :
+ L'exécution d'un flux de travail commence tous les jours à minuit. Le flux de travail exécuté utilise le fichier de définition du flux de travail et les autres fichiers source de la `main` branche.
+ Une exécution de flux de travail démarre également chaque fois que vous envoyez un commit à la `main` branche. Le flux de travail exécuté utilise le fichier de définition du flux de travail et les autres fichiers source de la branche de destination (`main`).

```
Triggers:
  - Type: SCHEDULE
    Expression: "0 0 * * ? *"
    Branches:
      - main
  - Type: PUSH
    Branches: 
      - main
```

Pour plus d'exemples d'expressions cron que vous pouvez utiliser dans la `Expression` propriété, consultez[Expression](workflow-reference.md#workflow.triggers.expression).

## Exemple : une gâchette avec une traction et des branches
<a name="workflows-add-trigger-examples-pull-branches"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois que quelqu'un ouvre ou modifie une pull request avec une branche de destination appelée`main`. Bien que la branche spécifiée dans la `Triggers` configuration le soit`main`, le flux de travail exécuté utilisera le fichier de définition du flux de travail et les autres fichiers *source de la branche source* (qui est la branche dont vous *extrayez*).

```
Triggers:      
  - Type: PULLREQUEST
    Branches:
      - main
    Events:
      - OPEN
      - REVISION
```

## Exemple : un déclencheur avec un pull, des branches et un événement « CLOSED »
<a name="workflows-add-trigger-examples-push-pull-close"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois qu'une pull request est fermée sur une branche commençant par`main`.

Dans cet exemple :
+ Lorsque vous fermez une pull request dont la branche de destination commence par`main`, l'exécution du flux de travail démarre automatiquement en utilisant le fichier de définition du flux de travail et les autres fichiers source de la branche source (désormais fermée).
+ Si vous avez configuré votre dépôt source pour supprimer automatiquement les branches après la fusion d'une pull request, ces branches n'auront jamais la possibilité d'entrer dans l'`CLOSED`état. Cela signifie que les branches fusionnées n'activeront pas le `CLOSED` déclencheur de pull request. Dans ce scénario, le seul moyen d'activer le `CLOSED` déclencheur est de fermer la pull request sans la fusionner.

```
Triggers:     
  - Type: PULLREQUEST
    Branches:
      - main.*               
    Events:
      - CLOSED
```

## Exemple : un déclencheur avec un push, des branches et des fichiers
<a name="workflows-add-trigger-examples-push-multi"></a>

L'exemple suivant montre un déclencheur qui lance l'exécution d'un flux de travail chaque fois qu'une modification est apportée au `filename.txt` fichier, ou à tout autre fichier du `src` répertoire, sur la `main` branche.

Lorsque ce déclencheur est activé, CodeCatalyst lance un flux de travail exécuté à l'aide du fichier de définition du flux de travail et des autres fichiers source de la `main` branche.

```
Triggers:
  - Type: PUSH
    Branches:
      - main
    FilesChanged:
      - filename.txt
      - src\/.*
```

## Exemple : un déclencheur manuel
<a name="workflows-add-trigger-examples-manual"></a>

Pour configurer un déclencheur manuel, omettez la `Triggers` section dans le fichier de définition du flux de travail. Sans cette section, les utilisateurs sont obligés de démarrer le flux de travail manuellement en cliquant sur le bouton **Exécuter** de la CodeCatalyst console. Pour de plus amples informations, veuillez consulter [Démarrage manuel de l’exécution d’un flux de travail](workflows-manually-start.md).

## Exemple : déclencheurs dans une configuration à CI/CD flux de travail multiples
<a name="workflows-add-trigger-usecases"></a>

Cet exemple décrit comment configurer des déclencheurs lorsque vous souhaitez utiliser des CodeCatalyst flux de travail Amazon distincts pour l'intégration continue (CI) et le déploiement continu (CD).

Dans ce scénario, vous configurez deux flux de travail :
+ un **flux de travail CI** : ce flux de travail crée et teste votre application lorsqu'une pull request est créée ou révisée.
+ un **flux de travail sur CD** : ce flux de travail crée et déploie votre application lorsqu'une pull request est fusionnée.

Le fichier de définition du **flux de travail CI** ressemblerait à ceci :

```
Triggers:      
  - Type: PULLREQUEST
    Branches:
      - main
    Events:
      - OPEN
      - REVISION
Actions:
  BuildAction:
    instructions-for-building-the-app
  TestAction:
    instructions-for-test-the-app
```

Le `Triggers` code indique de démarrer automatiquement un flux de travail chaque fois qu'un développeur de logiciel crée une pull request (ou en [modifie une](pull-requests-update.md)) demandant de fusionner sa branche de fonctionnalités avec la `main` branche. CodeCatalyst lance le flux de travail exécuté à l'aide du code source dans la branche source (qui est la branche des fonctionnalités).

Le fichier de définition du **flux de travail du CD** ressemblerait à ceci :

```
Triggers:      
  - Type: PUSH
    Branches:
      - main
Actions:
  BuildAction:
    instructions-for-building-the-app
  DeployAction:
    instructions-for-deploying-the-app
```

Le `Triggers` code indique de démarrer le flux de travail automatiquement lorsqu'une fusion a `main` lieu. CodeCatalyst lance l'exécution du flux de travail à l'aide du code source de la `main` branche.