

サポート終了通知: 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)」を参照してください。

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

# の AWS Proton 仕組み
<a name="ag-works"></a>

では AWS Proton、*環境*をプロビジョニングしてから、それらの環境で実行されている*サービスを*プロビジョニングします。環境とサービスは、 AWS Proton それぞれバージョン管理された*テンプレート*ライブラリで選択した環境テンプレートとサービステンプレートに基づいています。

![\[一連の AWS Proton インフラストラクチャリソースのテンプレートバンドルを作成するプロセスを説明する図。\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/works.png)


 ![\[Red circle with the number 1 inside, typically used as a notification icon.\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/label-one.png) 管理者として で環境テンプレートを選択するときは AWS Proton、必要な*入力パラメータ*の値を指定します。

 ![\[Number 2 icon in a pink circle.\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/label-two.png) AWS Proton は環境テンプレートとパラメータ値を使用して環境をプロビジョニングします。

 ![\[Pink square icon with a white exclamation mark inside a circle.\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/label-three.png) 開発者または管理者として、 でサービステンプレートを選択するときは AWS Proton、必要な入力パラメータの値を指定します。アプリケーションまたはサービスをデプロイする環境も選択します。

 ![\[Number 4 in a red circle icon, commonly used to indicate a notification count.\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/label-four.png) AWS Proton は、サービステンプレート、サービスと選択した環境パラメータ値の両方を使用してサービスをプロビジョニングします。

入力パラメータの値を指定することで再利用するテンプレートおよび複数のユースケース、アプリケーション、またはサービスをカスタマイズできます。

これを機能させるには、環境またはサービステンプレートバンドルを作成し、登録済みの環境またはサービステンプレートにそれぞれアップロードします。

[テンプレートバンドル](ag-template-authoring.md#ag-template-bundles)には、環境またはサービスをプロビジョニング AWS Proton するために必要なものがすべて含まれています。

環境やサービスのテンプレートを作成するとき、 AWS Proton が環境やサービスのプロビジョニングに使用するパラメトリック Infrastructure as Code (IaC) ファイルがあるテンプレートバンドルをアップロードします。

環境またはサービステンプレートを選択して環境またはサービスを作成または更新する場合、テンプレートバンドル iaC ファイルパラメータの値を指定します。

**Topics**
+ [AWS Proton オブジェクト](ag-works-objects.md)
+ [がインフラストラクチャを AWS Proton プロビジョニングする方法](ag-works-prov-methods.md)
+ [AWS Proton 用語](terminology.md)

# AWS Proton オブジェクト
<a name="ag-works-objects"></a>

次の図は、メイン AWS Proton オブジェクトとその他のオブジェクト AWS やサードパーティーオブジェクトとの関係を示しています。矢印はデータフローの方向 (依存関係の逆方向) を表しています。

これらの AWS Proton オブジェクトの簡単な説明とリファレンスリンクを含む図に従います。

![\[での AWSマネージドプロビジョニングを示す図 AWS Proton\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/object-diagram.png)

+ **環境テンプレート** — AWS Proton 環境の作成に使用できる環境テンプレートバージョンのコレクションです。

  詳細については、「[テンプレートのオーサリングとバンドル](ag-template-authoring.md)」および「[AWS Proton テンプレート](ag-templates.md)」を参照してください。
+ **環境テンプレートバージョン** — 環境テンプレートの特定のバージョンです。S3 バケットまたは Git リポジトリから*テンプレートバンドル*を入力として受け取ります。バンドルは、 AWS Proton 環境の Infrastructure as Code (IaC) および関連する入力パラメータを指定します。

  詳細については[バージョン付きテンプレート](ag-template-versions.md)、[テンプレートを登録してパブリッシュする](template-create.md)、および[テンプレートの同期設定](ag-template-sync-configs.md)を参照してください。
+ **環境** – AWS Proton サービスがデプロイされる一連の共有 AWS インフラストラクチャリソースとアクセスポリシー。 AWS リソースは、特定のパラメータ値で呼び出される環境テンプレートバージョンを使用してプロビジョニングされます。アクセスポリシーはサービスロールで提供されます。

  詳細については、「[AWS Proton 環境](ag-environments.md)」を参照してください。
+ **サービステンプレート** — AWS Proton サービスの作成に使用できるサービステンプレートバージョンのコレクションです。

  詳細については、「[テンプレートのオーサリングとバンドル](ag-template-authoring.md)」および「[AWS Proton テンプレート](ag-templates.md)」を参照してください。
+ **サービステンプレートのバージョン** - サービステンプレートの特定のバージョン。S3 バケットまたは Git リポジトリから*テンプレートバンドル*を入力として受け取ります。バンドルは、 AWS Proton サービスの Infrastructure as Code (IaC) および関連する入力パラメータを指定します。

  サービステンプレートバージョンでは、バージョンに基づいてサービスインスタンスに対する以下の制約も指定します。
  + **互換性のある環境テンプレート** — インスタンスは、互換性のある環境テンプレートに基づく環境のみで実行できます。
  + **サポートされているコンポーネントソース** — 開発者がインスタンスに関連付けることができるコンポーネントのタイプ。

  詳細については、「[バージョン付きテンプレート](ag-template-versions.md)」、「[テンプレートを登録してパブリッシュする](template-create.md)」、および「[テンプレートの同期設定](ag-template-sync-configs.md)」を参照してください。
+ **サービス** — サービステンプレートで指定したリソースを使用してアプリケーションを実行するサービスインスタンスのコレクションであり、オプションとして、アプリケーションコードをこれらのインスタンスにデプロイする CI/CD パイプラインがあります。

  この図では、**サービステンプレート**からの破線は、サービスがサービスインスタンスとパイプラインにテンプレートを渡していることを示しています。

  詳細については、「[AWS Proton サービス](ag-services.md)」を参照してください。
+ **サービスインスタンス** – 特定の AWS Proton 環境でアプリケーションを実行する AWS インフラストラクチャリソースのセット。 AWS リソースは、特定のパラメータ値で呼び出されるサービステンプレートバージョンを使用してプロビジョニングされます。

  詳細については、「[AWS Proton サービス](ag-services.md)」および「[サービスインスタンスを更新する](ag-svc-instance-update.md)」を参照してください。
+ **パイプライン** — サービスのインスタンスにアプリケーションをデプロイするオプションの CI/CD パイプライン。このパイプラインをプロビジョニングするためのアクセスポリシーも付いています。アクセスポリシーはサービスロールで提供されます。サービスには常にパイプラインが関連付け AWS Proton られているわけではありません。 の外部でアプリケーションコードのデプロイを管理できます AWS Proton。

  この図では、**Service** の破線と **Pipeline** の周りの破線は、CI/CD デプロイを自分で管理することを選択した場合、 AWS Proton パイプラインが作成されず、独自のパイプラインが AWS アカウント内にない可能性があることを意味します。

  詳細については、「[AWS Proton サービス](ag-services.md)」および「[サービスパイプラインを更新する](ag-svc-pipeline-update.md)」を参照してください。
+ **コンポーネント** — 開発者が定義したサービスインスタンスの拡張です。環境とサービスインスタンスによって提供されるリソースに加えて、特定のアプリケーションに必要な追加の AWS インフラストラクチャリソースを指定します。プラットフォームチームは、コンポーネントがプロビジョニングできるインフラストラクチャを、コンポーネントロールを環境にアタッチして制御します。

  詳細については、「[AWS Proton コンポーネント](ag-components.md)」を参照してください。

# がインフラストラクチャを AWS Proton プロビジョニングする方法
<a name="ag-works-prov-methods"></a>

AWS Proton は、次のいずれかの方法でインフラストラクチャをプロビジョニングできます。
+ **AWSマネージドプロビジョニング** – ユーザーに代わってプロビジョニングエンジンを AWS Proton 呼び出します。この方法は AWS CloudFormation テンプレートバンドルのみをサポートします。詳細については、「[CloudFormation IaC ファイル](ag-infrastructure-tmp-files-cloudformation.md)」を参照してください。
+ **CodeBuild プロビジョニング** – 指定したシェルコマンドを実行する AWS CodeBuild ために AWS Proton を使用します。コマンドは、 AWS Proton が提供する入力を読み取ることができ、インフラストラクチャのプロビジョニングまたはプロビジョニング解除と出力値の生成を担当します。この方法のテンプレートバンドルには、マニフェストファイル内のあなたのコマンドと、これらのコマンドで必要になるプログラム、スクリプト、またはその他のファイルが含まれます。

  CodeBuild プロビジョニングを使用する例として、 を使用して AWS リソース AWS Cloud Development Kit (AWS CDK) をプロビジョニングするコードと、CDK をインストールして CDK コードを実行するマニフェストを含めることができます。

  詳細については、「[CodeBuild プロビジョニングテンプレートバンドル](ag-infrastructure-tmp-files-codebuild.md)」を参照してください。
**注記**  
CodeBuild プロビジョニングは環境とサービスで使用できます。現時点では、この方法でコンポーネントをプロビジョニングすることはできません。
+ **セルフマネージドプロビジョニング** – 指定したリポジトリにプルリクエスト (PR) AWS Proton を発行し、独自のインフラストラクチャデプロイシステムがプロビジョニングプロセスを実行します。この方法は Terraform テンプレートバンドルのみをサポートします。詳細については、「[Terraform IaC ファイル](ag-infrastructure-tmp-files-terraform.md)」を参照してください。

AWS Proton は、環境とサービスのプロビジョニング方法を個別に決定して設定します。環境またはサービスを作成または更新するとき、 AWS Proton はあなたが提供したテンプレートバンドルを調べ、テンプレートバンドルが示すプロビジョニング方法を決定します。環境レベルでは、AWS Identity and Access Management (IAM) ロール、環境アカウント接続、インフラストラクチャリポジトリなど、環境とその潜在的なサービスがプロビジョニング方法に必要なパラメータを指定します。

 AWS Proton を使用してサービスをプロビジョニングするデベロッパーは、プロビジョニング方法に関係なく同じエクスペリエンスが得られます。開発者はプロビジョニング方法を意識する必要はなく、サービスのプロビジョニングプロセスのいかなる要素も変更する必要はありません。サービステンプレートはプロビジョニング方法を設定します。また、開発者がサービスをデプロイする各環境は、サービスインスタンスのプロビジョニングに必要なパラメータを提供します。

次の図は、さまざまなプロビジョニング方法の主な特徴をまとめたものです。表の後のセクションでは、各方法の詳細を説明します。


| プロビジョニング方法 |  テンプレート | プロビジョニング実行者 | ステータス追跡者 | 
| --- | --- | --- | --- | 
| AWSによる管理 | マニフェスト、スキーマ、IaC ファイル (CloudFormation) | AWS Proton (CloudFormation 経由) | AWS Proton (CloudFormation 経由) | 
| CodeBuild | マニフェスト (コマンドを使用）、スキーマ、コマンドの依存関係 ( AWS CDK コードなど) | AWS Proton (CodeBuild 経由) | AWS Proton (コマンドは CodeBuild を介してステータスを返します) | 
| 自己管理 | マニフェスト、スキーマ、IaC ファイル (Terraform) | コード (Git アクション経由) | コード (API コール AWS を介して に渡されます) | 

## AWSマネージドプロビジョニングの仕組み
<a name="ag-works-prov-methods-direct"></a>

環境またはサービスが AWSマネージドプロビジョニングを使用する場合、インフラストラクチャは次のようにプロビジョニングされます。

1.  AWS Proton 顧客 (管理者または開発者) が AWS Proton リソース (環境またはサービス) を作成します。カスタマーは、リソースのテンプレートを選択し、必要なパラメータを指定します。詳細については、次の「[AWSマネージドプロビジョニングに関する考慮事項](#ag-works-prov-methods-direct-consider)」セクションを参照してください。

1. AWS Proton は、リソースをプロビジョニングするための完全な CloudFormation テンプレートをレンダリングします。

1. AWS Proton を呼び出し CloudFormation て、レンダリングされたテンプレートを使用してプロビジョニングを開始します。

1. AWS Proton は CloudFormation デプロイを継続的にモニタリングします。

1. プロビジョニングが完了すると、 は障害発生時にエラー AWS Proton を報告し、Amazon VPC ID などのプロビジョニング出力を成功時にキャプチャします。

次の図は、 AWS Proton がこれらのステップのほとんどを直接処理することを示しています。

![\[での AWSマネージドプロビジョニングを示す図 AWS Proton\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/provisioning-direct.png)


### AWSマネージドプロビジョニングに関する考慮事項
<a name="ag-works-prov-methods-direct-consider"></a>
+ *インフラストラクチャプロビジョニングロール* – 環境またはそこで実行されているサービスインスタンスが AWSマネージドプロビジョニングを使用する場合、管理者は (直接または AWS Proton 環境アカウント接続の一部として) IAM ロールを設定する必要があります。 はこのロール AWS Proton を使用して、これらの AWSマネージドプロビジョニングリソースのインフラストラクチャをプロビジョニングします。ロールには、これらのリソースのテンプレートに含まれるすべてのリソースを作成 CloudFormation するために使用するアクセス許可が必要です。

  詳細については、「[IAM ロール](ag-environment-roles.md)」および「[AWS Proton IAM サービスロールポリシーの例](security_iam_service-role-policy-examples.md)」を参照してください。
+ *サービスプロビジョニング* – 開発者が AWSマネージドプロビジョニングを使用するサービスインスタンスを環境にデプロイすると、 はその環境に提供されるロール AWS Proton を使用してサービスインスタンスのインフラストラクチャをプロビジョニングします。開発者にはこのロールは表示されず、変更することもできません。
+ *パイプラインを使用したサービス* – AWSマネージドプロビジョニングを使用するサービステンプレートには、YAML CloudFormation スキーマに書き込まれたパイプライン定義が含まれる場合があります。 AWS Proton また、 は を呼び出してパイプラインを作成します CloudFormation。がパイプラインの作成 AWS Proton に使用するロールは、個々の環境のロールとは別です。このロールは、 AWS アカウントレベルで 1 回のみ AWS Proton 個別に に提供され、オール AWSマネージドパイプラインのプロビジョニングと管理に使用されます。このロールには、パイプラインやパイプラインに必要なその他のリソースを作成する権限が必要です。

  次の手順では、 AWS Protonにパイプラインロールを指定する方法を示します。

------
#### [ AWS Proton console ]

**パイプラインロールを指定する**

  1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のナビゲーションペインで、[**設定] > [アカウント設定**] を選択し、[**設定**] を選択します。

  1. **Pipeline AWSマネージドロール**セクションを使用して、 AWSマネージドプロビジョニング用の新規または既存のパイプラインロールを設定します。

------
#### [ AWS Proton API ]

**パイプラインロールを提供する**

  1. [UpdateAccountSettings](https://docs.aws.amazon.com/proton/latest/APIReference/API_UpdateAccountSettings.html) API アクションを使用してください。

  1. `pipelineServiceRoleArn` パラメータでパイプラインサービスロールの Amazon リソースネーム (ARN) を指定します。

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

  **パイプラインロールを指定する**

  次のコマンドを実行してください。

  ```
  $ aws proton update-account-settings \
      --pipeline-service-role-arn \
          "arn:aws:iam::123456789012:role/my-pipeline-role"
  ```

------

## CodeBuild プロビジョニングの働き
<a name="ag-works-prov-methods-codebuild"></a>

環境またはサービスで CodeBuild プロビジョニングが使用される場合、インフラストラクチャは次のようにプロビジョニングされます。

1.  AWS Proton 顧客 (管理者または開発者) が AWS Proton リソース (環境またはサービス) を作成します。カスタマーは、リソースのテンプレートを選択し、必要なパラメータを指定します。詳細については、次の「[CodeBuild プロビジョニングに関する考慮事項](#ag-works-prov-methods-codebuild-consider)」セクションを参照してください。

1. AWS Proton は、リソースをプロビジョニングするための入力パラメータ値を含む入力ファイルをレンダリングします。

1. AWS Proton は CodeBuild を呼び出してジョブを開始します。CodeBuild ジョブは、テンプレートで指定されたカスタマーシェルコマンドを実行します。これらのコマンドは必要なインフラストラクチャをプロビジョニングし、オプションで入力値を読み取ります。

1. プロビジョニングが完了すると、最後のカスタマーコマンドはプロビジョニングステータスを CodeBuild に返し、[NotifyResourceDeploymentStatusChange](https://docs.aws.amazon.com/proton/latest/APIReference/API_NotifyResourceDeploymentStatusChange.html) AWS Proton API アクションを呼び出して、Amazon VPC ID などの出力があればそれを提供します。
**重要**  
コマンドでプロビジョニングステータスが正しく CodeBuild に返り、出力が提供されたことを確認してください。そうでない場合、 AWS Proton はプロビジョニングステータスを適切に追跡できず、サービスインスタンスに正しい出力を提供できません。

次の図は、 が AWS Proton 実行するステップと、CodeBuild ジョブ内でコマンドが実行するステップを示しています。

![\[での CodeBuild ベースのプロビジョニングを示す図 AWS Proton\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/provisioning-codebuild.png)


### CodeBuild プロビジョニングに関する考慮事項
<a name="ag-works-prov-methods-codebuild-consider"></a>
+ *インフラストラクチャプロビジョニングロール* – 環境またはそこで実行されているサービスインスタンスが CodeBuild ベースのプロビジョニングを使用する場合、管理者は (直接または AWS Proton 環境アカウント接続の一部として) IAM ロールを設定する必要があります。 はこのロール AWS Proton を使用して、これらの CodeBuild プロビジョニングリソースのインフラストラクチャをプロビジョニングします。ロールには、CodeBuild を使用して、これらのリソースのテンプレート内のコマンドによって提供されるすべてのリソースを作成するための権限が必要です。

  詳細については、「[IAM ロール](ag-environment-roles.md)」および「[AWS Proton IAM サービスロールポリシーの例](security_iam_service-role-policy-examples.md)」を参照してください。
+ *サービスプロビジョニング* – 開発者が CodeBuild プロビジョニングを使用するサービスインスタンスを環境にデプロイすると、 はその環境に提供されるロール AWS Proton を使用してサービスインスタンスのインフラストラクチャをプロビジョニングします。開発者にはこのロールは表示されず、変更することもできません。
+ *パイプラインを使用したサービス* – CodeBuild プロビジョニングを使用するサービステンプレートには、パイプラインをプロビジョニングするためのコマンドが含まれている場合があります。 AWS Proton また、 は CodeBuild を呼び出してパイプラインを作成します。がパイプラインの作成 AWS Proton に使用するロールは、個々の環境のロールとは別です。このロールは、 AWS アカウントレベルで 1 回のみ AWS Proton 個別に に提供され、すべての CodeBuild ベースのパイプラインのプロビジョニングと管理に使用されます。このロールには、パイプラインやパイプラインに必要なその他のリソースを作成する権限が必要です。

  次の手順では、 AWS Protonにパイプラインロールを指定する方法を示します。

------
#### [ AWS Proton console ]

**パイプラインロールを指定する**

  1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のナビゲーションペインで、[**設定] > [アカウント設定**] を選択し、[**設定**] を選択します。

  1. **Codebuild パイプラインプロビジョニングロール**セクションを使用して、CodeBuild プロビジョニング用の新規または既存のパイプラインロールを設定します。

------
#### [ AWS Proton API ]

**パイプラインロールを提供するには**

  1. [UpdateAccountSettings](https://docs.aws.amazon.com/proton/latest/APIReference/API_UpdateAccountSettings.html) API アクションを使用してください。

  1. `pipelineCodebuildRoleArn` パラメータでパイプラインサービスロールの Amazon リソースネーム (ARN) を指定します。

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

  **パイプラインロールを指定する**

  次のコマンドを実行してください。

  ```
  $ aws proton update-account-settings \
      --pipeline-codebuild-role-arn \
          "arn:aws:iam::123456789012:role/my-pipeline-role"
  ```

------

## セルフマネージド型のプロビジョニングの働き
<a name="ag-works-prov-methods-self"></a>

セルフマネージド型プロビジョニングを使用するように環境を設定すると、インフラストラクチャは次のようにプロビジョニングされます。

1.  AWS Proton 顧客 (管理者または開発者) が AWS Proton リソース (環境またはサービス) を作成します。カスタマーはリソースのテンプレートを選択し、必要なパラメータを指定します。環境については、カスタマーはリンクされたインフラストラクチャリポジトリも提供します。詳細については、次の「[セルフマネージドプロビジョニングに関する考慮事項](#ag-works-prov-methods-self-consider)」セクションを参照してください。

1. AWS Proton は完全な Terraform テンプレートをレンダリングします。これは、複数のフォルダにある可能性のある 1 つ以上の Terraform ファイルと、この`.tfvars`変数ファイルへのリソース作成呼び出しで提供される変数 file. AWS Proton writes パラメータ値で構成されます。

1. AWS Proton は、レンダリングされた Terraform テンプレートを使用してインフラストラクチャリポジトリに PR を送信します。

1. カスタマー (管理者または開発者) が PR をマージすると、カスタマーの自動化コードによってプロビジョニングエンジンがトリガーされ、マージされたテンプレートでインフラストラクチャのプロビジョニングが開始されます。
**注記**  
顧客 (管理者または開発者) が PR を閉じると、 は PR をクローズとして AWS Proton 認識し、デプロイをキャンセル済みとしてマークします。

1. プロビジョニングが完了すると、お客様のオートメーションは [NotifyResourceDeploymentStatusChange](https://docs.aws.amazon.com/proton/latest/APIReference/API_NotifyResourceDeploymentStatusChange.html) AWS Proton API アクションを呼び出して、完了を示し、ステータス (成功または失敗) を指定し、Amazon VPC ID などの出力があればそれを提供します。
**重要**  
オートメーションコードがプロビジョニングステータスと出力 AWS Proton で を呼び出すことを確認します。そうでない場合は、プロビジョニングを必要以上に長く保留中と見なし、**進行中**ステータスを表示し続ける AWS Proton ことができます。

次の図は、 が AWS Proton 実行するステップと、独自のプロビジョニングシステムが実行するステップを示しています。

![\[でのセルフマネージドプロビジョニングを示す図 AWS Proton\]](http://docs.aws.amazon.com/ja_jp/proton/latest/userguide/images/provisioning-self.png)


### セルフマネージドプロビジョニングに関する考慮事項
<a name="ag-works-prov-methods-self-consider"></a>
+ *インフラストラクチャリポジトリ* – 管理者がセルフマネージドプロビジョニング用に環境を設定する場合、リンクされたインフラストラクチャリポジトリを提供する必要があります。 はこのリポジトリに PRs AWS Proton を送信して、環境のインフラストラクチャとその環境にデプロイされているすべてのサービスインスタンスをプロビジョニングします。リポジトリ内の顧客所有のオートメーションアクションは、環境およびサービステンプレートに含まれるすべてのリソースを作成するアクセス許可を持つ IAM ロールと、送信先 AWS アカウントを反映する ID を引き受ける必要があります。ロールを引き受ける GitHub Action の例については、GitHub Actions の[「認証情報の設定」アクションドキュメントの「ロールの引き受け](https://github.com/aws-actions/configure-aws-credentials#assuming-a-role)」を参照してください。 * AWS GitHub * 
+ アクセス*許可* – プロビジョニングコードは、必要に応じてアカウントで認証し (たとえば、 AWS アカウントへの認証）、リソースプロビジョニング認可を提供する (たとえば、ロールを提供する) 必要があります。
+ *サービスプロビジョニング* – 開発者がセルフマネージドプロビジョニングを使用するサービスインスタンスを環境にデプロイすると、 は環境に関連付けられたリポジトリに PR AWS Proton を送信して、サービスインスタンスのインフラストラクチャをプロビジョニングします。開発者にはこのリポジトリは表示されず、変更することもできません。
**注記**  
サービスを作成する開発者は、プロビジョニング方法に関係なく同じプロセスを使用するため、違いは取り除かれています。ただし、セルフマネージドプロビジョニングでは、誰か (自分ではない場合もある) がインフラストラクチャリポジトリ内の PR をマージするまでプロビジョニングの開始を待たなければならないため、開発者への応答が遅くなるおそれがあります。
+ *パイプラインを使用したサービス* – セルフマネージドプロビジョニングを使用する環境のサービステンプレートには、Terraform HCL で記述された AWS CodePipeline パイプライン定義 (パイプラインなど) が含まれる場合があります。がこれらのパイプライン AWS Proton をプロビジョニングできるように、管理者はリンクされたパイプラインリポジトリを提供します AWS Proton。パイプラインをプロビジョニングする場合、リポジトリ内の顧客所有のオートメーションアクションは、パイプラインをプロビジョニングするアクセス許可を持つ IAM ロールと、送信先 AWS アカウントを反映する ID を引き受ける必要があります。パイプラインのリポジトリとロールは、個々の環境で使用されるロールからは切り離されています。リンクされたリポジトリは、 AWS アカウントレベルで 1 回のみ AWS Proton 個別に に提供され、すべてのパイプラインのプロビジョニングと管理に使用されます。ロールには、パイプラインやパイプラインに必要なその他のリソースを作成する権限が必要です。

  次の手順では、 AWS Protonにパイプラインリポジトリとロールを提供する方法を示します。

------
#### [ AWS Proton console ]

**パイプラインロールを指定する**

  1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のナビゲーションペインで、[**設定] > [アカウント設定**] を選択し、[**設定**] を選択します。

  1. **CI/CD パイプラインリポジトリ**セクションを使用して、新規または既存のリポジトリリンクを設定します。

------
#### [ AWS Proton API ]

**パイプラインロールを提供する**

  1. [UpdateAccountSettings](https://docs.aws.amazon.com/proton/latest/APIReference/API_UpdateAccountSettings.html) API アクションを使用してください。

  1. `pipelineProvisioningRepository` パラメータには、パイプラインリポジトリのプロバイダー、名前、ブランチを指定します。

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

  **パイプラインロールを指定する**

  次のコマンドを実行してください。

  ```
  $ aws proton update-account-settings \
      --pipeline-provisioning-repository \
          "provider=GITHUB,name=my-pipeline-repo-name,branch=my-branch"
  ```

------
+ *セルフマネージドプロビジョニング済みリソースの削除* — Terraform モジュールには、リソース定義に加えて、Terraform の運用に必要な設定要素が含まれる場合があります。したがって、 AWS Proton は環境またはサービスインスタンスのすべての Terraform ファイルを削除することはできません。代わりに、 はファイルを削除対象として AWS Proton マークし、PR メタデータのフラグを更新しました。あなたの自動化機能はそのフラグを読み取り、そのフラグで terraform destroy コマンドをトリガーできます。

# AWS Proton 用語
<a name="terminology"></a>

**環境テンプレート**  
複数のアプリケーションまたはリソースで使用される共有インフラストラクチャ (VPC またはクラスターなど) を定義します。

**環境テンプレートバンドル**  
 AWS Protonで環境テンプレートを作成し、登録するためにアップロードするファイルのコレクション。テンプレートバンドルには以下が含まれます。  

1. Infrastructure as Code 入力パラメータを定義するスキーマファイル。

1. VPC やクラスターなど、複数のアプリケーションまたはリソースで使用される共有インフラストラクチャを定義するコードとしての Infrastructure as Code (IaC) ファイル。

1. IaC ファイルのリストを示すマニフェストファイル。

**環境**  
VPC またはクラスターなど、複数のアプリケーションまたはリソースで使用されるプロビジョニングされた共有インフラストラクチャ。

**サービステンプレート**  
環境内のアプリケーションまたはマイクロサービスをデプロイおよび維持するために必要なインフラストラクチャのタイプを定義します。

**サービステンプレートバンドル**  
 AWS Protonでサービステンプレートを作成し、登録するためにアップロードするファイルのコレクション。サービステンプレートバンドルには以下が含まれます。  

1. Infrastructure as Code (IaC) 入力パラメータを定義するスキーマファイル。

1. 環境内のアプリケーションまたはマイクロサービスをデプロイおよび維持するうえで必要なインフラストラクチャを定義する IaC ファイル。

1. IaC ファイルのリストを示すマニフェストファイル。

1. オプションです。

   1. サービスパイプラインインフラストラクチャを定義する IaC ファイル。

   1. IaC ファイルのリストを示すマニフェストファイル。

**サービス**  
 環境内のアプリケーションやマイクロサービスをデプロイし、維持するうえで必要なプロビジョニングされたインフラストラクチャ。

**サービスインスタンス**  
環境内のアプリケーションまたはマイクロサービスをサポートするプロビジョニングされたインフラストラクチャ。

**サービスパイプライン**  
パイプラインをサポートするプロビジョニングされたインフラストラクチャ。

**テンプレートのバージョン**  
テンプレートのメジャーバージョンまたはマイナーバージョン。詳細については、「[バージョン付きテンプレート](ag-template-versions.md)」を参照してください。

**入力パラメータ**  
スキーマファイルで定義され、Infrastructure as Code (IaC) ファイルとして使用されるので、iaC ファイルはさまざまなユースケースに繰り返し使用できます。

**スキーマファイル**  
Infrastructure as Code ファイル入力パラメータを定義します。

**仕様ファイル**  
スキーマファイルに定義されているように、インフラストラクチャの値をコードファイル入力パラメータとして指定します。

**マニフェストファイル**  
Infrastructure as Code ファイルの一覧を表示します。