Skip to content

nubes_dummy — Болванка

Тестовая «болванка» платформы: создаёт инстанс, который можно заставить ждать, падать на старте или в процессе, и записывать/не записывать данные в CMDB и Vault. Служит для проверки поведения провайдера на разных сценариях (успех, отказ, откат), а не для рабочей нагрузки.

Инструкция по сервису Отдельная страница: руководство по сервису.

Специфика Nubes: destroy ≠ удаление terraform destroy по умолчанию усыпляет инстанс (suspend), а не удаляет. Подробности — в разделе «Жизненный цикл» и в общем руководстве «Как работает провайдер».


Пример использования

resource "nubes_dummy" "test" {
  resource_name  = "my-dummy"
  resource_realm = "dummy"

  duration_ms = 0     # задержка перед завершением
  fail_at_start  = false
  fail_in_progress = false

  bodymessage = "hello"
  json_example = jsonencode({ foo = "bar" })

  map_example = {
    subparam1 = "a"
    subparam2 = "b"
    secret    = "s3cr3t"
  }

  map_fixed = {
    param1   = 1
    param2   = "1"
    param3   = 1
    bol1     = false
    min_str1 = "abracadabra"
  }

  arr = ["test"]
}

Argument Reference

Имя Тип Обязательный По умолчанию Описание Ограничения
resource_name string да — Имя инстанса —
duration_ms integer нет 0 Пауза (sleep) перед завершением, мс —
fail_at_start bool нет false Аварийно завершить джоб, ничего не записав в CMDB false, true
fail_in_progress bool нет false Начать джоб и упасть в процессе, не записав в CMDB false, true
where_fail integer нет 1 Где упасть (с fail_in_progress): 1 — prepare, 2 — блок Data fill, 3 — после записи в Vault 1, 2, 3
resource_realm string нет dummy «Платформа» развёртывания dummy
bodymessage string нет — Дата, уходящая в Vault —
json_example string нет — Для тестирования интерфейса —
nested_ref_example string нет — — —
arr list да — Тестовый список —

map_example

Имя Тип Обязательный По умолчанию Описание
subparam1 string нет — Для администратора
subparam2 string нет — —
secret string нет — Секрет

map_fixed

Имя Тип Обязательный По умолчанию Описание
param1 integer нет 1 Integer, секрет
param2 string нет 1 1, 2, 3
param3 integer нет 1 Целое положительное
bol1 bool нет false Булевский
min_str1 string нет abracadabra Не меньше 10 символов

array_map_fixed_example

Имя Тип Обязательный По умолчанию Описание
param1 integer да — —
param2 string да — 1, 2, 3
param3 integer нет 1 —
bol1 bool да — false, true
min_str1 string да — Не меньше 10 символов

Общие атрибуты (есть у всех ресурсов):

Имя Тип Обязательный По умолчанию Описание
operation_timeout string нет — Максимальное время ожидания операции
log_level string нет none Логирование стадий: none, info, debug
suspend_on_destroy bool нет true При destroy — усыпить вместо удаления
keep_on_destroy bool нет false При destroy — ничего не делать в облаке (state_only)
adopt_existing_on_create bool нет false Авто-подхват существующего инстанса при apply

Attribute Reference

Имя Тип Описание
id string UUID инстанса
state_out / state_out_flat map Ответ API
state_params / state_params_flat map Параметры, отправленные в API
vault_secrets map (sensitive) Секреты из Vault
vault_url / vault_user_path string Адрес/путь Vault
vault_fields list Список доступных ключей секретов

Жизненный цикл

Флаг Дефолт Поведение при destroy
suspend_on_destroy true Инстанс переводится в suspend (не удаляется)
suspend_on_destroy false Выполняется операция delete — инстанс удаляется в облаке
keep_on_destroy false Если true — облако не трогается, ресурс только убирается из состояния (state_only); приоритетнее suspend_on_destroy

Зачем нужно усыпление suspend — временная остановка: ресурсы высвобождаются, а инстанс можно вернуть в работу в любой момент повторным apply.

Удаление усыплённого инстанса Удалить усыплённый инстанс можно, когда он пробыл в suspend 14 дней.

⚠️ Из Terraform это невозможно — операция delete для усыплённого инстанса недоступна. Удаляйте его вручную в Личном кабинете (ЛК).

  • Инстанс в статусе «not created» (после упавшего create) блокирует имя и не удаляется через API — чистится вручную в Личном кабинете.

Operations

Операция Доступно из Terraform Комментарий
create ✅ apply Создание инстанса
modify ✅ apply Меняются duration_ms, fail_at_start, fail_in_progress, where_fail, bodymessage, map_example, json_example
suspend ✅ destroy (при suspend_on_destroy=true) Усыпление
resume ✅ apply (при adopt_existing_on_create=true) Пробуждение
delete ✅ destroy (suspend_on_destroy=false) Удаление инстанса в облаке. Только для работающего (running); усыплённый — вручную в ЛК
reconcile ✅ через nubes_service_operation Синхронизация состояния (универсальная операция)
redeploy ✅ apply (при смене git_revision) Пересборка из git (поле-триггер)

See the Terraform Registry attribute reference.