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

Как создать временные одноразовые терраформные ресурсы?

Я просмотрел список рассылки и документацию, как это сделать, но ничего не нашел.

Вот мой пример использования: у меня довольно простая архитектура на AWS. Иногда мне нужно проверить разовые вещи, например, правильность конфигурации группы безопасности.

Для этого я раскручиваю два экземпляра. Поскольку мне не нравится щелкать мышью (и поскольку эти экземпляры нужно настраивать в разных частях VPC), я определил их в терраформе. .tf файл.

Я бы хотел, чтобы эти два экземпляра запускались только тогда, когда они мне явно требуются. Другими словами, когда я это сделаю terraform apply, Я не хочу, чтобы эти экземпляры создавались.

Вот несколько вещей, которые я пробовал:

Это достижимо с помощью count и a условный:

Настройте переменную со значением по умолчанию false в variables.tf:

variable temp_instances {
  default = false
}

Используйте это при определении ваших экземпляров, установив свойство count с помощью условный как это:

resource "aws_instances" "temp1" {
  ...
  count = "${var.temp_instances ? 1 : 0}"
  ...
}

Поскольку переменная false по умолчанию он устанавливает счетчик на 0 и не создает экземпляр. Затем вы можете при желании настроить его, установив для этой переменной значение true во время apply:

terraform apply -var 'temp_instances=true'

Используя указанное выше условие, теперь это будет истинно, поэтому счетчик устанавливается на 1.