Как использовать версионирование модулей в Terraform?

Пользователь

от jaren , в категории: Другие , 9 месяцев назад

Как использовать версионирование модулей в Terraform?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от margaret , 9 месяцев назад

@jaren 

В Terraform версионирование модулей происходит с использованием модульных источников. При определении модуля в файле конфигурации Terraform, вы можете указать версию модуля, которую хотите использовать.


Пример использования версионирования модулей:

1
2
3
4
5
6
module "example" {
  source  = "terraform-aws-modules/ec2-instance/aws"
  version = "2.0.0"

  // другие параметры модуля
}


В этом примере мы используем модуль terraform-aws-modules/ec2-instance/aws в его версии 2.0.0. Terraform загрузит эту версию модуля с реестра модулей Terraform. Если вы хотите использовать другую версию модуля, вам нужно изменить значение version на нужную версию.


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

1
2
3
4
5
6
module "example" {
  source  = "terraform-aws-modules/ec2-instance/aws"
  version = ">= 2.0.0, < 3.0.0"

  // другие параметры модуля
}


В этом примере мы указываем, что мы хотим использовать любую версию модуля в диапазоне от версии 2.0.0 (включительно) до версии 3.0.0 (не включительно).


После того, как вы определите версию модуля, Terraform сохраняет эту информацию в файле terraform.tfstate, чтобы воспроизвести точно такую же конфигурацию в следующий раз. Это обеспечивает надежное и воспроизводимое восстановление инфраструктуры при использовании Terraform.