Массовое создание ресурса из единого шаблона CloudFormation с помощью CodePipeline

Мне нужно создать сразу несколько пользователей IAM из одного стека облачной информации.

Поскольку Cloudformation не поддерживает Loop. Я создал Code Pipeline, который развертывает шаблон облачной информации, хранящийся в AWS CodeCommit.

Могу ли я использовать функцию переопределения параметров конвейера кода, чтобы создать нескольких пользователей, например, давая параметр в списке как:

{
   "Username":["Bob","Alice","John"]
}

2 ответа

Решение

Вам потребуется действие между действиями CodeCommit и CloudFormation для создания шаблона, включающего каждый пользовательский ресурс IAM (если вы не планируете зафиксировать расширенный шаблон CloudFormation). CodeBuild, вероятно, является лучшим выбором для запуска какой-либо команды, которая генерирует шаблон CoudFormation.

Вы можете найти CDK ( https://github.com/awslabs/aws-cdk/) интересным для такого варианта использования, как этот. Это позволит вам описать пользователей IAM в цикле, а затем синтезировать храм CoudFormation. На момент написания этого ответа он находится в предварительном просмотре, поэтому не полагайтесь на него для производства.

Вы должны, но если вы не оставите уже существующие, я думаю, что это отбросит предыдущие. Вы можете создать пользовательский ресурс, привязанный к лямбда-функции, тогда ваша лямбда-функция может "не" отбрасывать предыдущие ресурсы.