У меня есть следующий вариант использования:
- Приложение развернуто в различных версиях.
- В этих версиях некоторые ресурсы остаются прежними, некоторые изменяются
- Мне нужно иметь возможность разбирать отдельные версии
Давайте рассмотрим пример конфигурации:
variable "majorVersion" {
type = "string"
}
module "media-assets" {
majorVersion = "${var.majorVersion}"
input_bucket = "uploads-${var.majorVersion}"
source = "./modules/media-assets"
}
Теперь предположим, что я хочу развернуть другую версию, которая добавляет к его конфигурации еще один модуль:
module "sns" {
url = "https://my-api-${var.majorVersion}.xyz.com/sns"
source = "./modules/sns"
}
Поскольку v1 не требует этого ресурса, его создание для v1 нежелательно. Могу ли я по-прежнему запускать этот сценарий для majorVersion = v1 после добавления последней части без терраформного создания ресурсов sns? Есть ли способ, которым я могу управлять на основе переменной, какие модули включены, а какие нет?