Входные переменные манифеста TerraformBeta
Входные переменные для конфигурации ресурсов условно делятся на специальные, внешние и локальные.
Группа | Описание | Возможные типы |
|---|---|---|
Специальные | Переменные, позволяющие использовать данные, полученные от брокера. Поддерживаются следующие переменные:
При объявлении таких переменных в манифесте, их значение будет получено Terraform автоматически |
|
Внешние | Переменные, позволяющие задать значения тарифных опций, которые настраиваются в мастере конфигурации тарифного плана. Имя переменной должно соответствовать имени YAML-файла тарифной опции. Кроме объявления такой переменной в манифесте, она должна быть:
Для внешней переменной можно задать значение по умолчанию. Оно будет применено, если не удалось получить внешнее значение |
|
Локальные | Переменные, использующиеся только в манифесте. Значение переменной задается при ее объявлении в аргументе | Любые типы, поддерживаемые Terraform |
Пример объявления специальных переменных:
# Идентификатор развертывания сервисаvariable "instance_uuid" {type = string}# Email пользователяvariable "email" {type = string}
Пример объявления внешних и локальных переменных:
# Имя виртуальной сети, где будет создана ВМvariable "sub_network" {type = stringdefault = "test-net"}# Количество CPU для ВМvariable "flavor_vcpus" {type = numberdefault = 2}
При описании входных переменных можно использовать блоки locals. Они позволяют вычислять значения переменных при их объявлении, в том числе через значения других объявленных переменных. Пример: указание имени хоста с помощью локальной переменной.