Размещение подкаталога модулей Terraform - PullRequest
0 голосов
/ 28 сентября 2019

Я новичок в terraform, и я думаю о лучшей структуре для кодирования новых сред.

Допустим, у меня есть корневой каталог для каждой из моих сред, скажем, подготовка и подготовка.

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

Официальное руководство показывает каталог модулей как дочерний под каждым корнем (т. Е. Каталог dir для dev, другой для подготовки и т. Д.), Но это затрудняет совместное использование модулей для каждой среды.Это официальный совет, хотя https://www.terraform.io/docs/modules/index.html

Где у вас обычно находятся внутренние модули в ваших репозиториях?

С уважением, Шон

1 Ответ

0 голосов
/ 29 сентября 2019

Мы стараемся не создавать «внутренние» модули, так как они не могут повторно использоваться в репозиториях, поэтому мы используем источник git, а не источник файловой системы.Я нахожу этот метод лучше, потому что

  1. Модули не привязаны к одному репозиторию
  2. Вы можете версии своих модулей и ссылки на источник

При получении модуля из git вы просто создаете новый репозиторий для каждого модуля.Тогда вы можете сохранить все в чистоте с файлами вашего модуля

  • main.tf
  • variables.tf
  • output.tf
  • versions.tf

Где versions.tf используется для закрепления версий ядра Terraform и провайдера, требуемых для модуля.

, т. Е.

terraform {
    version = "= 0.12.9"
    required_providers {
        aws = ">= 2.7.0"
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...