Я хочу вывести поставщика 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"
}
}