翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CloudFormation
AWS CloudFormation スタックでオペレーションを実行します。スタックは、単一のユニットとして管理できる AWS リソースのコレクションです。スタック内のすべてのリソースは、スタックの AWS CloudFormation テンプレートで定義されます。変更セットにより、元のスタックを変更せずに表示できる比較が作成されます。スタックおよび変更セットで実行できる AWS CloudFormation アクションのタイプについては、ActionMode
パラメータを参照してください。
アクションタイプ
-
カテゴリ:
Deploy
-
所有者:
AWS
-
プロバイダー:
CloudFormation
-
バージョン:
1
設定パラメータ
- ActionMode
-
: 必須 はい
ActionMode
は、AWS CloudFormation がスタックまたは変更セットで実行するアクションの名前です。以下のアクティベーションモードを使用できます。-
CHANGE_SET_EXECUTE
は、指定された一連のリソース更新に基づくリソーススタックの変更セットを実行します。このアクションでは、AWS CloudFormation はスタックの変更を開始します。 -
CHANGE_SET_REPLACE
は、変更セットが存在しない場合、指定されたスタック名とテンプレートに基づいて変更セットを作成します。変更セットがある場合は、AWS CloudFormation それを削除して新しいものを作成します。 -
スタックが存在しない場合は、
CREATE_UPDATE
がスタックを作成します スタックが存在する場合、AWS CloudFormation はそのスタックを更新します。既存のスタックを更新するには、このアクションを使用します。と違ってREPLACE_ON_FAILURE
スタックが存在し、失敗状態の場合、 CodePipeline スタックを削除して置き換えたりすることはありません。 -
DELETE_ONLY
は、スタックを削除します。存在しないスタックを指定した場合は、アクションはスタックを削除せずに正常に終了します。 -
スタックが存在しない場合は、
REPLACE_ON_FAILURE
がスタックを作成します。スタックが存在しており失敗状態の場合、AWS CloudFormation はそのスタックを削除して新しいスタックを作成します。スタックが失敗状態ではない場合は、AWS CloudFormation はそれを更新します。AWS CloudFormation に次のいずれかのステータスタイプが表示されている場合、スタックは失敗状態になります。
-
ROLLBACK_FAILED
-
CREATE_FAILED
-
DELETE_FAILED
-
UPDATE_ROLLBACK_FAILED
失敗したスタックをリカバリーまたはトラブルシューティングせずに自動的に置き換えるには、このアクションを使用します。
重要 REPLACE_ON_FAILURE
は、スタックが削除される可能性があるため、テスト目的でのみ使用することをお勧めします。 -
-
- StackName
-
: 必須 はい
StackName
は、既存のスタックの名前、または作成するスタックの名前です。 - 機能
-
: 必須 条件付き
Capabilities
を使用すると、テンプレートに一部のリソースを単独で作成および更新する機能があり、これらの機能はテンプレート内のリソースのタイプに基づいて決定されることが確認されます。このプロパティは、スタックテンプレートに IAM リソースがある場合、またはマクロを含むテンプレートから直接スタックを作成する場合に必要です。AWS CloudFormation アクションがこの方法で正常に動作するためには、以下のいずれかの機能を使用して実行することを明示的に認識する必要があります。
-
CAPABILITY_IAM
-
CAPABILITY_NAMED_IAM
-
CAPABILITY_AUTO_EXPAND
機能間にカンマ(スペースなし)を使用して、複数の機能を指定できます。アクションの宣言 の例は、CAPABILITY_IAM プロパティと CAPABILITY_AUTO_EXPAND プロパティの両方を持つエントリを示しています。
Capabilities
の詳細については、[AWS CloudFormation API リファレンス]の [UpdateStack] のプロパティを参照してください。 -
- ChangeSetName
-
: 必須 条件付き
ChangeSetName
は、既存の変更セットの名前、または指定されたスタック用に作成する新しい変更セットの名前です。このプロパティは、以下のアクションモードでは必須です。CHANGE_SET_REPLACE および CHANGE_SET_EXEC 他のすべてのアクションモードでは、このプロパティは無視されます。
- RoleArn
-
: 必須 条件付き
RoleArn
は、指定されたスタックのリソースを操作するときに AWS CloudFormation が引き受ける IAM サービスロールの ARNです。RoleArn
は、変更セットを実行するときには適用されません。を使用しない場合 CodePipeline 変更セットを作成するには、変更セットまたはスタックにロールが関連付けられていることを確認します。注記 このロールは、アクション宣言
RoleArn
で設定された、実行中のアクションのロールと同じアカウントである必要があります。このプロパティは、以下のアクションモードでは必須です。
-
CREATE_UPDATE
-
REPLACE_ON_FAILURE
-
DELETE_ONLY
-
CHANGE_SET_REPLACE
注記 AWS CloudFormation にはテンプレートへ S 3 署名付きの URL が与えられるため、この
RoleArn
にはアーティファクト バケットへのアクセス許可は必要ありません。ただし、アクションRoleArn
は、署名付き URL を生成するために、アーティファクト バケットへアクセスする許可を必要と [します]。 -
- TemplatePath
-
: 必須 条件付き
TemplatePath
は AWS CloudFormation テンプレートファイルを表します。このアクションの入力アーティファクトにファイルを含めます。ファイル名の形式は次のとおりです:Artifactname
::TemplateFileName
Artifactname
は、CodePipeline に表示される入力アーティファクト名です。たとえば、アーティファクト名SourceArtifact
とtemplate-export.json
ファイル名を持つソースステージでは、次の例に示すようなTemplatePath
の名前が作成されます。"TemplatePath": "SourceArtifact::template-export.json"
このプロパティは、以下のアクションモードでは必須です。
-
CREATE_UPDATE
-
REPLACE_ON_FAILURE
-
CHANGE_SET_REPLACE
他のすべてのアクションモードでは、このプロパティは無視されます。
注記 テンプレート本文を含む AWS CloudFormation テンプレートファイルの最小長は 1 バイト、最大長は 1 MB です。CodePipeline の AWS CloudFormation デプロイアクションでは、最大入力アーティファクト サイズは常に 256 MBです。詳細については、AWS の CodePipeline 中のクォータ および [AWS CloudFormation の制限] を参照してください。
-
- OutputFileName
-
: 必須 いいえ
を使用する
OutputFileName
次のように出力ファイル名を指定します。CreateStackOutput.json
とすると、 CodePipeline はこのアクションのパイプライン出力アーティファクトに追加します。JSON ファイルには、AWS CloudFormation スタックのOutputs
セクションのコンテンツが含まれています。名前を指定しない場合、 CodePipeline 出力ファイルまたはアーティファクトを生成しません。
- ParameterOverrides
-
: 必須 いいえ
パラメータはスタックテンプレートで定義され、スタックの作成時または更新時にそれらの値を指定できます。JSON オブジェクトを使用して、テンプレートにパラメータ値を設定できます。(これらの値は、テンプレート設定ファイルに設定された値を上書きします。) パラメータオーバーライドの使用の詳細については、設定プロパティ(JSON オブジェクト)を参照してください。
パラメータ値のほとんどは、テンプレート設定ファイルを使用して指定することをお勧めします。パラメータの上書きは、パイプラインが実行されるまで不明な値にのみ使用します。詳細については、次を参照してください。でのパラメーターオーバーライド関数の使用 CodePipeline パイプラインのAWS CloudFormationユーザーガイド。
注記 すべてのパラメータ名がスタックテンプレートに存在する必要があります。
- TemplateConfiguration
-
: 必須 いいえ
TemplateConfiguration
はテンプレート設定ファイルです。このアクションの入力アーティファクトにファイルを含めます。テンプレート設定ファイルには、テンプレートのパラメータ値およびスタックポリシーを含めることができます。テンプレート設定ファイル形式の詳細については、「」を参照してください。AWS CloudFormation アーティファクト。テンプレート設定ファイル名は以下の形式に従います。
Artifactname
::TemplateConfigurationFileName
Artifactname
は、CodePipeline に表示される入力アーティファクト名です。たとえば、アーティファクト名SourceArtifact
とtest-configuration.json
ファイル名を持つソースステージでは、次の例に示すようなTemplateConfiguration
の名前が作成されます。"TemplateConfiguration": "SourceArtifact::test-configuration.json"
入力アーティファクト
-
アーティファクトの数:
0 to 10
-
説明: 入力として、AWS CloudFormationアクションはオプションでこれらの目的でアーティファクトを受け入れます。
-
実行するスタックテンプレートファイルを提供するため。(
TemplatePath
パラメータを参照。) -
使用するテンプレート設定ファイルを提供するため。(
TemplateConfiguration
パラメータを参照。) テンプレート設定ファイル形式の詳細については、「」を参照してください。AWS CloudFormation アーティファクト。 -
AWS CloudFormation スタックの一部としてデプロイされる Lambda 関数のアーティファクトを提供するため。
-
出力アーティファクト
-
アーティファクトの数:
0 to 1
-
説明: そのファイルに
OutputFileName
パラメータが指定されている場合、このアクションによって生成される出力アーティファクトには、指定された名前の JSON ファイルを含む出力アーティファクトがあります。JSON ファイルには、AWS CloudFormation スタックの「出力」セクションの内容が含まれています。AWS CloudFormation アクション用に作成できる出力セクションの詳細については、出力を参照してください。
出力変数
このアクションを設定すると、パイプライン内のダウンストリームアクションのアクション設定によって参照できる変数が生成されます。名前空間を使用してアクションを設定し、これらの変数をダウンストリームアクションの設定で使用できるようにします。
AWS CloudFormation アクションの場合、変数はスタックテンプレートの Outputs
セクションに指定した値から生成されます。CloudFormation アクションモードのうち、出力を生成するのは、スタックの作成、スタックの更新、変更セットの実行など、スタックの作成や更新を伴うアクションモードのみです。変数を生成するアクションモードは次のとおりです。
-
CHANGE_SET_EXECUTE
-
CHANGE_SET_REPLACE
-
CREATE_UPDATE
-
REPLACE_ON_FAILURE
詳細については、「変数」を参照してください。を使用してパイプラインを作成する方法を示すチュートリアルについては、 CloudFormation CloudFormation 出力変数を使用するパイプラインでのデプロイアクションについては、「」を参照してください。チュートリアル: の変数を使用するパイプラインの作成AWS CloudFormationデプロイアクション。
アクションの宣言
以下の資料も参照してください。
このアクションを利用する際に役立つ関連リソースは以下の通りです。
-
設定プロパティのリファレンス— このリファレンス・チャプタはAWS CloudFormationユーザーガイドこれらの説明と例については、を参照してください。 CodePipeline パラメータ。
-
[AWS CloudFormation API リファレンス] — [AWS CloudFormation API リファレンス] の [CreateStack] パラメータは、AWS CloudFormation テンプレートのスタックパラメータについて説明しています。