Где следует указывать параметры при использовании CloudFormation с CodePipeline

Когда я использую CodePipeline для развертывания моего стека CloudFormation, ему нужно постоянно задавать параметры... пока, надеюсь, я прав?

Параметры: [xxx, yyy, ...] должны иметь значения (Сервис: AmazonCloudFormation; Код состояния: 400; Код ошибки: ValidationError; Идентификатор запроса: 43e9ede4-a352-11e8-bfe2-15cc69824d50)

Моя текущая настройка выглядит примерно так:

  • 1 стек для CI/CD (CodePipeline, CodeBuild и развертывание инфраструктуры с использованием CloudFormation)
  • 1 стек для "фактической" инфраструктуры: БД, кластер ECS и т. Д.

Мне нужно определить мои параметры как в CI, так и в реальном стеке. Это потому, что стек CI должен будет передать эти параметры в реальный стек... это кажется неправильным.

В идеале я хочу, чтобы мой стек CI знал только о том, что нужно для CI / CD, а не о переменных среды, которые требуются для реального стека?


ОБНОВЛЕНИЕ: возможное решение?

Я попытался иметь 1 дополнительный стек: стек "config", который будет хранить все в хранилище параметров EC2, но похоже, что CloudFormation не может определить секреты

AWS CloudFormation не поддерживает тип параметра SecureString. ( https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html)

Так что, возможно, у меня будет свой текущий стека, сохраняющий все параметры в хранилище параметров EC2 через CodeBuild, тогда мой стек CI будет читать из этого. Это правильный подход?

0 ответов

Другие вопросы по тегам