Terraform - развертывание в нескольких аккаунтах - PullRequest
0 голосов
/ 01 ноября 2018

В настоящее время я работаю с несколькими учетными записями AWS в организации. У меня есть несколько провайдеров настройки с предполагаемой ролью.

Есть ли способ прокручивать ресурсы через всех провайдеров, чтобы убедиться, что все установлено, что я определил в модуле Terraform? Я пытаюсь избежать наличия ресурса для каждого поставщика и иметь один ресурс, который будет использовать каждый поставщик.

Надеюсь, что кто-то может помочь с этим или имеет такой пример использования.

ТИА

1 Ответ

0 голосов
/ 01 ноября 2018

Нет, невозможно использовать только один блок ресурсов с использованием нескольких провайдеров. Лучший способ сделать это - иметь разные папки для разных учетных записей в организации. Каждая папка имеет свой main.tf с тем же ресурсным блоком / s (как в вашем случае) и разным provider.tf. Внутри вашего основного вы можете вызвать необходимые модули.

В вашем случае это может показаться избыточным кодом, но это лучший вариант. Обратитесь к структуре проекта ниже, чтобы получить представление.

|   Project Directory
|   
+---dev
|   |   main.tf
|   |   param.tfvars
|   |   provider.tf
|   |   terraform.tfstate
|   |   terraform.tfstate.backup
|   |   variables.tf
|   |   
+---modules
|   +---internetgateway
|   |       main.tf
|   |       outputs.tf
|   |       variables.tf
|   |       
|   +---nat
|   |       main.tf
|   |       outputs.tf
|   |       variables.tf
|   |       
+---prod
|   |   main.tf
|   |   param.tfvars
|   |   provider.tf
|   |   terraform.tfstate
|   |   terraform.tfstate.backup
|   |   variables.tf
|   |
+---test
|   |   main.tf
|   |   param.tfvars
|   |   provider.tf
|   |   terraform.tfstate
|   |   terraform.tfstate.backup
|   |   variables.tf    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...