

サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS Proton。2026 年 10 月 7 日以降、 AWS Proton コンソールまたは AWS Proton リソースにアクセスできなくなります。デプロイされたインフラストラクチャはそのまま残ります。詳細については、[AWS Proton 「サービス廃止と移行ガイド](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# サービスパイプラインを更新する
<a name="ag-svc-pipeline-update"></a>

 AWS Proton サービスパイプラインを更新し、更新をキャンセルする方法について説明します。

サービスパイプラインはサービスに属します。パイプラインインスタンスを作成または削除できるのは、サービスの[作成](ag-create-svc.md)および[削除](ag-svc-delete.md)アクションのコンテキスト内のみに限られます。

サービスパイプラインを更新する場合、以下の 4 つのモードがあります。を使用する場合 AWS CLI、 `deployment-type`フィールドは モードを定義します。コンソールを使用する場合、これらのモードは [**Edit pipeline (パイプラインの編集)**] と [**Update to recommended version (推奨バージョンに更新)**] にマップされます。

  
`NONE`  
このモードでは、デプロイは発生*しません*。リクエストしたメタデータパラメータのみが更新されます。

  
`CURRENT_VERSION`  
このモードでは、サービスパイプラインがデプロイされ、指定した新しい仕様に従って更新されます。リクエストしたパラメータのみが更新されます。この `deployment-type` を使用する場合、マイナーバージョンまたはメジャーバージョンのパラメータを*含めない*でください。

  
`MINOR_VERSION`  
このモードでは、デフォルトで、サービスパイプラインは、使用中の現行メジャーバージョンのパブリッシュされた推奨 (最新の) マイナーバージョンでデプロイされ、更新されます。また、使用中の現在のメジャーバージョンについて別のマイナーバージョンを指定することもできます。

  
`MAJOR_VERSION`  
このモードでは、デフォルトで、サービスパイプラインは、パブリッシュされた推奨 (最新の) メジャーバージョンとマイナーバージョンでデプロイされ、更新されます。使用中のメジャーバージョンやマイナーバージョン (オプション) よりも高いメジャーバージョンも指定できます。

`deploymentStatus` が `IN_PROGRESS`. AWS Proton attempts の場合、サービスパイプラインの更新デプロイをキャンセルしようとできます。正常にキャンセルされる保証はありません。

更新デプロイをキャンセルすると、 は次のステップに示すようにデプロイをキャンセル AWS Proton しようとします。
+ デプロイの状態を「`CANCELLING`」に設定します。
+ 処理中のデプロイを停止し、`IN_PROGRESS` の際にデプロイによって作成された新しいリソースを削除します。
+ デプロイの状態を「`CANCELLED`」に設定します。
+ リソースの状態をデプロイが開始される前の状態に戻します。

サービスパイプラインのデプロイをキャンセルする方法の詳細については、『*AWS Proton API リファレンス*』の「[CancelServicePipelineDeployment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CancelServicePipelineDeployment.html)」を参照してください。

**コンソールまたは AWS CLI を使用して、更新を行うか、更新デプロイをキャンセルします。**

------
#### [ AWS マネジメントコンソール ]

**以下で説明する手順に従って、コンソールでサービスパイプラインを更新します。**

1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)で、[**Services (サービス)**] を選択します。

1. サービスの一覧で、更新したいパイプラインを含むサービスの左側にあるラジオボタンを選択します。

1. サービスの詳細ページには、[**Overview (概要)**] と [**Pipeline (パイプライン)**] という 2 つのタブがあります。[**Pipeline (パイプライン)**] を選択します。

1. 仕様を更新したい場合、[**Edit Pipeline (パイプラインの編集)**] を選択して各フォームに必要な値を入力し、最終フォームが完了するまで [**Next (次へ)**] を選択してから [**Update Pipeline (パイプラインの更新)**] を選択します。

   新しいバージョンにアップデートしたい場合に**パイプラインテンプレート**で新しいバージョンが利用可能であることを示す**情報アイコン**が表示されていたら、新しいテンプレートバージョンの名前を選択します。

   1. [**Update to recommended version (推奨バージョンに更新)**] を選択します。

   1. 各フォームに必要な値を入力し、最終フォームが完了するまで [**Next (次へ)**] を選択し、[**Update (更新)**] を選択します。

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

**次の CLI のコマンドとレスポンスの例に示すように、サービスパイプラインを更新して新しいマイナーバージョンにします。**

修正した `spec` でサービスパイプラインを更新する際には、`"${Proton::CURRENT_VAL}"` を使用して `spec` に値が存在する場合に元の `spec` を保存するパラメータ値を指定できます。`get-service` で説明するように、`spec` を使用してサービスパイプラインの元の [サービスデータを表示する](ag-svc-view.md) を表示します。

以下の例は、`"${Proton::CURRENT_VAL}"` での `spec` の使用方法を示します。

仕様:

```
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"
```

コマンド: 更新する

```
$ 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}}"
```

レスポンス:

```
{
    "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"
    }
}
```

コマンド: ステータスを取得して確認する

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

レスポンス:

```
{
    "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 マネジメントコンソール ]

**次の手順に示すように、コンソールでサービスパイプラインのデプロイをキャンセルします。**

1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のサービスナビゲーションペインで [**Services (サービス)**] を選択します。

1. サービスの一覧で、デプロイ更新をキャンセルしたいサービスの名前を選択します。

1. 詳細ページで [**Pipeline (パイプライン)**] タブを選択します。

1. 更新のデプロイステータスが [**In progress (進行中)**] の場合、サービスインスタンスの詳細ページで [**Cancel deployment (デプロイをキャンセル)**] を選択します。

1. キャンセルを確認するメッセージが表示されます。[**Cancel deployment (デプロイをキャンセル)**] を選択します。

1. 更新のデプロイステータスが [**Cancelling (キャンセル中)**] に変わり、キャンセルが完了すると [**Cancelled (キャンセル済み)**] に変わります。

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

**CLI のコマンドとレスポンスの例に示すように、マイナーバージョン 2 への IN\_PROGRESS サービスパイプライン更新をキャンセルします。**

この例で使用するテンプレートには待機条件が含まれており、更新のデプロイが成功する前にキャンセルが開始されます。

コマンド: キャンセルする

```
$ aws proton cancel-service-pipeline-deployment \
    --service-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": "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"
    }
}
```

コマンド: ステータスを取得して確認する

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

レスポンス:

```
{
    "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"
    }
}
```

------