

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

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

# CloudFormation 「スタックをデプロイ」アクション YAML
<a name="deploy-action-ref-cfn"></a>

** CloudFormation スタックのデプロイ**アクションの YAML 定義を次に示します。このアクションの使用方法については、「[CloudFormation スタックのデプロイ](deploy-action-cfn.md)」を参照してください。

このアクション定義は、より広範なワークフロー定義ファイル内のセクションとして存在します。ファイルの詳細については、「[ワークフロー YAML 定義](workflow-reference.md)」を参照してください。

**注記**  
後続の YAML プロパティのほとんどには、対応する UI 要素がビジュアルエディタにあります。UI 要素を検索するには、**[Ctrl\$1F]** を使用します。要素は、関連付けられた YAML プロパティとともに一覧表示されます。

```
# The workflow definition starts here.
# See 最上位プロパティ for details.
        
Name: MyWorkflow
SchemaVersion: 1.0 
Actions:

# The action definition starts here.    
  DeployCloudFormationStack:  
    Identifier: aws/cfn-deploy@v1
    DependsOn:
      - build-action
    Compute:  
      Type: EC2 | Lambda
      Fleet: fleet-name
    Timeout: timeout-minutes
    Environment:
      Name: environment-name
      Connections:
        - Name: account-connection-name
          Role: DeployRole
    Inputs:
      Sources:
        - source-name-1
      Artifacts:
        - CloudFormation-artifact
    Configuration:
      name: stack-name
      region: us-west-2
      template: template-path
      role-arn: arn:aws:iam::123456789012:role/StackRole        
      capabilities: CAPABILITY_IAM,CAPABILITY_NAMED_IAM,CAPABILITY_AUTO_EXPAND
      parameter-overrides: KeyOne=ValueOne,KeyTwo=ValueTwo | path-to-JSON-file
      no-execute-changeset: 1|0
      fail-on-empty-changeset: 1|0
      disable-rollback: 1|0
      termination-protection: 1|0
      timeout-in-minutes: minutes
      notification-arns: arn:aws:sns:us-east-1:123456789012:MyTopic,arn:aws:sns:us-east-1:123456789012:MyOtherTopic
      monitor-alarm-arns: arn:aws:cloudwatch::123456789012:alarm/MyAlarm,arn:aws:cloudwatch::123456789012:alarm/MyOtherAlarm
      monitor-timeout-in-minutes: minutes       
      tags: '[{"Key":"MyKey1","Value":"MyValue1"},{"Key":"MyKey2","Value":"MyValue2"}]'
```

## DeployCloudFormationStack
<a name="deploy.action.cfn.deploycloudformationstack"></a>

(必須)

アクションの名前を指定します。すべてのアクション名は、ワークフロー内で一意である必要があります。アクション名で使用できるのは、英数字 (a～z、A～Z、0～9)、ハイフン (-)、アンダースコア (\$1) のみです。スペースは使用できません。引用符を使用して、アクション名の特殊文字とスペースを有効にすることはできません。

デフォルト: `DeployCloudFormationStack_nn`。

対応する UI: [設定] タブ/**[アクション表示名]**

## Identifier
<a name="deploy.action.cfn.identifier"></a>

(*DeployCloudFormationStack*/**Identifier**)

(必須)

アクションを識別します。バージョンを変更したい場合でない限り、このプロパティを変更しないでください。詳細については、「[使用するアクションバージョンの指定](workflows-action-versions.md)」を参照してください。

デフォルト: `aws/cfn-deploy@v1`。

対応する UI: ワークフロー図/DeployCloudFormationStack\$1nn/**aws/cfn-deploy@v1** ラベル

## DependsOn
<a name="deploy.action.cfn.dependson"></a>

(*DeployCloudFormationStack*/**DependsOn**)

(オプション)

このアクションを実行するために正常に実行する必要があるアクション、アクショングループ、またはゲートを指定します。

「DependsOn」機能の詳細については、「[アクションの順序付け](workflows-depends-on.md)」を参照してください。

対応する UI: [入力] タブ/**[依存 - オプション]**

## Compute
<a name="deploy.action.cfn.computename"></a>

(*DeployCloudFormationStack*/**Compute**)

(オプション)

ワークフローアクションの実行に使用されるコンピューティングエンジンです。コンピューティングはワークフローレベルまたはアクションレベルで指定できますが、両方を指定することはできません。ワークフローレベルで指定すると、コンピューティング設定はワークフローで定義されたすべてのアクションに適用されます。ワークフローレベルでは、同じインスタンスで複数のアクションを実行することもできます。詳細については、「[アクション間でのコンピューティングの共有する](compute-sharing.md)」を参照してください。

対応する UI: *[なし]*

## Type
<a name="deploy.action.cfn.computetype"></a>

(*DeployCloudFormationStack*/Compute/**Type**)

([Compute](#deploy.action.cfn.computename) が含まれている場合は必須)

コンピューティングエンジンのタイプです。次のいずれかの値を使用できます。
+ **EC2** (ビジュアルエディタ) または `EC2` (YAML エディタ)

  アクション実行時の柔軟性を目的として最適化されています。
+ **Lambda** (ビジュアルエディタ) または `Lambda` (YAML エディタ)

  アクションの起動速度を最適化しました。

コンピューティングタイプの詳細については、「[コンピューティングタイプ](workflows-working-compute.md#compute.types)」を参照してください。

対応する UI: [設定] タブ/[高度な設定 - オプション]/**[コンピューティングタイプ]**

## Fleet
<a name="deploy.action.cfn.computefleet"></a>

(*DeployCloudFormationStack*/Compute/**Fleet**)

(オプション)

ワークフローまたはワークフローアクションを実行するマシンまたはフリートを指定します。オンデマンドフリートでは、アクションが開始すると、ワークフローは必要なリソースをプロビジョニングし、アクションが完了するとマシンは破棄されます。オンデマンドフリートの例: `Linux.x86-64.Large`、`Linux.x86-64.XLarge`。オンデマンドフリートの詳細については、「[オンデマンドフリートのプロパティ](workflows-working-compute.md#compute.on-demand)」を参照してください。

プロビジョニングされたフリートでは、ワークフローアクションを実行するように専用マシンのセットを設定します。これらのマシンはアイドル状態のままで、アクションをすぐに処理できます。プロビジョニングされたフリートの詳細については、「[プロビジョニングされたフリートのプロパティ](workflows-working-compute.md#compute.provisioned-fleets)」を参照してください。

`Fleet` を省略した場合、デフォルトは `Linux.x86-64.Large` です。

対応する UI: [設定] タブ/[高度な設定 - オプション]/**[コンピューティングフリート]**

## Timeout
<a name="deploy.action.cfn.timeout"></a>

(*DeployCloudFormationStack*/**Timeout**)

(オプション)

CodeCatalyst がアクションを終了するまでにアクションを実行できる時間を分単位 (YAML エディタ) または時間分単位 (ビジュアルエディタ) で指定します。最小値は 5 分で、最大値は [CodeCatalyst のワークフローのクォータ](workflows-quotas.md) で記述されています。デフォルトのタイムアウトは、最大タイムアウトと同じです。

対応する UI: [設定] タブ/**[分単位のタイムアウト - オプション]**

## Environment
<a name="deploy.action.cfn.environment"></a>

(*DeployCloudFormationStack*/**Environment**)

(必須)

アクションで使用する CodeCatalyst 環境を指定します。アクションは、選択した環境で指定された AWS アカウント およびオプションの Amazon VPC に接続します。アクションは、環境で指定されたデフォルトの IAM ロールを使用して に接続し AWS アカウント、[Amazon VPC 接続](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-vpcs.add.html)で指定された IAM ロールを使用して Amazon VPC に接続します。

**注記**  
デフォルトの IAM ロールにアクションに必要なアクセス許可がない場合は、別のロールを使用するようにアクションを設定できます。詳細については、「[アクションの IAM ロールの変更](deploy-environments-switch-role.md)」を参照してください。

環境タグ付けの詳細については、「[AWS アカウント と VPCs へのデプロイ](deploy-environments.md)」と「[環境を作成する](deploy-environments-creating-environment.md)」を参照してください。

対応する UI: [設定] タブ/**[環境]**

## Name
<a name="deploy.action.cfn.environment.name"></a>

(*DeployCloudFormationStack*/Environment/**Name**)

([Environment](#deploy.action.cfn.environment) が含まれている場合は必須)

アクションに関連付ける既存の環境の名前を指定します。

対応する UI: [設定] タブ/**[環境]**

## Connections
<a name="deploy.action.cfn.environment.connections"></a>

(*DeployCloudFormationStack*/Environment/**Connections**)

(新しいバージョンのアクションでは任意。古いバージョンでは必須)

アクションに関連付けるアカウント接続を指定します。`Environment` で最大 1 つのアカウント接続を指定できます。

アカウント接続を指定しない場合:
+ アクションは、CodeCatalyst コンソールの環境で指定された AWS アカウント 接続とデフォルトの IAM ロールを使用します。アカウント接続とデフォルトの IAM ロールを環境に追加する方法については、「[環境を作成する](deploy-environments-creating-environment.md)」を参照してください。
+ デフォルトの IAM ロールには、アクションに必要なポリシーとアクセス許可が含まれている必要があります。これらのポリシーとアクセス許可を確認するには、アクションの YAML 定義ドキュメントの **[ロール]** プロパティの説明を参照してください。

アカウント接続の詳細については、「[接続された AWS リソースへのアクセスを許可する AWS アカウント](ipa-connect-account.md)」を参照してください。アカウント接続を環境に追加する方法については、「[環境を作成する](deploy-environments-creating-environment.md)」を参照してください。

対応する UI: アクションのバージョンに応じて、次のいずれか。
+ (新しいバージョン) [設定] タブ/[環境]/[*my-environment* の内容]/3 つのドットメニュー/**[ロールを切り替える]**
+ (旧バージョン) [設定] タブ/「環境/アカウント/ロール」/**[AWS アカウント接続]**

## Name
<a name="deploy.action.cfn.environment.connections.name"></a>

(*DeployCloudFormationStack*/Environment/Connections/**Name**)

([Connections](#deploy.action.cfn.environment.connections) が含まれている場合は必須)

アカウント接続の名前を指定します。

対応する UI: アクションのバージョンに応じて、次のいずれか。
+ (新しいバージョン) [設定] タブ/[環境]/[*my-environment* の内容]/3 つのドットメニュー/**[ロールを切り替える]**
+ (旧バージョン) [設定] タブ/「環境/アカウント/ロール」/**[AWS アカウント接続]**

## Role
<a name="deploy.action.cfn.environment.connections.role"></a>

(*DeployCloudFormationStack*/Environment/Connections/**Role**)

([Connections](#deploy.action.cfn.environment.connections) が含まれている場合は必須)

** CloudFormation スタックのデプロイ**アクションが AWS および CloudFormation サービスにアクセスするために使用する IAM ロールの名前を指定します。[ロールを CodeCatalyst スペース に追加](ipa-connect-account-addroles.md)し、ロールに次のポリシーが含まれていることを確認します。

IAM ロールを指定しない場合、アクションは CodeCatalyst コンソールの [[環境]](deploy-environments.md) に記載されているデフォルトの IAM ロールを使用します。環境でデフォルトのロールを使用する場合は、次のポリシーがあることを確認してください。
+ 以下のアクセス許可ポリシー:
**警告**  
アクセス許可は、次のポリシーに示すアクセス許可に制限します。より広範なアクセス許可を持つロールを使用すると、セキュリティリスクが発生する可能性があります。
**注記**  
ロールを初めて使用するとき、リソースポリシーステートメントで次のワイルドカードを使用し、使用可能になった後にリソース名でポリシーをスコープダウンします。  

  ```
  "Resource": "*"
  ```
+ 次のカスタム信頼ポリシー:

**注記**  
必要に応じて、このアクションで `CodeCatalystWorkflowDevelopmentRole-spaceName` ロールを使用できます。このロールの詳細については、「[アカウントとスペース用の **CodeCatalystWorkflowDevelopmentRole-*spaceName*** ロールを作成する](ipa-iam-roles.md#ipa-iam-roles-service-create)」を参照してください。`CodeCatalystWorkflowDevelopmentRole-spaceName` ロールにはフルアクセス許可があり、セキュリティ上のリスクをもたらす可能性があることを理解してください。このロールは、セキュリティが懸念されないチュートリアルやシナリオでのみ使用することをお勧めします。

対応する UI: アクションのバージョンに応じて、次のいずれか。
+ (新しいバージョン) [設定] タブ/[環境]/[*my-environment* の内容]/3 つのドットメニュー/**[ロールを切り替える]**
+ (旧バージョン) [設定] タブ/「環境/アカウント/ロール」/**[ロール]**

## Inputs
<a name="deploy.action.cfn.inputs"></a>

(*DeployCloudFormationStack*/**Inputs**)

(オプション)

`Inputs` セクションでは、ワークフローの実行中に `DeployCloudFormationStack` に必要なデータを定義します。

**注記**  
**Deploy CloudFormation スタック**アクションごとに最大 4 つの入力 (1 つのソースと 3 つのアーティファクト) が許可されます。

異なる入力 (ソースとアーティファクトなど) にあるファイルを参照する必要がある場合、ソース入力はプライマリ入力で、アーティファクトはセカンダリ入力になります。セカンダリ入力内のファイルへの参照には、プライマリからファイルを区別するための特別なプレフィックスが付きます。詳細については、「[例: 複数のアーティファクトでのファイルの参照](workflows-working-artifacts-ex.md#workflows-working-artifacts-ex-ref-file)」を参照してください。

対応する UI: **[入力] タブ**

## Sources
<a name="deploy.action.cfn.inputs.sources"></a>

(*DeployCloudFormationStack*/Inputs/**Sources**)

(CloudFormation または AWS SAM テンプレートがソースリポジトリに保存されている場合は必須)

CloudFormation または AWS SAM テンプレートがソースリポジトリに保存されている場合は、そのソースリポジトリのラベルを指定します。現在サポートされているラベルは、`WorkflowSource` のみです。

CloudFormation または AWS SAM テンプレートがソースリポジトリに含まれていない場合は、別のアクションによって生成されたアーティファクト、または Amazon S3 バケットに存在する必要があります。

sources の詳細については、「[ワークフローへのソースリポジトリの接続](workflows-sources.md)」を参照してください。

対応する UI: 入力タブ/**ソース - オプション**

## Artifacts - input
<a name="deploy.action.cfn.inputs.artifacts"></a>

(*DeployCloudFormationStack*/Inputs/**Artifacts**)

(CloudFormation または AWS SAM テンプレートが前のアクションの[出力アーティファクト](workflows-working-artifacts-output.md)に保存されている場合に必要です)

デプロイする CloudFormation または AWS SAM テンプレートが、前のアクションによって生成されたアーティファクトに含まれている場合は、ここでそのアーティファクトを指定します。CloudFormation テンプレートがアーティファクトに含まれていない場合は、ソースリポジトリまたは Amazon S3 バケットに存在する必要があります。

アーティファクトの詳細 (例を含む) については、「[アクション間でのアーティファクトとファイルの共有](workflows-working-artifacts.md)」を参照してください。

対応する UI: [設定] タブ/**[アーティファクト - オプション]**

## Configuration
<a name="deploy.action.cfn.configuration"></a>

(*DeployCloudFormationStack*/**Configuration**)

(必須)

アクションの設定プロパティを定義できるセクション。

対応する UI: **[設定]** タブ

## name
<a name="deploy.action.cfn.stackname"></a>

(*DeployCloudFormationStack*/Configuration/**name**)

(必須)

**[ CloudFormation スタックをデプロイ]** アクションが作成または更新する CloudFormation スタックの名前を指定します。

対応する UI: [設定] タブ/**[スタック名]**

## region
<a name="deploy.action.cfn.stackregion"></a>

(*DeployCloudFormationStack*/Configuration/**region**)

(必須)

スタックをデプロイする AWS リージョン を指定します。リージョンコードの一覧については、「[リージョンエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#region-names-codes)」を参照してください。

対応する UI: [設定] タブ/**[スタックリージョン]**

## template
<a name="deploy.action.cfn.templatepath"></a>

(*DeployCloudFormationStack*/Configuration/**template**)

(必須)

CloudFormation または AWS SAM テンプレートファイルの名前とパスを指定します。テンプレートは JSON または YAML 形式にすることができ、ソースリポジトリ、以前のアクションのアーティファクト、または Amazon S3 バケットに格納できます。テンプレートファイルがソースリポジトリまたはアーティファクトにある場合、パスはソースまたはアーティファクトルートを基準としています。テンプレートが Amazon S3 バケットにある場合、パスはテンプレートの **[オブジェクト URL]** 値です。

例:

`./MyFolder/MyTemplate.json`

`MyFolder/MyTemplate.yml`

`https://MyBucket.s3.us-west-2.amazonaws.com/MyTemplate.yml`

**注記**  
テンプレートのファイルパスにプレフィックスを追加して、見つけるアーティファクトまたはソースを示す必要がある場合があります。詳細については、「[ソースリポジトリファイルの参照](workflows-sources-reference-files.md)」および「[アーティファクト内のファイルの参照](workflows-working-artifacts-refer-files.md)」を参照してください。

対応する UI: [設定] タブ/**[テンプレート]**

## role-arn
<a name="deploy.action.cfn.stackrolearn"></a>

(*DeployCloudFormationStack*/Configuration/**role-arn**)

(必須)

スタックロールの Amazon リソースネーム (ARN) を指定します。CloudFormation はこのロールを使用して、スタック内のリソースにアクセスして変更します。例: `arn:aws:iam::123456789012:role/StackRole`。

スタックロールに以下が含まれていることを確認します。
+ 1 つ以上のアクセス許可ポリシー。ポリシーは、スタックにあるリソースによって異なります。たとえば、スタックに AWS Lambda 関数が含まれている場合は、Lambda へのアクセスを許可するアクセス許可を追加する必要があります。[チュートリアル: サーバーレスアプリケーションをデプロイする](deploy-tut-lambda.md) で説明されているチュートリアルに従った場合、「[スタックロールを作成するには](deploy-tut-lambda.md#deploy-tut-lambda-cfn-roles-stack)」というタイトルの手順が含まれています。この手順には、一般的なサーバーレスアプリケーションスタックをデプロイする場合にスタックロールが必要とするアクセス許可が一覧表示されます。
**警告**  
スタック内のリソースにアクセスするために CloudFormation サービスが必要とするアクセス許可に制限します。より広範なアクセス許可を持つロールを使用すると、セキュリティリスクが発生する可能性があります。
+ 次の信頼ポリシーを使用します。

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "",
              "Effect": "Allow",
              "Principal": {
                  "Service": "cloudformation.amazonaws.com"
              },
              "Action": "sts:AssumeRole"
          }
      ]
  }
  ```

------

必要に応じて、このロールをアカウント接続に関連付けます。IAM ロールとアカウント接続の関連付けの詳細については、「[IAM ロールをアカウント接続に追加する](ipa-connect-account-addroles.md)」を参照してください。スタックロールをアカウント接続に関連付けない場合、スタックロールはビジュアルエディタの **[スタックロール]** ドロップダウンリストに表示されません。ただし、ロール ARN は YAML エディタを使用して `role-arn` フィールドで指定できます。

**注記**  
必要に応じて、このアクションで `CodeCatalystWorkflowDevelopmentRole-spaceName` ロールを使用できます。このロールの詳細については、「[アカウントとスペース用の **CodeCatalystWorkflowDevelopmentRole-*spaceName*** ロールを作成する](ipa-iam-roles.md#ipa-iam-roles-service-create)」を参照してください。`CodeCatalystWorkflowDevelopmentRole-spaceName` ロールにはフルアクセス許可があり、セキュリティ上のリスクをもたらす可能性があることを理解してください。このロールは、セキュリティが懸念されないチュートリアルやシナリオでのみ使用することをお勧めします。

対応する UI: [設定] タブ/**[スタックロール - オプション]**

## capabilities
<a name="deploy.action.cfn.capabilities"></a>

(*DeployCloudFormationStack*/Configuration/**capabilities**)

(必須)

が特定のスタック CloudFormation を作成するために必要な IAM 機能のリストを指定します。ほとんどの場合、`CAPABILITY_IAM,CAPABILITY_NAMED_IAM,CAPABILITY_AUTO_EXPAND` のデフォルト値は `capabilities` のままにすることができます。

**[ CloudFormation スタックをデプロイ]** アクションのログに `##[error] requires capabilities: [capability-name]` が表示された場合は、「[IAM 機能エラーを解決するにはどうすればよいですか?](troubleshooting-workflows.md#troubleshooting-workflows-capabilities)」を参照して問題を解決する方法を確認してください。

IAM 機能の詳細については、[「IAM ユーザーガイド」の CloudFormation 「 テンプレートでの IAM リソースの承認](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities)」を参照してください。 **

対応する UI: [設定] タブ/アドバンスト/**[機能]**

## parameter-overrides
<a name="deploy.action.cfn.parameter.overrides"></a>

(*DeployCloudFormationStack*/Configuration/**parameter-overrides**)

(オプション)

デフォルト値を持たない CloudFormation 、またはデフォルト値以外の値を指定するパラメータを または AWS SAM テンプレートで指定します。パラメータの詳細については、 * AWS CloudFormation ユーザーガイド*の[「パラメータ](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)」を参照してください。

`parameter-overrides` プロパティは以下を受け入れます。
+ パラメータと値を含む JSON ファイル。
+ パラメータと値のカンマ区切りリスト。

**JSON ファイルを指定するには**

1. JSON ファイルで次のいずれかの構文を使用していることを確認します。

   ```
   {
     "Parameters": {
       "Param1": "Value1",
       "Param2": "Value2",
       ...
     }
   }
   ```

   または…

   ```
   [
     {
        "ParameterKey": "Param1",
        "ParameterValue": "Value1"
     },
     ...
   ]
   ```

   (他の構文もありますが、記述時に CodeCatalyst ではサポートされていません。) JSON ファイルで CloudFormation パラメータを指定する方法の詳細については、「*AWS CLI コマンドリファレンス*」の「[サポートされている JSON 構文](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudformation/deploy/index.html#supported-json-syntax)」を参照してください。

1. 次のいずれかの形式を使用して、JSON ファイルへのパスを指定します。
   + JSON ファイルが前のアクションの出力アーティファクトに存在する場合は、以下を使用します。

     `file:///artifacts/current-action-name/output-artifact-name/path-to-json-file`

     詳細については、「**例 1**」を参照してください。
   + JSON ファイルがソースリポジトリにある場合は、以下を使用します。

     `file:///sources/WorkflowSource/path-to-json-file`

     詳細については、「**例 2**」を参照してください。

     **例 1** – JSON ファイルは出力アーティファクトにあります

     ```
     ##My workflow YAML
     ...
     Actions:
       MyBuildAction:
         Identifier: aws/build@v1
         Outputs:
           Artifacts:
             - Name: ParamArtifact
               Files:
                 - params.json
         Configuration:
         ...
       MyDeployCFNStackAction:
         Identifier: aws/cfn-deploy@v1
         Configuration:
           parameter-overrides: file:///artifacts/MyDeployCFNStackAction/ParamArtifact/params.json
     ```

     **例 2** – JSON ファイルは、ソースリポジトリの「`my/folder`」という名前のフォルダにあります。

     ```
     ##My workflow YAML
     ...
     Actions:
       MyDeployCloudFormationStack:
         Identifier: aws/cfn-deploy@v1
         Inputs:
           Sources:
             - WorkflowSource
         Configuration:
           parameter-overrides: file:///sources/WorkflowSource/my/folder/params.json
     ```

**パラメータのカンマ区切りリストを使用するには**
+ 次の形式を使用して、`parameter-overrides` プロパティにパラメータ名と値のペアを追加します。

  `param-1=value-1,param-2=value-2`

  たとえば、次の CloudFormation テンプレートがあるとします。

  ```
  ##My CloudFormation template
  
  Description: My CloudFormation template
  
  Parameters:
    InstanceType:
      Description: Defines the Amazon EC2 compute for the production server.
      Type: String
      Default: t2.micro
      AllowedValues:
        - t2.micro
        - t2.small
        - t3.medium
      
  Resources:
  ...
  ```

  ...`parameter-overrides` プロパティは次のように設定できます。

  ```
  ##My workflow YAML
  ...
  Actions:
  ...
    DeployCloudFormationStack:
      Identifier: aws/cfn-deploy@v1
      Configuration:
        parameter-overrides: InstanceType=t3.medium,UseVPC=true
  ```
**注記**  
パラメータ名は、`undefined` を値として使用して、対応する値なしで指定できます。例えば、次のようになります。  
`parameter-overrides: MyParameter=undefined`  
 スタックの更新中に、CloudFormation は指定されたパラメータ名に既存のパラメータ値を使用するという効果があります。

対応する UI:
+ [設定] タブ/アドバンスト/**[パラメータのオーバーライド]**
+ ファイルを使用して[設定] タブ/アドバンスト/パラメータオーバーライド/**[オーバーライドを指定]**
+ 値セットを使用して[設定] タブ/アドバンスト/パラメータオーバーライド/**値セットを使用してオーバーライドを指定**

## no-execute-changeset
<a name="deploy.action.cfn.noexecutechangeset"></a>

(*DeployCloudFormationStack*/Configuration/**no-execute-changeset**)

(オプション)

CodeCatalyst で CloudFormation 変更セットを作成し、実行する前に停止するかどうかを指定します。これにより、CloudFormation コンソールで変更セットを確認できます。変更セットが正常に見える場合は、このオプションを無効にしてからワークフローを再実行し、CodeCatalyst が停止することなく変更セットを作成および実行できるようにします。デフォルトでは、停止せずに変更セットを作成して実行します。詳細については、*AWS CLI 「 コマンドリファレンス」の* CloudFormation [「deploy](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/deploy/index.html) パラメータ」を参照してください。変更セットの表示の詳細については、「*AWS CloudFormation ユーザーガイド*」の「[変更セットの表示](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets-view.html)」を参照してください。

対応する UI: [設定] タブ/詳細/**[実行なしの変更セット]**

## fail-on-empty-changeset
<a name="deploy.action.cfn.failonemptychangeset"></a>

(*DeployCloudFormationStack*/Configuration/**fail-on-empty-changeset**)

(オプション)

CloudFormation 変更セットが空の場合、CodeCatalyst が** CloudFormation スタックのデプロイ**アクションを失敗させるかどうかを指定します。(変更セットが空の場合、最新のデプロイ中にスタックに変更が行われなかったことを意味します。) デフォルトでは、変更セットが空の場合にアクションを続行し、スタックが更新されていなくても `UPDATE_COMPLETE` メッセージを返すことを許可します。

この設定の詳細については、*AWS CLI 「 コマンドリファレンス*」の CloudFormation [「deploy](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/deploy/index.html) パラメータ」を参照してください。変更セットの詳細については、「*AWS CloudFormation ユーザーガイド*」の「[変更セットを使用したスタックの更新](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html)」を参照してください。

対応する UI: [設定] タブ/アドバンスト/**[空の変更セットで失敗]**

## disable-rollback
<a name="deploy.action.cfn.disablerollback"></a>

(*DeployCloudFormationStack*/Configuration/**disable-rollback**)

(オプション)

CodeCatalyst がスタックデプロイに失敗した場合にロールバックするかどうかを指定します。ロールバックは、スタックを最後に既知の安定状態に戻します。デフォルトでは、ロールバックを有効にします。この設定の詳細については、*AWS CLI 「 コマンドリファレンス*」の CloudFormation [「deploy](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/deploy/index.html) パラメータ」を参照してください。

** CloudFormation スタックのデプロイ**アクションがロールバックを処理する方法の詳細については、「」を参照してください[ロールバックの設定](deploy-consumption-enable-alarms.md)。

スタックのロールバックの詳細については、*「AWS CloudFormation ユーザーガイド*」の「[スタック失敗オプション](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-failure-options.html)」を参照してください。

対応する UI: [設定] タブ/アドバンスト/**[ロールバックを無効化]**

## termination-protection
<a name="deploy.action.cfn.terminationprotection"></a>

(*DeployCloudFormationStack*/Configuration/**termination-protection**)

(オプション)

**Deploy CloudFormation スタック**で、デプロイするスタックに終了保護を追加するかどうかを指定します。削除保護を有効にした状態でスタックを削除しようとすると、削除は失敗し、ステータスを含め、スタックが変更されることはありません。終了保護はデフォルトで無効になっています。詳細については、「*AWS CloudFormation ユーザーガイド*」の「[スタックが削除されないように保護する](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html)」を参照してください。

対応する UI: [設定] タブ/アドバンスト/**[終了保護]**

## timeout-in-minutes
<a name="deploy.action.cfn.timeoutinminutes"></a>

(*DeployCloudFormationStack*/Configuration/**timeout-in-minutes**)

(オプション)

CloudFormation がスタック作成オペレーションのタイムアウトまでに割り当て、スタックのステータスを `CREATE_FAILED` に設定する時間を分で指定します。CloudFormation が割り当てられた時間内にスタック全体を作成できない場合、スタックの作成がタイムアウトで失敗し、スタックはロールバックされます。

デフォルトでは、スタックの作成にタイムアウトはありません。ただし、個々のリソースには、実装するサービスの性質に基づいて、独自のタイムアウトがある可能性があります。例えば、スタック内の個々のリソースがタイムアウトになった場合、スタックの作成に指定されたタイムアウトに到達していない場合でも、スタックの作成もタイムアウトになります。

対応する UI: [設定] タブ/アドバンスト/**[CloudFormation タイムアウト]**

## notification-arns
<a name="deploy.action.cfn.notificationarns"></a>

(*DeployCloudFormationStack*/Configuration/**notification-arns**)

(オプション)

CodeCatalyst が通知メッセージを送信する Amazon SNS トピックの ARN を指定します。例えば、`arn:aws:sns:us-east-1:111222333:MyTopic`。** CloudFormation スタックのデプロイ**アクションが実行されると、CodeCatalyst は CloudFormation と連携して、スタックの作成または更新プロセス中に発生する CloudFormation イベントごとに 1 つの通知を送信します。(イベントは、スタックの CloudFormation コンソールの**イベント**タブに表示されます）。最大 5 つのトピックを追加できます。詳細については、「[Amazon SNS とは](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)」を参照してください。

対応する UI: [設定] タブ/アドバンスト/**[通知 ARN]**

## monitor-alarm-arns
<a name="deploy.action.cfn.monitoralarmarns"></a>

(*DeployCloudFormationStack*/Configuration/**monitor-alarm-arns**)

(オプション)

ロールバックトリガーを追加するには、Amazon CloudWatch アラームの Amazon リソースネーム (ARN) を指定します。例えば、`arn:aws:cloudwatch::123456789012:alarm/MyAlarm`。最大 5 個のロールバックトリガーを持つことができます。

**注記**  
CloudWatch アラーム ARN を指定する場合は、アクションが CloudWatch にアクセスできるようにする追加のアクセス許可も設定する必要があります。詳細については、「[ロールバックの設定](deploy-consumption-enable-alarms.md)」を参照してください。

対応する UI: [設定] タブ/アドバンスト/**[モニターアラーム ARN]**

## monitor-timeout-in-minutes
<a name="deploy.action.cfn.monitortimeinminutes"></a>

(*DeployCloudFormationStack*/Configuration/**monitor-timeout-in-minutes**)

(オプション)

CloudFormation が指定されたアラームをモニタリングする 0 ～ 180 分の時間を指定します。モニタリングは、すべてのスタックリソースがデプロイされた*後に*開始します。アラームが指定されたモニタリング時間内に発生した場合、デプロイは失敗し、CloudFormation はスタックオペレーション全体をロールバックします。

デフォルト: 0。CloudFormation は、スタックリソースがデプロイされている間だけアラームをモニタリングします。その後はモニタリングしません。

対応する UI: [設定] タブ/アドバンスト/**[モニタリング時間]**

## tags
<a name="deploy.action.cfn.tags"></a>

(*DeployCloudFormationStack*/Configuration/**tags**)

(オプション)

CloudFormation スタックにアタッチするタグを指定します。タグは、コスト配分など、スタックを識別する目的で使用できる任意のキーと値のペアです。タグとその使用方法の詳細については、「Amazon EC2 ユーザーガイド」の「[リソースのタグ付け](https://docs.aws.amazon.com/)」を参照してください。CloudFormation でのタグ付けの詳細については、*AWS CloudFormation 「 ユーザーガイド*」の[CloudFormation 「スタックオプションの設定](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html)」を参照してください。

キーには英数字またはスペースを含めることができ、最大 127 文字を使用できます。値には英数字またはスペースを含めることができ、最大 255 文字を使用できます。

スタックごとに最大 50 個の一意のタグを追加できます。

対応する UI: [設定] タブ/アドバンスト/**[タグ]**