

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 AWS Infrastructure Composer avec AWS Step Functions
<a name="using-composer-services-sf"></a>

AWS Infrastructure Composer dispose d'une intégration avec [AWS Step FunctionsWorkflow Studio](https://docs.aws.amazon.com/step-functions/latest/dg/workflow-studio.html). Utilisez Infrastructure Composer pour effectuer les opérations suivantes :
+ Lancez Step Functions Workflow Studio directement dans Infrastructure Composer.
+ Créez et gérez de nouveaux flux de travail ou importez des flux de travail existants dans Infrastructure Composer.
+ Intégrez vos flux de travail à d'autres AWS ressources à l'aide du canevas Infrastructure Composer.

L'image suivante représente une carte machine Step Functions State

![\[Une carte machine Step Functions State.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_01.png)


Avec Step Functions Workflow Studio dans Infrastructure Composer, vous pouvez utiliser les avantages de deux puissants concepteurs visuels en un seul endroit. Lorsque vous concevez votre flux de travail et votre application, Infrastructure Composer crée votre infrastructure sous forme de code (IaC) pour vous guider vers le déploiement.

**Topics**
+ [politiques IAM](#using-composer-services-sf-use-iam)
+ [Commencer à utiliser Step Functions Workflow Studio dans Infrastructure Composer](#using-composer-services-sf-gs)
+ [Utilisation de Step Functions Workflow Studio dans Infrastructure Composer](#using-composer-services-sf-use)
+ [En savoir plus](#using-composer-services-sf-learn)

## politiques IAM
<a name="using-composer-services-sf-use-iam"></a>

Lorsque vous connectez des tâches de votre flux de travail à des ressources, Infrastructure Composer crée automatiquement les politiques Gestion des identités et des accès AWS (IAM) requises pour autoriser l'interaction entre vos ressources. Voici un exemple :

```
Transform: AWS::Serverless-2016-10-31
Resources:
  StockTradingStateMachine:
    Type: AWS::Serverless::StateMachine
    Properties:
      ...
      Policies:
        - LambdaInvokePolicy:
            FunctionName: !Ref CheckStockValue
      ...
  CheckStockValue:
    Type: AWS::Serverless::Function
    ...
```

Si nécessaire, vous pouvez ajouter d'autres politiques IAM à votre modèle.

## Commencer à utiliser Step Functions Workflow Studio dans Infrastructure Composer
<a name="using-composer-services-sf-gs"></a>

Pour commencer, vous pouvez créer de nouveaux flux de travail ou importer des flux de travail existants.

### Pour créer un nouveau flux de travail
<a name="using-composer-services-sf-gs-create"></a>

1. Depuis la palette **Resources**, faites glisser une carte de composant améliorée par **Step Functions State Machine** sur le canevas.  
![\[Une carte de machine d'État Step Functions.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_02.png)

   Lorsque vous faites glisser une carte de **machine Step Functions State** sur le canevas, Infrastructure Composer crée ce qui suit :
   + Une `[ AWS::Serverless::StateMachine](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-statemachine.html)` ressource qui définit votre machine à états. Par défaut, Infrastructure Composer crée un flux de travail standard. Pour créer un flux de travail express, remplacez la `Type` valeur de votre modèle par `STANDARD``EXPRESS`.
   + Une `[AWS::Logs::LogGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)` ressource qui définit un groupe de CloudWatch journaux Amazon pour votre machine d'état.

1. Ouvrez le panneau **des propriétés des ressources** de la carte et sélectionnez **Modifier dans Workflow Studio** pour l'ouvrir Workflow Studio dans Infrastructure Composer.

   Step Functions Workflow Studio s'ouvre en mode **Design**. Pour en savoir plus, consultez la section [Mode conception](https://docs.aws.amazon.com/step-functions/latest/dg/workflow-studio-components.html#wfs-interface-design-mode) dans le *guide du AWS Step Functions développeur*.
**Note**  
Vous pouvez modifier Infrastructure Composer pour enregistrer la définition de votre machine à états dans un fichier externe. Pour en savoir plus, veuillez consulter la section [Utilisation de fichiers externes](#using-composer-services-sf-use-external).

1. Créez votre flux de travail et choisissez **Enregistrer**. Pour quitterWorkflow Studio, choisissez **Return to Infrastructure Composer**.

   Infrastructure Composer définit votre flux de travail à l'aide de la `Defintion` propriété de la `AWS::Serverless::StateMachine` ressource.

1. Vous pouvez modifier votre flux de travail en effectuant l'une des opérations suivantes :
   + Ouvrez Workflow Studio à nouveau et modifiez votre flux de travail.
   + Pour Infrastructure Composer depuis la console, vous pouvez ouvrir la vue **Modèle** de votre application et modifier votre modèle. Si vous utilisez la **synchronisation locale**, vous pouvez modifier votre flux de travail dans votre IDE local. Infrastructure Composer détectera vos modifications et mettra à jour votre flux de travail dans Infrastructure Composer.
   + Pour Infrastructure Composer depuis le Toolkit for VS Code, vous pouvez directement modifier votre modèle. Infrastructure Composer détectera vos modifications et mettra à jour votre flux de travail dans Infrastructure Composer.

### Pour importer des flux de travail existants
<a name="using-composer-services-sf-gs-import"></a>

Vous pouvez importer des flux de travail à partir d'applications définies à l'aide de modèles AWS Serverless Application Model (AWS SAM). Utilisez n'importe quelle machine à états définie avec le type de `AWS::Serverless::StateMachine` ressource, et elle sera visualisée sous la forme d'une carte de composants améliorée **Step Functions State Machine** que vous pourrez utiliser pour le lancementWorkflow Studio.

La `AWS::Serverless::StateMachine` ressource peut définir des flux de travail à l'aide de l'une des propriétés suivantes :
+ `[ Definition](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-statemachine.html#sam-statemachine-definition)`— Le flux de travail est défini dans le AWS SAM modèle en tant qu'objet.
+ `[ DefinitionUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-statemachine.html#sam-statemachine-definitionuri)`— Le flux de travail est défini sur un fichier externe à l'aide de l'[Amazon States Language](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html). Le chemin local du fichier est ensuite spécifié avec cette propriété.

#### Propriété de définition
<a name="using-composer-services-sf-gs-import-definition"></a>

**Infrastructure Composer depuis la console**  
Pour les flux de travail définis à l'aide de cette `Definition` propriété, vous pouvez importer un seul modèle ou l'ensemble du projet.  
+ **Modèle** : pour obtenir des instructions sur l'importation d'un modèle, consultez[Importer un modèle de projet existant dans la console Infrastructure Composer](using-composer-project-import-template.md). Pour enregistrer les modifications que vous apportez dans Infrastructure Composer, vous devez exporter votre modèle.
+ **Projet** — Lorsque vous importez un projet, vous devez activer la **synchronisation locale**. Les modifications que vous apportez sont automatiquement enregistrées sur votre ordinateur local. Pour obtenir des instructions sur l'importation d'un projet, consultez[Importer un dossier de projet existant dans la console Infrastructure Composer](using-composer-project-import-folder.md).

**Compositeur d'infrastructure issu du Toolkit for VS Code**  
Pour les flux de travail définis à l'aide de cette `Definition` propriété, vous pouvez ouvrir Infrastructure Composer à partir de votre modèle. Pour obtenir des instructions, veuillez consulter [Accédez à Infrastructure Composer à partir du AWS Toolkit for Visual Studio Code](setting-up-composer-access-ide.md).

#### DefinitionUri propriété
<a name="using-composer-services-sf-gs-import-definitionuri"></a>

**Infrastructure Composer depuis la console**  
Pour les flux de travail définis à l'aide de cette `DefinitionUri` propriété, vous devez importer le projet et activer la **synchronisation locale**. Pour obtenir des instructions sur l'importation d'un projet, consultez[Importer un dossier de projet existant dans la console Infrastructure Composer](using-composer-project-import-folder.md).

**Compositeur d'infrastructure issu du Toolkit for VS Code**  
Pour les flux de travail définis à l'aide de cette `DefinitionUri` propriété, vous pouvez ouvrir Infrastructure Composer à partir de votre modèle. Pour obtenir des instructions, veuillez consulter [Accédez à Infrastructure Composer à partir du AWS Toolkit for Visual Studio Code](setting-up-composer-access-ide.md).

## Utilisation de Step Functions Workflow Studio dans Infrastructure Composer
<a name="using-composer-services-sf-use"></a>

### Créez des flux de travail
<a name="using-composer-services-sf-use-build"></a>

Infrastructure Composer utilise des substitutions de définitions pour mapper les tâches du flux de travail aux ressources de votre application. Pour en savoir plus sur les substitutions de définitions, consultez `[ DefinitionSubstitutions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-statemachine.html#sam-statemachine-definitionsubstitutions)` le *guide du AWS Serverless Application Model développeur*.

Lorsque vous créez des tâches dansWorkflow Studio, spécifiez une substitution de définition pour chaque tâche. Vous pouvez ensuite connecter les tâches aux ressources sur le canevas Infrastructure Composer.

**Pour spécifier une substitution de définition dans Workflow Studio**

1. Ouvrez l'onglet **Configuration** de la tâche et recherchez le champ **Paramètres de l'API**.  
![\[L'onglet Configuration d'une tâche dansWorkflow Studio.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_05.png)

1. Si le champ **Paramètres de l'API** comporte une option déroulante, choisissez **Enter a CloudFormation substitution**. Entrez ensuite un nom unique.

   Pour les tâches qui se connectent à la même ressource, spécifiez la même substitution de définition pour chaque tâche. Pour utiliser une substitution de définition existante, choisissez **Sélectionner une CloudFormation substitution** et sélectionnez la substitution à utiliser.

1. Si le champ **Paramètres de l'API** contient un objet JSON, modifiez l'entrée qui indique le nom de la ressource pour utiliser une substitution de définition. Dans l'exemple suivant, nous passons `"MyDynamoDBTable"` à`"${RecordTransaction}"`.  
![\[L'onglet Configuration d'une tâche dansWorkflow Studio.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_06.png)

1. Sélectionnez **Enregistrer** et **revenez à Infrastructure Composer**.

Les tâches de votre flux de travail seront visualisées sur la carte **machine Step Functions State**.

![\[Une carte machine Step Functions State avec des tâches visualisées.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_03.png)


### Connect les ressources aux tâches du flux de travail
<a name="using-composer-services-sf-use-connect"></a>

Vous pouvez créer des connexions dans Infrastructure Composer entre les tâches de flux de travail prises en charge et les cartes Infrastructure Composer prises en charge.
+ **Tâches de flux de travail prises en charge** : Services AWS les tâches correspondantes sont optimisées pour Step Functions. Pour en savoir plus, consultez la section [Intégrations optimisées pour Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/connect-supported-services.html) dans le *Guide du AWS Step Functions développeur*.
+ **Cartes Infrastructure Composer prises en charge** : les cartes de composants améliorées sont prises en charge. Pour en savoir plus sur les cartes dans Infrastructure Composer, consultez[Configurer et modifier des cartes dans Infrastructure Composer](using-composer-cards.md). 

Lors de la création d'une connexion, Service AWS la tâche et la carte doivent correspondre. Par exemple, vous pouvez connecter une tâche de flux de travail qui appelle une fonction Lambda à une carte de composant améliorée pour une fonction **Lambda**.

Pour créer une connexion, cliquez et faites glisser le port d'une tâche vers le port gauche d'une carte de composant améliorée.

![\[Une carte machine Step Functions State avec une tâche connectée à une carte de ressources de fonction Lambda.\]](http://docs.aws.amazon.com/fr_fr/infrastructure-composer/latest/dg/images/aac_use_sf_04.png)


Infrastructure Composer mettra automatiquement à jour votre `DefinitionSubstitution` valeur pour définir votre connexion. Voici un exemple :

```
Transform: AWS::Serverless-2016-10-31
Resources:
  StateMachine:
    Type: AWS::Serverless::StateMachine
    Properties:
      Definition:
        StartAt: Check Stock Value
        States:
          Check Stock Value:
            Type: Task
            Resource: arn:aws:states:::lambda:invoke
            Parameters:
              Payload.$: $
              FunctionName: ${CheckStockValue}
            Next: Choice
          ...
      DefinitionSubstitutions:
        CheckStockValue: !GetAtt CheckStockValue.Arn
        ...
  CheckStockValue:
    Type: AWS::Serverless::Function
    Properties:
      ...
```

### Utilisation de fichiers externes
<a name="using-composer-services-sf-use-external"></a>

Lorsque vous créez un flux de travail à partir de la carte **Step Functions State machine**, Infrastructure Composer enregistre votre définition de machine à états dans votre modèle à l'aide de la `Definition` propriété. Vous pouvez configurer Infrastructure Composer pour enregistrer la définition de votre machine d'état sur un fichier externe.

**Note**  
Pour utiliser cette fonctionnalité avec Infrastructure Composer depuis le AWS Management Console, la **synchronisation locale** doit être activée. Pour de plus amples informations, veuillez consulter [Synchronisez et enregistrez localement votre projet dans la console Infrastructure Composer](using-composer-project-local-sync.md).

**Pour enregistrer la définition de votre machine à états dans un fichier externe**

1. Ouvrez le panneau **des propriétés des ressources** de votre carte **machine Step Functions State**.

1. Sélectionnez l'option **Utiliser un fichier externe pour la définition de la machine à états**.

1. Fournissez un chemin et un nom relatifs pour le fichier de définition de votre machine à états.

1. Choisissez **Enregistrer**.

Infrastructure Composer effectuera les opérations suivantes :

1. Déplacez la définition de votre machine à états du `Definition` champ vers votre fichier externe.

1. Enregistrez la définition de votre machine à états dans un fichier externe à l'aide de l'Amazon States Language.

1. Modifiez votre modèle pour référencer le fichier externe à l'aide du `DefinitionUri` champ.

## En savoir plus
<a name="using-composer-services-sf-learn"></a>

Pour en savoir plus sur Step Functions dans Infrastructure Composer, consultez ce qui suit :
+ [Utilisation Workflow Studio dans Infrastructure Composer](https://docs.aws.amazon.com/step-functions/latest/dg/use-wfs-in-app-composer.html) dans le *guide du AWS Step Functions développeur*.
+ [DefinitionSubstitutions dans les AWS SAM modèles](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-sam-sfn.html#sam-definition-substitution-eg) du *Guide du AWS Step Functions développeur*.