

Avis de fin de support : le 7 octobre 2026, AWS le support pour AWS Proton. Après le 7 octobre 2026, vous ne pourrez plus accéder à la AWS Proton console ni aux AWS Proton ressources. Votre infrastructure déployée restera intacte. Pour plus d'informations, consultez le Guide [AWS Proton de dépréciation et de migration des services. ](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)

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.

# Création d'un environnement
<a name="ag-create-env"></a>

Apprenez à créer des AWS Proton environnements.

**Vous pouvez créer un AWS Proton environnement de deux manières :**
+ Créez, gérez et provisionnez un environnement standard à l'aide d'un modèle d'environnement * standard*. AWS Proton fournit une infrastructure adaptée à votre environnement.
+ Connectez-vous AWS Proton à l'infrastructure gérée par le client à l'aide d'un modèle d'environnement géré par le * client. * Vous approvisionnez vos propres ressources partagées en dehors de AWS Proton, puis vous fournissez des sorties de provisionnement que vous AWS Proton pouvez utiliser.

**Vous pouvez choisir l'une des différentes approches de provisionnement lorsque vous créez un environnement.**
+ *AWS provisionnement géré * : créez, gérez et provisionnez un environnement dans un seul compte. AWS Proton approvisionne votre environnement.

  Cette méthode ne prend en charge que les modèles de code d' CloudFormation infrastructure (IaC).
+ *AWS provisionnement géré vers un autre compte * : dans un compte de gestion unique, créez et gérez un environnement provisionné dans un autre compte avec des connexions à un compte d'environnement. AWS Proton provisionne votre environnement sur l'autre compte. Pour plus d’informations, consultez [Création d'un environnement dans un compte et provisionnement dans un autre compte](#ag-create-env-deploy-other) et [Connexions aux comptes d'environnement](ag-env-account-connections.md).

  Cette méthode ne prend en charge que les CloudFormation modèles IaC.
+ *Self-managed provisionnement * : AWS Proton soumet des demandes d'extraction de provisionnement à un référentiel lié avec votre propre infrastructure de provisionnement.

  Cette méthode ne prend en charge que les modèles Terraform IaC.
+ *CodeBuild provisioning * : permet AWS Proton AWS CodeBuild d'exécuter les commandes shell que vous fournissez. Vos commandes peuvent lire les entrées qui AWS Proton fournissent et sont responsables du provisionnement ou du déprovisionnement de l'infrastructure et de la génération de valeurs de sortie. Un ensemble de modèles pour cette méthode inclut vos commandes dans un fichier manifeste et tous les programmes, scripts ou autres fichiers dont ces commandes peuvent avoir besoin.

  À titre d'exemple d'utilisation du CodeBuild provisionnement, vous pouvez inclure du code qui utilise les ressources Cloud Development Kit AWS (AWS CDK) pour provisionner les AWS ressources, ainsi qu'un manifeste qui installe le CDK et exécute votre code CDK.

  Pour de plus amples informations, veuillez consulter [CodeBuild ensemble de modèles de provisionnement](ag-infrastructure-tmp-files-codebuild.md).
**Note**  
Vous pouvez utiliser le CodeBuild provisionnement avec des environnements et des services. Pour le moment, vous ne pouvez pas provisionner les composants de cette façon.

Avec le provisionnement AWS géré (à la fois sur le même compte et sur un autre compte), passez AWS Proton des appels directs pour provisionner vos ressources.

Avec le provisionnement autogéré, AWS Proton effectue des pull requests pour fournir des fichiers IaC compilés que votre moteur IaC utilise pour provisionner les ressources.

Pour plus d’informations, consultez [Comment ? AWS Proton infrastructure d'approvisionnement](ag-works-prov-methods.md), [Packs de modèles](ag-template-authoring.md#ag-template-bundles) et [Exigences relatives au schéma pour les ensembles de modèles d'environnement](ag-schema.md#schema-req-env).

**Topics**
+ [Créez et provisionnez un environnement standard dans le même compte](#ag-create-env-same-account)
+ [Création d'un environnement dans un compte et provisionnement dans un autre compte](#ag-create-env-deploy-other)
+ [Créez et provisionnez un environnement à l'aide du provisionnement autogéré](#ag-create-env-pull-request)

## Créez et provisionnez un environnement standard dans le même compte
<a name="ag-create-env-same-account"></a>

Utilisez la console ou AWS CLI pour créer et provisionner un environnement dans un seul compte. L'approvisionnement est géré par AWS.

------
#### [ Console de gestion AWS ]

**Utilisez la console pour créer et provisionner un environnement dans un seul compte**

1. Dans la [AWS Proton console](https://console.aws.amazon.com/proton/), choisissez ** Environments**.

1. Choisissez **Create environment**.

1. Sur la ** page ** Choisir un modèle d'environnement, sélectionnez un modèle et choisissez ** Configurer**.

1. Sur la ** page ** Configurer l'environnement, dans la ** section ** Provisioning, choisissez **AWS Managed Provisioning**.

1. Dans la ** section Compte de ** déploiement, choisissez ** Ceci Compte AWS**.

1. Sur la ** page ** Configurer l'environnement, dans la ** section Paramètres de ** l'environnement, entrez un nom d'**environnement**.

1. (Facultatif) Entrez une description de l'environnement.

1. Dans la ** section Rôles ** environnementaux, sélectionnez le rôle de AWS Proton service que vous avez créé dans le cadre de ce rôle[Configuration AWS Proton fonctions du service](ag-setting-up-iam.md#setting-up-cicd).

1. (Facultatif) Dans la ** section Rôle du ** composant, sélectionnez un rôle de service qui permet à des composants définis directement de s'exécuter dans l'environnement et qui définit les ressources qu'ils peuvent provisionner. Pour de plus amples informations, veuillez consulter [AWS Proton components](ag-components.md).

1. (Facultatif) Dans la ** section ** Tags, choisissez ** Ajouter un nouveau tag ** et entrez une clé et une valeur pour créer un tag géré par le client.

1. Choisissez **Suivant**.

1. Sur la ** page ** Configurer les paramètres personnalisés de l'environnement, vous devez saisir des valeurs pour les `required` paramètres. Vous pouvez saisir des valeurs pour les `optional` paramètres ou utiliser les valeurs par défaut lorsqu'elles sont données.

1. Choisissez ** Suivant ** et vérifiez vos entrées.

1. Choisissez **Créer**.

   Consultez les détails et l'état de l'environnement, ainsi que les balises AWS gérées et les balises gérées par le client pour votre environnement.

1. Dans le panneau de navigation, choisissez **Environments** (Environnements).

   Une nouvelle page affiche la liste de vos environnements ainsi que leur statut et d'autres informations sur l'environnement.

------
#### [ AWS CLI ]

**Utilisez-le AWS CLI pour créer et provisionner un environnement dans un seul compte. **

Pour créer un environnement, vous devez spécifier l'[ARN du rôle de ](security_iam_service-role-policy-examples.md#proton-svc-role)AWS Proton service, le chemin d'accès à votre fichier de spécifications, le nom de l'environnement, l'ARN du modèle d'environnement, les versions principales et mineures et la description (facultatif).

Les exemples suivants présentent un fichier de spécifications YAML formaté qui spécifie les valeurs de deux entrées définies dans le fichier de schéma du modèle d'environnement. Vous pouvez utiliser la `get-environment-template-minor-version` commande pour afficher le schéma du modèle d'environnement.

```
proton: EnvironmentSpec
spec:
  my_sample_input: "the first"
  my_other_sample_input: "the second"
```

Créez un environnement en exécutant la commande suivante.



```
$ aws proton create-environment \
    --name "{{MySimpleEnv}}" \
    --template-name {{simple-env}} \
    --template-major-version {{1}} \
    --proton-service-role-arn "arn:aws:iam::{{123456789012}}:role/{{AWS ProtonServiceRole}}" \
    --spec "{{file://env-spec.yaml}}"
```

Réponse :

```
{
    "environment": {
        "arn": "arn:aws:proton:region-id:123456789012:environment/MySimpleEnv",
        "createdAt": "2020-11-11T23:03:05.405000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "lastDeploymentAttemptedAt": "2020-11-11T23:03:05.405000+00:00",
        "name": "MySimpleEnv",
        "protonServiceRoleArn": "arn:aws:iam::123456789012:role/ProtonServiceRole",
        "templateName": "simple-env"
    }
}
```

Après avoir créé un nouvel environnement, vous pouvez consulter la liste AWS des balises gérées par le client, comme indiqué dans l'exemple de commande suivant. AWS Proton génère automatiquement des balises AWS gérées pour vous. Vous pouvez également modifier et créer des balises gérées par les clients à l'aide du AWS CLI. Pour de plus amples informations, veuillez consulter [AWS Proton ressources et balisage](resources.md).

Commande :

```
$ aws proton list-tags-for-resource \
    --resource-arn "arn:aws:proton:{{region-id}}:{{123456789012}}:environment/{{MySimpleEnv}}"
```

------

## Création d'un environnement dans un compte et provisionnement dans un autre compte
<a name="ag-create-env-deploy-other"></a>

Utilisez la console ou AWS CLI créez un environnement standard dans un compte de gestion qui provisionne l'infrastructure de l'environnement dans un autre compte. L'approvisionnement est géré par AWS.

**Avant d'utiliser la console ou l'interface de ligne de commande, procédez comme suit.**

1. Identifiez les Compte AWS ID du compte de gestion et d'environnement et copiez-les pour une utilisation ultérieure.

1. Dans le compte d'environnement, créez un rôle AWS Proton de service avec des autorisations minimales pour la création de l'environnement. Pour de plus amples informations, veuillez consulter [AWS Proton rôle de service pour le provisionnement à l'aide de CloudFormation](security_iam_service-role-policy-examples.md#proton-svc-role).

------
#### [ Console de gestion AWS ]

**Utilisez la console pour créer un environnement dans un compte et provisionner dans un autre.**

1. 

**Dans le compte d'environnement, créez une connexion au compte d'environnement et utilisez-la pour envoyer une demande de connexion au compte de gestion.**

   1. Dans [AWS Proton la console](https://console.aws.amazon.com/proton/), choisissez Connexions ** au compte d'**environnement dans le volet de navigation.

   1. Sur la ** page Connexions du compte ** Environment, choisissez ** Request to connect**.
**Note**  
Vérifiez que l'ID de compte répertorié dans l'en-tête de la ** page de connexion au compte d'**environnement correspond à votre identifiant de compte d'environnement pré-identifié.

   1. Sur la ** page ** Demande de connexion, dans la ** section Rôle dans ** l'environnement, sélectionnez Rôle de service ** existant ** et le nom du rôle de service que vous avez créé pour l'environnement.

   1. Dans la ** section ** Connexion au compte de gestion, entrez l'ID du compte de ** gestion ** et un nom d'**environnement ** pour votre AWS Proton environnement. Copiez le nom pour une utilisation ultérieure.

   1. Choisissez ** Demander une connexion ** dans le coin inférieur droit de la page.

   1. Votre demande apparaît comme étant en attente dans le ** tableau des connexions d'**environnement envoyées à un compte de gestion et un modal indique comment accepter la demande depuis le compte de gestion.

1. 

**Dans le compte de gestion, acceptez une demande de connexion depuis le compte d'environnement.**

   1. Connectez-vous à votre compte de gestion et choisissez Connexions ** au compte d'**environnement dans la AWS Proton console.

   1. Sur la ** page Connexions au compte d'**environnement, dans le ** ** tableau des demandes de connexion au compte d'environnement, sélectionnez la connexion au compte d'environnement dont l'identifiant de compte d'environnement correspond à votre identifiant de compte d'environnement préidentifié.
**Note**  
Vérifiez que l'identifiant de compte répertorié dans l'en-tête de la ** page de connexion au compte d'**environnement correspond à votre identifiant de compte de gestion pré-identifié.

   1. Choisissez **Accepter**. Le statut passe de EN ATTENTE à CONNECTÉ.

1. 

**Dans le compte de gestion, créez un environnement.**

   1. Dans le volet de navigation, choisissez Modèles d'**environnement**.

   1. Sur la ** page Modèles d'**environnement, choisissez ** Créer un modèle d'environnement**.

   1. Sur la ** page ** Choisir un modèle d'environnement, choisissez un modèle d'environnement.

   1. Sur la ** page ** Configurer l'environnement, dans la ** section ** Provisioning, choisissez **AWS Managed Provisioning**.

   1. Dans la ** section Compte de ** déploiement, choisissez ** Un autre AWS compte ;**.

   1. Dans la ** section Détails de ** l'environnement, sélectionnez la connexion à votre compte d'**environnement ** et le nom de ** l'environnement**.

   1. Choisissez **Suivant**.

   1. Remplissez les formulaires et cliquez sur ** Suivant ** jusqu'à ce que vous atteigniez la ** page ** Réviser et créer.

   1. Vérifiez et choisissez ** Créer un environnement**.

------
#### [ AWS CLI ]

**Utilisez le AWS CLI pour créer un environnement dans un compte et le provisionner dans un autre. **

Dans le compte d'environnement, créez une connexion à un compte d'environnement et demandez à vous connecter en exécutant la commande suivante.

```
$ aws proton create-environment-account-connection \
    --environment-name "{{simple-env-connected}}" \
    --role-arn "arn:aws:iam::{{222222222222}}:role/service-role/{{env-account-proton-service-role}}" \
    --management-account-id "{{111111111111}}"
```

Réponse :

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "PENDING"
    }
}
```

Dans le compte de gestion, acceptez la demande de connexion au compte d'environnement en exécutant la commande suivante.

```
$ aws proton accept-environment-account-connection \
    --id "{{a1b2c3d4-5678-90ab-cdef-EXAMPLE11111}}"
```

Réponse :

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

Consultez la connexion à votre compte d'environnement en exécutant la commande suivante.

```
$ aws proton get-environment-account-connection \
    --id "{{a1b2c3d4-5678-90ab-cdef-EXAMPLE11111}}"
```

Réponse :

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

Dans le compte de gestion, créez un environnement en exécutant la commande suivante.

```
$ aws proton create-environment \
    --name "{{simple-env-connected}}" \
    --template-name {{simple-env-template}} \
    --template-major-version "{{1}}" \
    --template-minor-version "{{1}}" \
    --spec "{{file://simple-env-template/specs/original.yaml}}" \
    --environment-account-connection-id "{{a1b2c3d4-5678-90ab-cdef-EXAMPLE11111}}"
```

Réponse :

```
{
    "environment": {
        "arn": "arn:aws:proton:region-id:111111111111:environment/simple-env-connected",
        "createdAt": "2021-04-28T23:02:57.944000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "environmentAccountConnectionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "lastDeploymentAttemptedAt": "2021-04-28T23:02:57.944000+00:00",
        "name": "simple-env-connected",
        "templateName": "simple-env-template"
    }
}
```

------

## Créez et provisionnez un environnement à l'aide du provisionnement autogéré
<a name="ag-create-env-pull-request"></a>

Lorsque vous utilisez le provisionnement autogéré, AWS Proton soumettez des demandes d'extraction de provisionnement à un référentiel lié avec votre propre infrastructure de provisionnement. Les pull requests démarrent votre propre flux de travail, qui appelle AWS des services, pour provisionner l'infrastructure.

**Self-managed considérations relatives à l'approvisionnement :**
+ Avant de créer un environnement, configurez un répertoire de ressources du référentiel pour un provisionnement autogéré. Pour de plus amples informations, veuillez consulter [AWS Proton infrastructure sous forme de fichiers de code](ag-infrastructure-tmp-files.md).
+ Après avoir créé l'environnement, AWS Proton attend de recevoir des notifications asynchrones concernant l'état du provisionnement de votre infrastructure. Votre code de provisioning doit utiliser l' AWS Proton `NotifyResourceStateChange`API pour envoyer ces notifications asynchrones à. AWS Proton

Vous pouvez utiliser le provisionnement autogéré dans la console ou à l'aide du. AWS CLI Les exemples suivants montrent comment utiliser le provisionnement autogéré avec Terraform.

------
#### [ Console de gestion AWS ]

**Utilisez la console pour créer un environnement Terraform à l'aide d'un provisionnement autogéré.**

1. Dans la [AWS Proton console](https://console.aws.amazon.com/proton/), choisissez ** Environments**.

1. Choisissez **Create environment**.

1. Sur la ** page ** Choisissez un modèle d'environnement, sélectionnez un modèle Terraform et choisissez ** Configurer. **

1. Sur la ** page ** Configurer l'environnement, dans la ** section ** Provisioning, choisissez ** Self-managed Provisioning**.

1. Dans la ** section Détails du référentiel de ** provisionnement :

   1. Si vous n'avez pas encore [ lié votre référentiel de provisioning à AWS Proton](ag-create-repo.md), choisissez ** Nouveau référentiel**, choisissez l'un des fournisseurs de référentiel, puis, pour la ** CodeStar connexion**, choisissez l'une de vos connexions.
**Note**  
Si vous n'êtes pas encore connecté au compte du fournisseur de référentiel concerné, choisissez ** Ajouter une nouvelle CodeStar connexion**. Créez ensuite une connexion, puis cliquez sur le bouton d'actualisation situé à côté du ** menu de ** CodeStar connexion. Vous devriez maintenant pouvoir choisir votre nouvelle connexion dans le menu.

      Si vous avez déjà lié votre dépôt à AWS Proton, choisissez Référentiel ** existant**.

   1. Pour Nom du ** référentiel**, choisissez un référentiel. Le menu déroulant affiche les référentiels liés pour le référentiel ** existant ** ou la liste des référentiels du compte fournisseur pour le ** Nouveau référentiel. **

   1. Pour Nom de ** branche**, choisissez l'une des branches du référentiel.

1. Dans la ** section Paramètres de ** l'environnement, entrez un nom d'**environnement**.

1. (Facultatif) Entrez une description de l'environnement.

1. (Facultatif) Dans la ** section ** Tags, choisissez ** Ajouter un nouveau tag ** et entrez une clé et une valeur pour créer un tag géré par le client.

1. Choisissez **Suivant**.

1. Sur la ** page ** Configurer les paramètres personnalisés de l'environnement, vous devez saisir des valeurs pour les `required` paramètres. Vous pouvez saisir des valeurs pour les `optional` paramètres ou utiliser les valeurs par défaut lorsqu'elles sont données.

1. Choisissez ** Suivant ** et passez en revue vos entrées.

1. Choisissez ** Créer ** pour envoyer une pull request.
   + Si vous approuvez la pull request, le déploiement est en cours.
   + Si vous rejetez la pull request, la création de l'environnement est annulée.
   + Si la pull request expire, la création de l'environnement * n'est pas * terminée.

1. Consultez les détails et l'état de l'environnement, ainsi que les balises AWS gérées et les balises gérées par le client pour votre environnement.

1. Dans le panneau de navigation, choisissez **Environments** (Environnements).

   Une nouvelle page affiche la liste de vos environnements ainsi que leur statut et d'autres informations sur l'environnement.

------
#### [ AWS CLI ]

Lorsque vous créez un environnement à l'aide du provisionnement autogéré, vous * ajoutez * le `provisioningRepository` paramètre et vous omettez les `ProtonServiceRoleArn` paramètres et. `environmentAccountConnectionId`

**Utilisez la commande AWS CLI pour créer un environnement Terraform avec un provisionnement autogéré.**

1. Créez un environnement et envoyez une pull request au référentiel pour examen et approbation.

   Les exemples suivants présentent un fichier de spécifications YAML formaté qui définit les valeurs de deux entrées en fonction du fichier de schéma du modèle d'environnement. Vous pouvez utiliser la `get-environment-template-minor-version` commande pour afficher le schéma du modèle d'environnement.

   Spécification :

   ```
   proton: EnvironmentSpec
   spec:
     ssm_parameter_value: "test"
   ```

   Créez un environnement en exécutant la commande suivante.

   ```
   $ aws proton create-environment \
       --name "{{pr-environment}}" \
       --template-name "{{pr-env-template}}" \
       --template-major-version "{{1}}" \
       --provisioning-repository="branch={{main}},name={{myrepos/env-repo}},provider={{GITHUB}}" \
       --spec "{{file://env-spec.yaml}}"
   ```

   Réponse : >

   ```
   {
       "environment": {
           "arn": "arn:aws:proton:region-id:123456789012:environment/pr-environment",
           "createdAt": "2021-11-18T17:06:58.679000+00:00",
           "deploymentStatus": "IN_PROGRESS",
           "lastDeploymentAttemptedAt": "2021-11-18T17:06:58.679000+00:00",
           "name": "pr-environment",
           "provisioningRepository": {
               "arn": "arn:aws:proton:region-id:123456789012:repository/github:myrepos/env-repo",
               "branch": "main",
               "name": "myrepos/env-repo",
               "provider": "GITHUB"
           },
           "templateName": "pr-env-template"
       }
   ```

1. Passez en revue la demande.
   + Si vous approuvez la demande, le provisionnement est en cours.
   + Si vous rejetez la demande, la création de l'environnement est annulée.
   + Si la pull request expire, la création de l'environnement * n'est pas * terminée.

1. Fournissez de manière asynchrone l'état de provisionnement à. AWS Proton L'exemple suivant indique AWS Proton un provisionnement réussi.

   ```
   $ aws proton notify-resource-deployment-status-change \
       --resource-arn "arn:aws:proton:{{region-id}}:{{123456789012}}:environment/{{pr-environment}}" \
       --status "{{SUCCEEDED}}"
   ```

------