Используйте CAPABILITY_AUTO_EXPAND для вложенных стеков в CloudFormation - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь использовать вложенный стек, и когда выполняется мой ChangeSet, я получил эту ошибку:

Requires capabilities : [CAPABILITY_AUTO_EXPAND]

Я пошел и создал конвейер с облачной информацией.

Это может использоваться для создания конвейера:

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

Ошибка была: «Значение свойства Configuration должно быть объектом со строкой(или простой тип) свойства »

Это самые близкие документы, которые я нахожу: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStack.html

В нем сказано: Type: Array of strings для capabilites, а в документации aws cli сказано аналогично, но нене приведу пример.

Так что у меня закончились идеи о том, что еще можно попытаться получить с помощью CAPABILITY_AUTO_EXPAND.

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

Я попробовал другой вариант, и он работал!

Configuration:
  ..
  Capabilities: CAPABILITY_IAM,CAPABILITY_AUTO_EXPAND
  ...
0 голосов
/ 01 декабря 2018

Я получил ответ от Китона Ходжсона, эта команда cli работает:

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

Обратите внимание, что запятая отсутствует.

Я все еще не знаю, как изменить шаблон конвейера.чтобы это работало.

...