Назад | Перейти на главную страницу

Могу ли я вывести провайдера из модуля в терраформе?

Я хочу вывести поставщика postgreql из модуля в terraform, а затем использовать его для дальнейшей настройки базы данных.

Текущий вариант использования - это модуль, создающий экземпляр postgres rds, и я хочу вернуть «поставщик postgresql», чтобы продолжить настройку ролей и баз данных.

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

Я бы просто отредактировал модуль и сделал бы то, что вам нужно внутри модуля, чтобы вам не приходилось выводить эти вещи.

Вместо этого переключите принцип и введите Провайдера.

Например. в вашем модуле у вас есть

provider "azurerm" {
  version = "~> 1.16"
}

Теперь в реальной среде я бы переключился на поставщиков с псевдонимами, например

provider "azurerm" {
  version = "~> 1.16"
  alias   = "goldenrule"
}

Затем вы можете ввести его в модуль следующим образом

module "something-great" {
  source = "./great/thang/"
  providers = {
    azurerm  = "azurerm.goldenrule"
  }
}