

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.

# Mettre à jour un pipeline de services
<a name="ag-svc-pipeline-update"></a>

Apprenez à mettre à jour un pipeline AWS Proton de services et à annuler la mise à jour.

Un pipeline de services appartient à un service. Vous ne pouvez créer ou supprimer un pipeline que dans le contexte des actions de [création](ag-create-svc.md) et de [suppression](ag-svc-delete.md) de services.

Il existe quatre modes de mise à jour d'un pipeline de services, comme décrit dans la liste suivante. Lorsque vous utilisez le AWS CLI, le `deployment-type` champ définit le mode. Lorsque vous utilisez la console, ces modes correspondent au **pipeline d'édition** et au mode **Mettre à jour vers la version recommandée**.

  
`NONE`  
Dans ce mode, aucun déploiement *n'a* lieu. Seuls les paramètres de métadonnées demandés sont mis à jour.

  
`CURRENT_VERSION`  
Dans ce mode, le pipeline de services est déployé et mis à jour avec les nouvelles spécifications que vous fournissez. Seuls les paramètres demandés sont mis à jour. *N'incluez pas* de paramètres de version mineurs ou majeurs lorsque vous l'utilisez`deployment-type`.

  
`MINOR_VERSION`  
Dans ce mode, le pipeline de services est déployé et mis à jour avec la (dernière) version mineure publiée et recommandée de la version majeure actuellement utilisée par défaut. Vous pouvez également spécifier une version mineure différente de la version principale actuellement utilisée.

  
`MAJOR_VERSION`  
Dans ce mode, le pipeline de services est déployé et mis à jour avec la (dernière) version majeure et mineure publiée et recommandée du modèle actuel par défaut. Vous pouvez également spécifier une version majeure différente, supérieure à la version principale utilisée, et une version secondaire (facultatif).

Vous pouvez essayer d'annuler le déploiement d'une mise à jour du pipeline de services si `deploymentStatus` c'est le cas`IN_PROGRESS`. AWS Proton tente d'annuler le déploiement. L'annulation réussie n'est pas garantie.

Lorsque vous annulez le déploiement d'une mise à jour, AWS Proton tente d'annuler le déploiement comme indiqué dans les étapes suivantes.
+ Définit l'état de déploiement sur`CANCELLING`.
+ Arrête le déploiement en cours et supprime toutes les nouvelles ressources créées par le déploiement à quel moment`IN_PROGRESS`.
+ Définit l'état de déploiement sur`CANCELLED`.
+ Rétablit l'état de la ressource tel qu'il était avant le début du déploiement.

Pour plus d'informations sur l'annulation d'un déploiement de pipeline de services, consultez [CancelServicePipelineDeployment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CancelServicePipelineDeployment.html)la *référence des AWS Proton API*.

**Utilisez la console ou AWS CLI pour effectuer des mises à jour ou annuler des déploiements de mises à jour.**

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

**Mettez à jour un pipeline de services à l'aide de la console, comme décrit dans les étapes suivantes.**

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

1. Dans la liste des services, choisissez le nom du service pour lequel vous souhaitez mettre à jour le pipeline.

1. La page détaillée du service comporte deux onglets : **Aperçu** et **Pipeline**. Choisissez **Pipeline**.

1. Si vous souhaitez mettre à jour les spécifications, choisissez **Modifier le pipeline**, remplissez chaque formulaire, puis cliquez sur **Suivant** jusqu'à ce que vous remplissiez le formulaire final, puis choisissez **Mettre à jour le pipeline**.

   Si vous souhaitez effectuer une mise à jour vers une nouvelle version et qu'une **icône d'information** indique qu'une nouvelle version est disponible dans le **modèle de pipeline**, choisissez le nom de la nouvelle version du modèle.

   1. Choisissez **Mettre à jour vers la version recommandée**.

   1. Remplissez chaque formulaire et choisissez **Suivant** jusqu'à ce que vous remplissiez le formulaire final et que vous choisissiez **Mettre à jour**.

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

**Mettez à jour un pipeline de services vers une nouvelle version mineure, comme indiqué dans les exemples de commandes et de réponses de la CLI suivants.**

Lorsque vous mettez à jour votre pipeline de service avec une modification`spec`, vous pouvez l'utiliser `"${Proton::CURRENT_VAL}"` pour indiquer les valeurs de paramètres à conserver par rapport à l'original`spec`, si les valeurs existent dans le`spec`. `get-service`À utiliser pour afficher l'original d'`spec`un pipeline de services, comme décrit dans[Afficher les données de service](ag-svc-view.md).

L'exemple suivant montre comment vous pouvez utiliser `"${Proton::CURRENT_VAL}"` dans un`spec`.

Spécification :

```
proton: ServiceSpec

pipeline:
  my_sample_pipeline_optional_input: "${Proton::CURRENT_VAL}"
  my_sample_pipeline_required_input: "${Proton::CURRENT_VAL}"

instances:
  - name: "my-instance"
    environment: "simple-env"
    spec:
      my_sample_service_instance_optional_input: "${Proton::CURRENT_VAL}"
      my_sample_service_instance_required_input: "${Proton::CURRENT_VAL}"
  - name: "my-other-instance"
    environment: "simple-env"
    spec:
      my_sample_service_instance_required_input: "789"
```

Commande : pour mettre à jour

```
$ aws proton update-service-pipeline \
    --service-name "{{simple-svc}}" \
    --spec "{{file://service-spec.yaml}}" \
    --template-major-version "{{1}}" \
    --template-minor-version "{{1}}" \
    --deployment-type "{{MINOR_VERSION}}"
```

Réponse :

```
{
    "pipeline": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "lastDeploymentAttemptedAt": "2021-04-02T21:39:28.991000+00:00",
        "lastDeploymentSucceededAt": "2021-04-02T21:29:59.962000+00:00",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"my-instance\"\n    environment: \"MySimpleEnv\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"MySimpleEnv\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "templateMajorVersion": "1",
        "templateMinorVersion": "0",
        "templateName": "svc-simple"
    }
}
```

Commande : pour obtenir et confirmer le statut

```
$ aws proton get-service \
    --name "{{simple-svc}}"
```

Réponse :

```
{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc",
        "branchName": "main",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "lastModifiedAt": "2021-04-02T21:30:54.364000+00:00",
        "name": "simple-svc",
        "pipeline": {
            "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
            "createdAt": "2021-04-02T21:29:59.962000+00:00",
            "deploymentStatus": "SUCCEEDED",
            "lastDeploymentAttemptedAt": "2021-04-02T21:39:28.991000+00:00",
            "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
            "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
            "templateMajorVersion": "1",
            "templateMinorVersion": "1",
            "templateName": "svc-simple"
        },
        "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "repositoryId": "repo-name/myorg-myapp",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "status": "ACTIVE",
        "templateName": "svc-simple"
    }
}
```

------

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

**Annulez le déploiement d'un pipeline de services à l'aide de la console, comme indiqué dans les étapes suivantes.**

1. Dans la [AWS Proton console](https://console.aws.amazon.com//proton/), choisissez **Services** dans le volet de navigation.

1. Dans la liste des services, choisissez le nom du service qui possède le pipeline contenant la mise à jour de déploiement que vous souhaitez annuler.

1. Sur la page détaillée du service, choisissez l'onglet **Pipeline**.

1. Si le statut de votre déploiement de mise à jour est **En cours**, sur la page détaillée du pipeline de services, choisissez **Annuler le déploiement**.

1. Un modal vous demande de confirmer l'annulation. Choisissez **Annuler le déploiement**.

1. L'état du déploiement de votre mise à jour est défini sur **Annulation**, puis sur **Annulé** pour terminer l'annulation.

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

**Annulez une mise à jour du déploiement du pipeline de service IN\_PROGRESS vers la version mineure 2, comme indiqué dans les exemples de commandes et de réponses de la CLI suivants.**

Une condition d'attente est incluse dans le modèle utilisé pour cet exemple afin que l'annulation commence avant que le déploiement de la mise à jour ne réussisse.

Commande : pour annuler

```
$ aws proton cancel-service-pipeline-deployment \
    --service-name "{{simple-svc}}"
```

Réponse :

```
{
    "pipeline": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "deploymentStatus": "CANCELLING",
        "lastDeploymentAttemptedAt": "2021-04-02T22:02:45.095000+00:00",
        "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
        "templateMajorVersion": "1",
        "templateMinorVersion": "1",
        "templateName": "svc-simple"
    }
}
```

Commande : pour obtenir et confirmer le statut

```
$ aws proton get-service \
    --name "{{simple-svc}}"
```

Réponse :

```
{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc",
        "branchName": "main",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "lastModifiedAt": "2021-04-02T21:30:54.364000+00:00",
        "name": "simple-svc",
        "pipeline": {
            "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
            "createdAt": "2021-04-02T21:29:59.962000+00:00",
            "deploymentStatus": "CANCELLED",
            "deploymentStatusMessage": "User initiated cancellation.",
            "lastDeploymentAttemptedAt": "2021-04-02T22:02:45.095000+00:00",
            "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
            "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
            "templateMajorVersion": "1",
            "templateMinorVersion": "1",
            "templateName": "svc-simple"
        },
        "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "repositoryId": "repo-name/myorg-myapp",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "status": "ACTIVE",
        "templateName": "svc-simple"
    }
}
```

------