ansible развертывание на нескольких aws учетных записях с использованием codebuild - PullRequest
0 голосов
/ 22 апреля 2020

Плейбук ansible, через который я запускаю aws codebuild, развертывается только на той же учетной записи. Вместо использования отдельной сборки для каждой учетной записи, я хотел бы использовать только одну сборку и управлять развертыванием с несколькими учетными записями через ansible inventory. Как настроить библиотеку ansible stati c для добавления файлов yml для каждой другой учетной записи aws или среды, в которой она будет развертываться? То есть инвентарь классифицирует эти учетные записи в среде dev, stg & prod.

Я немного знаю о том, как это должно быть структурировано, и как создать файл yml в папке инвентаря с именем учетной записи, а также создайте соответствующий файл в подпапке group-vars без расширения yml. Но я не знаю деталей содержимого файла. Не могли бы вы объяснить это мне?

С другой стороны, переменной среды codebuild присваивается несколько имен учетных записей, среда и роль, которую она должна играть в этих учетных записях для развертывания. У меня вопрос: как настроить структуру инвентаря и содержимое файла, чтобы это работало?

1 Ответ

1 голос
/ 24 апреля 2020

Если вы хотите работать с ресурсами в другой учетной записи, общая идея в AWS состоит в том, чтобы "принять" роль в этой учетной записи и выполнять вызовы API в обычном режиме. Я вижу, что Ansible имеет модуль ' sts_assume_role ', который помогает взять на себя роль. Я нашел следующую статью в блоге, которая может дать вам несколько советов. Запускаете ли вы команду ansible на своем ноутбуке или в CodeBuild, идея одна и та же:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...