web-dev-qa-db-ja.com

CloudFormationのネストされたスタックにCAPABILITY_AUTO_EXPANDを使用します

ネストされたスタックを使用しようとしていますが、ChangeSetの実行中にこのエラーが発生しました。

Requires capabilities : [CAPABILITY_AUTO_EXPAND]

私は行って、cloudformationでパイプラインを作成しました。

これを使用してパイプラインを作成できます。

Configuration:
  ActionMode: CHANGE_SET_REPLACE
  ChangeSetName: changeset
  RoleArn: ??
  Capabilities: CAPABILITY_IAM
  StackName: appsync-graphql
  TemplatePath: BuildArtifact::output.yaml

これはできません:

Configuration:
  ActionMode: CHANGE_SET_REPLACE
  ChangeSetName: changeset
  RoleArn: ??
  Capabilities: 
    - CAPABILITY_IAM
    - CAPABILITY_AUTO_EXPAND
  StackName: appsync-graphql
  TemplatePath: BuildArtifact::output.yaml

エラー:「プロパティ構成の値は、文字列(または単純型)プロパティを持つオブジェクトでなければなりません」

これは私が見つける最も近いドキュメントです: https://docs.aws.Amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStack.html

と言いました: Type: Array of strings機能については、aws cli docsは同様に述べていますが、例を挙げていません。

そのため、CAPABILITY_AUTO_EXPAND機能を使用するために他に何をしようとするかについてのアイデアが不足しました。

10
Tan Duong

私は別のバリアントを試してみましたが、うまくいきました!

Configuration:
  ..
  Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
  ...
16
jbasko

私はキートン・ホジソンから答えを得ました、このCLIコマンドは機能します:

sam deploy --template-file output.yaml --stack-name <AppName> --capabilities CAPABILITY_IAM CAPABILITY_AUTO_EXPAND

コンマがないことに注意してください。

パイプラインテンプレートを変更して動作させる方法はまだわかりません。

7
Tan Duong