/*
Пример использования
Получение данных о списке удаленных compute (виртуальных машин)
*/

#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
  required_providers {
    decort = {
      source  = "basis/decort/decort"
      version = "<VERSION>"
    }
  }
}
*/

provider "decort" {
  authenticator = "decs3o"
  #controller_url = <DECORT_CONTROLLER_URL>
  controller_url = "https://ds1.digitalenergy.online"
  #oauth2_url = <DECORT_SSO_URL>
  oauth2_url           = "https://sso.digitalenergy.online"
  allow_unverified_ssl = true
}

data "decort_kvmvm_list_deleted" "compute_list" {
  #фильтр по id виртуальной машины
  #опциональный параметр
  #тип - целое число
  #by_id = 100
 
  #фильтр по имени виртуальной машины
  #опциональный параметр
  #тип - строка
  #name = "test"

  #фильтр по id аккаунта
  #опциональный параметр
  #тип - целое число
  #account_id = 100

  #фильтр по имени ресурсной группы
  #опциональный параметр
  #тип - строка
  #rg_name = "test"

  #фильтр по id ресурсной группы
  #опциональный параметр
  #тип - целое число
  #rg_id = 100

  #фильтр по техническому статусу
  #опциональный параметр
  #тип - строка
  #tech_status = "some"

  #фильтр по ip
  #опциональный параметр
  #тип - строка
  #ip_address = "test"

  #фильтр по имени extNet
  #опциональный параметр
  #тип - строка
  #extnet_name = "test"

  #фильтр по id extNet
  #опциональный параметр
  #тип - целое число
  #extnet_id = 100

  #сортировка по одному из поддерживаемых полей
  #опциональный параметр
  #тип - строка
  #формат - "+поле" по возрастанию / "-поле" по убыванию
  #sort_by = "+name"

  #номер страницы для отображения
  #опциональный параметр
  #тип - целое число
  #если не задан - выводятся все доступные данные
  #page = 1

  #размер страницы
  #опциональный параметр
  #тип - целое число
  #если не задан - выводятся все доступные данные
  #size = 1
}

output "output" {
  value = data.decort_kvmvm_list_deleted.compute_list
}
