

Avis de fin de support : le 7 octobre 2026, AWS le support de 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 différentes :**
+ Créez, gérez et approvisionnez un environnement standard à l'aide d'un *modèle d'environnement standard*. AWS Proton fournit une infrastructure pour votre environnement.
+ Connectez-vous AWS Proton à une infrastructure gérée par le client à l'aide d'un modèle d'environnement géré par le *client*. Vous provisionnez vos propres ressources partagées en dehors de AWS Proton, puis vous fournissez des sorties de provisionnement qui AWS Proton peuvent être utilisées.

**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 approvisionnez un environnement à partir d'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 seul compte de gestion, créez et gérez un environnement approvisionné sur un autre compte avec des connexions à des comptes d'environnement. AWS Proton approvisionne votre environnement dans l'autre compte. Pour plus d’informations, consultez [Création d'un environnement sur un compte et mise à disposition sur un autre compte](#ag-create-env-deploy-other) et [Connexions aux comptes environnementaux](ag-env-account-connections.md).

  Cette méthode ne prend en charge que les CloudFormation modèles IaC.
+ *Provisionnement autogéré* : AWS Proton envoie des pull requests de provisionnement à un référentiel lié doté de votre propre infrastructure de provisionnement.

  Cette méthode ne prend en charge que les modèles Terraform iAc.
+ *CodeBuild provisionnement* : 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 le AWS Cloud Development Kit (AWS CDK) pour provisionner AWS des 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 approvisionner les composants de cette façon.

Grâce au provisionnement AWS géré (à la fois sur le même compte et vers un autre compte), passez AWS Proton des appels directs pour approvisionner vos ressources.

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

Pour plus d’informations, consultez [Comment AWS Proton approvisionne l'infrastructure](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éation et mise en service d'un environnement standard dans le même compte](#ag-create-env-same-account)
+ [Création d'un environnement sur un compte et mise à disposition sur un autre compte](#ag-create-env-deploy-other)
+ [Création et provisionnement d'un environnement à l'aide d'un provisionnement autogéré](#ag-create-env-pull-request)

## Création et mise en service d'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 approvisionner un environnement dans un seul compte. Le provisionnement est géré par AWS.

------
#### [ AWS Management Console ]

**Utilisez la console pour créer et approvisionner 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 d'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 celui-ci[Configuration des rôles AWS Proton de 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 directement définis de s'exécuter dans l'environnement et limite les ressources qu'ils peuvent fournir. Pour de plus amples informations, veuillez consulter [AWS Proton composants](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. Dans la page **Configurer les paramètres personnalisés de l'environnement**, vous devez entrer 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 définies.

1. Choisissez **Next** et passez en revue 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 détails relatifs à l'environnement.

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

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

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

Les exemples suivants montrent 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 une liste de AWS balises gérées par le client, comme illustré dans l'exemple de commande suivant. AWS Proton génère automatiquement des tags AWS gérés pour vous. Vous pouvez également modifier et créer des balises gérées par le client à 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 sur un compte et mise à disposition sur 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 environnementale dans un autre compte. Le provisionnement est géré par AWS.

**Avant d'utiliser la console ou la CLI, effectuez les étapes suivantes.**

1. Identifiez le compte Compte AWS IDs de gestion et d'environnement et copiez-le 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 CloudFormation](security_iam_service-role-policy-examples.md#proton-svc-role).

------
#### [ AWS Management Console ]

**Utilisez la console pour créer un environnement dans un compte et le 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 **Environment account connections** dans le volet de navigation.

   1. Sur la page de **connexions aux comptes Environment**, choisissez **Request to connect**.
**Note**  
Vérifiez que l'identifiant de compte indiqué 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 **Se connecter 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 **Demande de connexion** dans le coin inférieur droit de la page.

   1. Votre demande apparaît comme étant en attente dans le tableau **des connexions de l'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 **Environment account connections** 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'ID de compte d'environnement correspond à votre identifiant de compte d'environnement pré-identifié.
**Note**  
Vérifiez que l'identifiant de compte indiqué dans l'en-tête de la page de **connexion au compte 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, sélectionnez **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 choisissez **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 au 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éation et provisionnement d'un environnement à l'aide d'un provisionnement autogéré
<a name="ag-create-env-pull-request"></a>

Lorsque vous utilisez le provisionnement autogéré, vous AWS Proton soumettez des pull requests de provisionnement à un référentiel lié doté de votre propre infrastructure de provisionnement. Les pull requests démarrent votre propre flux de travail, qui fait appel à AWS des services, pour fournir une infrastructure.

**Considérations relatives au provisionnement autogéré :**
+ Avant de créer un environnement, configurez un répertoire de ressources de 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 provisionnement 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 avec le. AWS CLI Les exemples suivants montrent comment utiliser le provisionnement autogéré avec Terraform.

------
#### [ AWS Management Console ]

**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 **Choisir 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 provisionnement à AWS Proton](ag-create-repo.md), choisissez **Nouveau référentiel**, choisissez l'un des fournisseurs de référentiels, puis, pour la **CodeStarconnexion**, 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 **Dépôt 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 dans le compte du fournisseur pour le **nouveau** référentiel.

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

1. Dans la section **Paramètres d'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. Dans la page **Configurer les paramètres personnalisés de l'environnement**, vous devez entrer 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 définies.

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

1. Choisissez **Create** 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 le délai d'expiration de la pull request est dépassé, 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 détails relatifs à l'environnement.

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

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

**Utilisez le 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 montrent 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 le délai d'expiration de la pull request est dépassé, la création de l'environnement *n'est pas* terminée.

1. Fournissez de manière asynchrone le statut de provisionnement à. AWS Proton L'exemple suivant indique que le provisionnement a AWS Proton été effectué avec succès.

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

------