テンプレートを登録してパブリッシュする - AWS Proton

テンプレートを登録してパブリッシュする

以下のセクションで説明するように、環境テンプレートとサービステンプレートは AWS Proton に登録してパブリッシュできます。

コンソールまたは AWS CLI で新しいテンプレートのバージョンを作成できます。

または、コンソールまたは AWS CLI を使用してテンプレートを作成し、テンプレート同期を設定できます。この設定は、AWS Proton に、定義された登録済みの Git リポジトリにあるテンプレートバンドルからの同期を指示します。あなたのテンプレートバンドルのいずれかを変更するコミットがあなたのリポジトリにプッシュされるたびに、あなたのテンプレートの新しいマイナーバージョンまたはメジャーバージョンが (まだ存在しなければ) 作成されます。テンプレート同期設定の前提条件と要件の詳細については、「テンプレートの同期設定」を参照してください。

環境テンプレートの登録とパブリッシュ

次のタイプの環境テンプレートを登録してパブリッシュできます。

  • 標準環境テンプレートを登録してパブリッシュし、AWS Proton で環境インフラストラクチャをデプロイし、管理する際に使用します。

  • カスタマーマネージド環境テンプレートを登録してパブリッシュし、あなたが管理するプロビジョニングされたあなたの既存インフラストラクチャに AWS Proton が接続する際に使用します。AWS Proton はプロビジョニングされた既存のあなたのインフラは管理しません

重要

管理者としてあなたは、自分でプロビジョニングしたマネージドインフラストラクチャとすべての出力パラメータに、関連付けられたカスタマーマネージド環境テンプレートとの互換性があることを確認します。これらの変更は AWS Proton には認識されないので、AWS Proton はあなたに代わって変更を考慮に入れることはできません。一貫性がない場合、結果はエラーになります。

コンソールや AWS CLI で、環境テンプレートを登録してパブリッシュします。

AWS Management Console
コンソールで、新しい環境テンプレートを登録してパブリッシュします。
  1. AWS Proton コンソールで [Environment templates (環境テンプレート)] を選択します。

  2. [Create Environment template] (環境テンプレートの作成) を選択します。

  3. [Create environment template (環境テンプレートを作成する)] ページの [Template options (テンプレートオプション)] セクションで利用可能な 2 つのテンプレートオプションのいずれかを選択します。

    • Create a template for provisioning new environments (新しい環境をプロビジョニング用のテンプレートを作成する)

    • 管理しようとするプロビジョニングされたインフラストラクチャを使用するテンプレートを作成します

  4. [Create a template for provisioning new environments (新しい環境のプロビジョニング用のテンプレートを作成する)] を選択した場合、[Template bundle source (テンプレートバンドルソース)] セクションで利用可能な 3 つのテンプレートバンドルソースオプションのいずれかを選択します。テンプレートの同期に関する要件と前提条件については、「テンプレートの同期設定」を参照してください。

    • Use one of our sample template bundles (サンプルテンプレートバンドルのいずれかを使用する)

    • Use your own template bundle (独自のテンプレートバンドルを使用する)

    • Sync templates from Git (Git からテンプレートを同期する)

  5. テンプレートバンドルのパスを指定します。
    1. [Use one of our sample template bundles (サンプルテンプレートバンドルのいずれかを使用する)] を選択した場合:

      [Sample template bundle (サンプルテンプレートバンドル)] セクションでサンプルテンプレートバンドルを選択します。

    2. [Sync templates from Git (Git からテンプレートを同期する)] を選択した場合、[Source code (ソースコード)] セクションで以下の操作をします。

      1. テンプレート同期設定のリポジトリを選択します。

      2. 同期するリポジトリブランチの名前を入力します。

      3. (オプション) ディレクトリ名を入力して、テンプレートバンドルの検索を制限します。

    3. それ以外の場合、[S3 bundle location (S3 バンドルの場所)] セクションでテンプレートバンドルのパスを指定します。

  6. [Template details (テンプレートの詳細]) セクションで以下の操作をします。

    1. テンプレート名を入力します。

    2. (オプション) [Template display name] にテンプレート表示名を入力します。

    3. (オプション) [Template description] に環境テンプレートの説明を入力します。

  7. (オプション) [Encryption settings (暗号化設定)] セクションの [Customize encryption settings (advanced) (暗号化設定のカスタマイズ (アドバンスト))] のチェックボックスをオンにして、あなた自身の暗号化キーを提供します。

  8. (オプション) [Tags (タグ)] セクションで [Add new tag (新しいタグを追加)] を選択し、キーと値を入力してカスタマーマネージドタグを作成します。

  9. [Create Environment template (環境テンプレートの作成)] を選択します。

    新しいページが開き、新しい環境テンプレートのステータスと詳細が表示されます。これらの詳細情報には、AWS とカスタマーマネージドタグのリストが含まれます。AWS Proton は AWS Proton リソースを作成すると、自動的に AWS マネージドタグを作成します。詳細については、「AWS Proton リソースとタグ付け」を参照してください。

  10. 新しい環境テンプレートのステータスは [Draft (ドラフト)] から始まります。表示やアクセスできるのは、自分と自分以外の proton:CreateEnvironment アクセス許可があるユーザーです。次の手順に従って、テンプレートを自分以外のユーザーが使用できるようにします。

  11. [Template versions (テンプレートのバージョン)] セクションで、先ほど作成したテンプレートのマイナーバージョン (1.0) の左側にあるラジオボタンを選択します。別の方法としては、情報アラートで [Publish (パブリッシュ)] を選択して次のステップをスキップします。

  12. [Template versions] (テンプレートのバージョン) セクションで [Publish] (パブリッシュ) を選択します。

  13. テンプレートのステータスが [Published] (パブリッシュ) に変わります。最新バージョンのテンプレートなので、これは [Recommended (推奨)] バージョンです。

  14. ナビゲーションペインで [Environment templates (環境テンプレート)] を選択して環境テンプレートと詳細の一覧を表示します。

コンソールを使用して、環境テンプレートの新しいメジャーバージョンとマイナーバージョンを登録します。

詳細については、「バージョン付きテンプレート」を参照してください。

  1. AWS Proton コンソールで [Environment Templates (環境テンプレート)] を選択します。

  2. 環境テンプレートのリストで、メジャーバージョンまたはマイナーバージョンを作成したい環境テンプレートの名前を選択します。

  3. 環境テンプレートの詳細ビューの [Template version (テンプレートのバージョン)] セクションで [Create new version (新しいバージョンの作成)] を選択します。

  4. [Create a new environment template version (新しい環境テンプレートバージョンを作成する)] ページの [Template bundle source (テンプレートバンドルソース)] セクションで利用可能な 2 つのテンプレートバンドルソースオプションのいずれかを選択します。

    • Use one of our sample template bundles (サンプルテンプレートバンドルのいずれかを使用する)

    • Use your own template bundle (独自のテンプレートバンドルを使用する)

  5. 選択したテンプレートバンドルのパスを指定します。

    • [Use one of our sample template bundles (サンプルテンプレートバンドルのいずれかを使用する)] を選択したば場合、[Sample template bundle (サンプルテンプレートバンドル)] セクションでサンプルテンプレートバンドルを選択します。

    • [Use your own template bundle (独自のテンプレートバンドルを使用する)] を選択した場合、[S3 bundle location (S3 バンドルの場所)] セクションでテンプレートバンドルのパスを選択します。

  6. [Template details (テンプレートの詳細)] セクションで以下の操作をします。

    1. (オプション) [Template display name] にテンプレート表示名を入力します。

    2. (オプション) [Template description] にサービステンプレートの説明を入力します。

  7. [Template details (テンプレートの詳細) ] セクションで、以下のオプションのいずれかを選択します。

    • マイナーバージョンを作成するには、[Check to create a new major version (チェックして新しいメジャーバージョンを作成)] チェックボックスをオフのままにしておきます。

    • メジャーバージョンを作成するには、[Check to create a new major version (チェックして新しいメジャーバージョンを作成)] チェックボックスをオンにします。

  8. コンソールの手順を続けて、新しいマイナーバージョンまたはメジャーバージョンを作成し、[Create new version (新しいバージョンの作成)] を選択します。

AWS CLI
CLI を使用して、次の手順に示すように、新しい環境テンプレートを登録してパブリッシュします。
  1. リージョン、名前、表示名 (オプション)、および説明 (オプション) を指定して、標準またはカスタマーマネージド環境テンプレートを作成します。

    1. 標準環境テンプレートを作成します。

      次のコマンドを実行します。

      $ aws proton create-environment-template \ --name "simple-env" \ --display-name "Fargate" \ --description "VPC with public access"

      レスポンス:

      { "environmentTemplate": { "arn": "arn:aws:proton:region-id:123456789012:environment-template/simple-env", "createdAt": "2020-11-11T23:02:45.336000+00:00", "description": "VPC with public access", "displayName": "VPC", "lastModifiedAt": "2020-11-11T23:02:45.336000+00:00", "name": "simple-env" } }
    2. provisioning である CUSTOMER_MANAGED パラメータを追加することでカスタマーマネージド環境テンプレートを作成します。

      次のコマンドを実行します。

      $ aws proton create-environment-template \ --name "simple-env" \ --display-name "Fargate" \ --description "VPC with public access" \ --provisioning "CUSTOMER_MANAGED"

      レスポンス:

      { "environmentTemplate": { "arn": "arn:aws:proton:region-id:123456789012:environment-template/simple-env", "createdAt": "2020-11-11T23:02:45.336000+00:00", "description": "VPC with public access", "displayName": "VPC", "lastModifiedAt": "2020-11-11T23:02:45.336000+00:00", "name": "simple-env", "provisioning": "CUSTOMER_MANAGED" } }
  2. 環境テンプレートのメジャーバージョン 1 のマイナーバージョン 0 を作成します。

    このステップと残りのステップは、標準環境テンプレートとカスタマーマネージド環境テンプレートで同じです。

    環境テンプレートバンドルを含むバケットのテンプレート名、メジャーバージョン、S3 バケット名とキーを含めます。

    次のコマンドを実行します。

    $ aws proton create-environment-template-version \ --template-name "simple-env" \ --description "Version 1" \ --source s3="{bucket=your_s3_bucket, key=your_s3_key}"

    レスポンス:

    { "environmentTemplateVersion": { "arn": "arn:aws:proton:region-id:123456789012:environment-template/simple-env:1.0", "createdAt": "2020-11-11T23:02:47.763000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:47.763000+00:00", "majorVersion": "1", "minorVersion": "0", "status": "REGISTRATION_IN_PROGRESS", "templateName": "simple-env" } }
  3. get コマンドを使用して登録ステータスを確認します。

    次のコマンドを実行します。

    $ aws proton get-environment-template-version \ --template-name "simple-env" \ --major-version "1" \ --minor-version "0"

    レスポンス:

    { "environment": { "arn": "arn:aws:proton:region-id:123456789012:environment-template/simple-env:1.0", "createdAt": "2020-11-11T23:02:47.763000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:47.763000+00:00", "majorVersion": "1", "minorVersion": "0", "recommendedMinorVersion": "0", "schema": "schema:\n format:\n openapi: \"3.0.0\"\n environment_input_type: \"MyEnvironmentInputType\"\n types:\n MyEnvironmentInputType:\n type: object\n description: \"Input properties for my environment\"\n properties:\n my_sample_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_other_sample_input:\n type: string\n description: \"Another sample input\"\n required:\n - my_other_sample_input\n", "status": "DRAFT", "statusMessage": "", "templateName": "simple-env" } }
  4. テンプレート名とメジャーバージョンとマイナーバージョンを指定して、環境テンプレートのメジャーバージョン 1 のマイナーバージョン 0 をパブリッシュします。このバージョンは Recommended バージョンです。

    次のコマンドを実行します。

    $ aws proton update-environment-template-version \ --template-name "simple-env" \ --major-version "1" \ --minor-version "0" \ --status "PUBLISHED"

    レスポンス:

    { "environmentTemplateVersion": { "arn": "arn:aws:proton:region-id:123456789012:environment-template/simple-env:1.0", "createdAt": "2020-11-11T23:02:47.763000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:54.610000+00:00", "majorVersion": "1", "minorVersion": "0", "recommendedMinorVersion": "0", "schema": "schema:\n format:\n openapi: \"3.0.0\"\n environment_input_type: \"MyEnvironmentInputType\"\n types:\n MyEnvironmentInputType:\n type: object\n description: \"Input properties for my environment\"\n properties:\n my_sample_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_other_sample_input:\n type: string\n description: \"Another sample input\"\n required:\n - my_other_sample_input\n", "status": "PUBLISHED", "statusMessage": "", "templateName": "simple-env" } }

AWS CLI で新しいテンプレートを作成すると、AWS とカスタマーマネージドタグのリストを表示できます。AWS Proton は、AWS マネージドタグを自動的に生成します。また、AWS CLI で、カスタマーマネージドタグの変更や作成もできます。詳細については、「AWS Proton リソースとタグ付け」を参照してください。

次のコマンドを実行します。

$ aws proton list-tags-for-resource \ --resource-arn "arn:aws:proton:region-id:123456789012:environment-template/simple-env"

サービステンプレートを登録してパブリッシュする

サービステンプレートバージョンを作成する際に、互換性のある環境テンプレートの一覧を指定します。そうすれば、開発者はサービステンプレートを選択するときにサービスをデプロイする環境を選択できます。

サービステンプレートからサービスを作成する前や、サービステンプレートをパブリッシュする前は、リストにある互換性のある環境テンプレートから環境がデプロイされていることを確認してください。

互換性のない環境テンプレートから構築された環境にデプロイされたサービスは、新しいメジャーバージョンに更新できません

サービステンプレートバージョンの互換性のある環境テンプレートを追加または削除するには、新しいメジャーバージョンを作成します。

コンソールまたは AWS CLI を使用して、サービステンプレートを登録してパブリッシュします。

AWS Management Console
コンソールを使用して、新しいサービステンプレートを登録してパブリッシュします。
  1. AWS Proton コンソールで [Service templates (サービステンプレート)] を選択します。

  2. [Create service template (サービステンプレートの作成)] を選択します。

  3. [Create service template (環境サービスを作成する)] ページの [Template bundle source (テンプレートバンドルソース)] セクションで利用可能なテンプレートオプションのいずれかを選択します。

    • Use your own template bundle (独自のテンプレートバンドルを使用する)

    • Sync templates from Git (Git からテンプレートを同期する)

  4. テンプレートバンドルのパスを指定します。
    1. [Sync templates from Git (Git からテンプレートを同期する)] を選択した場合、[Source code repository (ソースコードリポジトリ)] セクションで以下の操作をします。

      1. テンプレート同期設定のリポジトリを選択します。

      2. 同期するリポジトリブランチの名前を入力します。

      3. (オプション) ディレクトリ名を入力して、テンプレートバンドルの検索を制限します。

    2. それ以外の場合、[S3 bundle location (S3 バンドルの場所)] セクションでテンプレートバンドルのパスを指定します。

  5. [Template details (テンプレートの詳細)] セクションで以下の操作をします。

    1. テンプレート名を入力します。

    2. (オプション) [Template display name] にテンプレート表示名を入力します。

    3. (オプション) [Template description] にサービステンプレートの説明を入力します。

  6. [Compatible environment templates (互換性のある環境テンプレート)] セクションで、リストから互換性のある環境テンプレートを選択します。

  7. (オプション) [Encryption settings (暗号化設定)] セクションの [Customize encryption settings (advanced) (暗号化設定のカスタマイズ (アドバンスト))]] を選択し、あなた自身の暗号化キーを用意します。

  8. (オプション)[パイプライン]セクション:

    あなたのサービステンプレートにサービスパイプライン定義を含めていない場合は、ページの下部にある [Pipeline - optional (パイプライン - オプション)] チェックボックスをオフにします。サービステンプレートの作成後にこれを変更することはできません。詳細については、「テンプレートバンドル」を参照してください。

  9. (オプション)直接定義されたコンポーネントをサービスインスタンスにアタッチできるように、[サポート対象のコンポーネントソース] セクションの [コンポーネントソース] で、[直接定義] を選択します。

  10. (オプション) [Tags (タグ)] セクションで [Add new tag (新しいタグを追加)] を選択し、キーと値を入力してカスタマーマネージドタグを作成します。

  11. [Create service a template (サービステンプレートの作成)] を選択します。

    新しいページが開き、新しいサービステンプレートのステータスと詳細が表示されます。これらの詳細には、AWSとカスタマーマネージドタグの一覧が含まれます。AWS ProtonはAWS Protonリソースを作成すると、自動的にAWSマネージドタグを作成します。詳細については、「AWS Proton リソースとタグ付け」を参照してください。

  12. 新しいサービステンプレートステータスのステータスは [Draft (ドラフト)] から始まります。表示やアクセスできるのは、自分と自分以外の proton:CreateService アクセス許可があるユーザーです。次の手順に従って、テンプレートを自分以外のユーザーが使用できるようにします。

  13. [Template versions (テンプレートのバージョン)] セクションで、先ほど作成したテンプレートのマイナーバージョン (1.0) の左側にあるラジオボタンを選択します。別の方法としては、情報アラートで [Publish (パブリッシュ)] を選択して次のステップをスキップします。

  14. [Template versions (テンプレートのバージョン)] セクションで [Publish (パブリッシュ)] を選択します。

  15. テンプレートのステータスが [Published (パブリッシュ)] に変わります。最新バージョンのテンプレートなので、これは [Recommended (推奨)] バージョンです。

  16. ナビゲーションペインで [Service templates (サービステンプレート)] を選択してサービステンプレートと詳細の一覧を表示します。

コンソールを使用して、サービステンプレートの新しいメジャーバージョンとマイナーバージョンを登録します。

詳細については、「バージョン付きテンプレート」を参照してください。

  1. AWS Proton コンソールで [Service Templates (サービステンプレート)] を選択します。

  2. サービステンプレートのリストで、メジャーバージョンまたはマイナーバージョンを作成したいサービステンプレートの名前を選択します。

  3. サービステンプレートの詳細ビューの [Template version (テンプレートのバージョン)] セクションで [Create new version] を選択します。

  4. [サービステンプレートバージョンの新規作成] ページの [バンドルソース] セクションで、[あなた自身のテンプレートバンドルを使用] を選択します。

  5. それ以外の場合、[S3 bundle location (S3 バンドルの場所)] セクションであなたのテンプレートバンドルまでのパスを選択します。

  6. [Template details] (テンプレートの詳細) セクションで以下の操作をします。

    1. (オプション) [Template display name] にテンプレート表示名を入力します。

    2. (オプション) [Template description] にサービステンプレートの説明を入力します。

  7. [Template details (テンプレートの詳細)] セクションで、以下のオプションのいずれかを選択します。

    • マイナーバージョンを作成するには、[Check to create a new major version (チェックして新しいメジャーバージョンを作成)] チェックボックスをオフのままにしておきます。

    • メジャーバージョンを作成するには、[Check to create a new major version (チェックして新しいメジャーバージョンを作成)] チェックボックスをオンにします。

  8. コンソールの手順を続けて、新しいマイナーバージョンまたはメジャーバージョンを作成し、[Create new version (新しいバージョンの作成)] を選択します。

AWS CLI

サービスパイプラインなしでサービスをデプロイするサービステンプレートを作成するには、パラメータと値 --pipeline-provisioning "CUSTOMER_MANAGED"create-service-template コマンドに追加します。テンプレートバンドル 作成と サービステンプレートバンドルのスキーマ要件 の説明に従って、テンプレートバンドルを設定します。

注記

サービステンプレートの作成後に pipelineProvisioning を変更することはできません。

  1. CLI を使用すると、次の手順に示すように、サービスパイプラインの有無にかかわらず、新しいサービステンプレートを登録してパブリッシュできます。
    1. CLI を使用してサービスパイプラインでサービステンプレートを作成します。

      名前、表示名 (オプション)、および説明 (オプション) を指定します。

      次のコマンドを実行します。

      $ aws proton create-service-template \ --name "fargate-service" \ --display-name "Fargate" \ --description "Fargate-based Service"

      レスポンス:

      { "serviceTemplate": { "arn": "arn:aws:proton:region-id:123456789012:service-template/fargate-service", "createdAt": "2020-11-11T23:02:55.551000+00:00", "description": "Fargate-based Service", "displayName": "Fargate", "lastModifiedAt": "2020-11-11T23:02:55.551000+00:00", "name": "fargate-service" } }
    2. サービスパイプラインを使用せずにサービステンプレートを作成します。

      --pipeline-provisioning を追加する。

      次のコマンドを実行します。

      $ aws proton create-service-template \ --name "fargate-service" \ --display-name "Fargate" \ --description "Fargate-based Service" \ --pipeline-provisioning "CUSTOMER_MANAGED"

      レスポンス:

      { "serviceTemplate": { "arn": "arn:aws:proton:region-id:123456789012:service-template/fargate-service", "createdAt": "2020-11-11T23:02:55.551000+00:00", "description": "Fargate-based Service", "displayName": "Fargate", "lastModifiedAt": "2020-11-11T23:02:55.551000+00:00", "name": "fargate-service", "pipelineProvisioning": "CUSTOMER_MANAGED" } }
  2. サービステンプレートのメジャーバージョン 1 のマイナーバージョン 0 を作成します。

    サービステンプレートバンドルを含むバケットのテンプレート名、互換性のある環境テンプレート、メジャーバージョン、S3 バケット名とキーを含めます。

    次のコマンドを実行します。

    $ aws proton create-service-template-version \ --template-name "fargate-service" \ --description "Version 1" \ --source s3="{bucket=your_s3_bucket, key=your_s3_key}" \ --compatible-environment-templates '[{"templateName":"simple-env","majorVersion":"1"}]'

    レスポンス:

    { "serviceTemplateMinorVersion": { "arn": "arn:aws:proton:region-id:123456789012:service-template/fargate-service:1.0", "compatibleEnvironmentTemplates": [ { "majorVersion": "1", "templateName": "simple-env" } ], "createdAt": "2020-11-11T23:02:57.912000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:57.912000+00:00", "majorVersion": "1", "minorVersion": "0", "status": "REGISTRATION_IN_PROGRESS", "templateName": "fargate-service" } }

  3. get コマンドを使用して登録ステータスを確認します。

    次のコマンドを実行します。

    $ aws proton get-service-template-version \ --template-name "fargate-service" \ --major-version "1" \ --minor-version "0"

    レスポンス:

    { "serviceTemplateMinorVersion": { "arn": "arn:aws:proton:us-east-1:123456789012:service-template/fargate-service:1.0", "compatibleEnvironmentTemplates": [ { "majorVersion": "1", "templateName": "simple-env" } ], "createdAt": "2020-11-11T23:02:57.912000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:57.912000+00:00", "majorVersion": "1", "minorVersion": "0", "schema": "schema:\n format:\n openapi: \"3.0.0\"\n pipeline_input_type: \"MyPipelineInputType\"\n service_input_type: \"MyServiceInstanceInputType\"\n\n types:\n MyPipelineInputType:\n type: object\n description: \"Pipeline input properties\"\n required:\n - my_sample_pipeline_required_input\n properties:\n my_sample_pipeline_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_sample_pipeline_required_input:\n type: string\n description: \"Another sample input\"\n\n MyServiceInstanceInputType:\n type: object\n description: \"Service instance input properties\"\n required:\n - my_sample_service_instance_required_input\n properties:\n my_sample_service_instance_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_sample_service_instance_required_input:\n type: string\n description: \"Another sample input\"", "status": "DRAFT", "statusMessage": "", "templateName": "fargate-service" } }
  4. update コマンドでステータスを "PUBLISHED" に変更して、サービステンプレートをパブリッシュします。

    次のコマンドを実行します。

    $ aws proton update-service-template-version \ --template-name "fargate-service" \ --description "Version 1" \ --major-version "1" \ --minor-version "0" \ --status "PUBLISHED"

    レスポンス:

    { "serviceTemplateVersion": { "arn": "arn:aws:proton:region-id:123456789012:service-template/fargate-service:1.0", "compatibleEnvironmentTemplates": [ { "majorVersion": "1", "templateName": "simple-env" } ], "createdAt": "2020-11-11T23:02:57.912000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:02:57.912000+00:00", "majorVersion": "1", "minorVersion": "0", "recommendedMinorVersion": "0", "schema": "schema:\n format:\n openapi: \"3.0.0\"\n pipeline_input_type: \"MyPipelineInputType\"\n service_input_type: \"MyServiceInstanceInputType\"\n\n types:\n MyPipelineInputType:\n type: object\n description: \"Pipeline input properties\"\n required:\n - my_sample_pipeline_required_input\n properties:\n my_sample_pipeline_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello pipeline\"\n my_sample_pipeline_required_input:\n type: string\n description: \"Another sample input\"\n\n MyServiceInstanceInputType:\n type: object\n description: \"Service instance input properties\"\n required:\n - my_sample_service_instance_required_input\n properties:\n my_sample_service_instance_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_sample_service_instance_required_input:\n type: string\n description: \"Another sample input\"\n", "status": "PUBLISHED", "statusMessage": "", "templateName": "fargate-service" } }
  5. AWS Proton が Get コマンドでサービステンプレートの詳細データを取得することによってバージョン 1.0 をパブリッシュしたかどうかを調べます。

    次のコマンドを実行します。

    $ aws proton get-service-template-version \ --template-name "fargate-service" \ --major-version "1" \ --minor-version "0"

    レスポンス:

    { "serviceTemplateMinorVersion": { "arn": "arn:aws:proton:us-east-1:123456789012:service-template/fargate-service:1.0", "compatibleEnvironmentTemplates": [ { "majorVersion": "1", "templateName": "simple-env" } ], "createdAt": "2020-11-11T23:02:57.912000+00:00", "description": "Version 1", "lastModifiedAt": "2020-11-11T23:03:04.767000+00:00", "majorVersion": "1", "minorVersion": "0", "schema": "schema:\n format:\n openapi: \"3.0.0\"\n pipeline_input_type: \"MyPipelineInputType\"\n service_input_type: \"MyServiceInstanceInputType\"\n\n types:\n MyPipelineInputType:\n type: object\n description: \"Pipeline input properties\"\n required:\n - my_sample_pipeline_required_input\n properties:\n my_sample_pipeline_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_sample_pipeline_required_input:\n type: string\n description: \"Another sample input\"\n\n MyServiceInstanceInputType:\n type: object\n description: \"Service instance input properties\"\n required:\n - my_sample_service_instance_required_input\n properties:\n my_sample_service_instance_optional_input:\n type: string\n description: \"This is a sample input\"\n default: \"hello world\"\n my_sample_service_instance_required_input:\n type: string\n description: \"Another sample input\"", "status": "PUBLISHED", "statusMessage": "", "templateName": "fargate-service" } }