Функция доступна в провайдере версии 4.5.1 и выше.

_Resource_ функция **decort_cb_cdrom_image** служит для управления cdrom - образом.

## Аргументы

_Resource_ функция **decort_cb_cdrom_image** для создания cdrom - образа принимает следующие аргументы:

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| name | string | :heavy_check_mark: | Имя образа<br/>При изменении - изменяет название образа |
| url | string | :heavy_check_mark: | Адрес образа |
| drivers | []string | :x: | Драйвера,<br/>возможные варианты - ["KVM_X86", "SVA_KVM_X86"], ["KVM_X86"], ["SVA_KVM_X86"] |
| hot_resize | bool | :x: | Использует ли машина горячее изменение размера образа |
| account_id | int | :x: | ID аккаунта владельца образа,<br/>может быть использован как при создании, так и редактировании образа |
| username_dl | string | :x: | Имя пользователя для загрузки бинарных данных,<br/>может быть использован как при создании, так и редактировании образа |
| password_dl | string | :x: | Пароль пользователя для загрузки бинарных данных,<br/>может быть использован как при создании, так и редактировании образа |
| sep_id | int | :x: | ID storage endpoint |
| pool_name | string | :x: | Пул для создания образа |
| architecture | string | :x: | Используется при создании, <br/>архитектура системы образа<br/>доступные значения: "X86_64"<br/>по умолчанию "X86_64" |
| permanently | bool | :x: | Мгновенное удаление<br/>можно использовать перед удалением |
| bootable | bool | :x: | Является ли образ загрузочным |
| enabled | bool | :x: | Доступность образа,<br/>используется при редактировании ресурса |
| computeci_id | int | :x: | Установка computeci,<br/>используется на уже созданном ресурсе,<br/>чтобы сбросить, необходимо передать 0 |
| shared_with | []int | :x: | Настройка доступа образа аккаунтам<br/>используется на уже созданном ресурсе,<br/>пустой маасив - удаление всех доступов, если они были |
| enabled_stacks | []int | :x: | Доступные стаки,<br/>используется на уже созданном ресурсе<br/>для удаления всех доступных стаков, необходимо передать пустой массив |

## Возвращаемые значения

В случае успешного выполнения _resource_ функция **decort_cb_cdrom_image** возвращает в указанную при вызове переменную следующие значения:

| Параметр | Тип | Описание |
| --- | --- | --- |
| unc_path | string | unc path |
| ckey | string | CKey |
| account_id | int | accountId привязки образа |
| acl | []Struct [см. ниже](#описание-структуры-acl) | Cписок Acces Control |
| architecture | string | Архитектура образа, возможен вариант X86_64 |
| boot_type | string | Тип запуска ОС - bios или uefi |
| bootable | bool | Является ли образ загрузочным |
| drivers | []string | Список используемых драйверов |
| enabled | bool | Доступность образа |
| gid | int | ID платформы, где образ будет создан |
| guid | int | Внутренний id образа, совпадает с image_id |
| history | object{id: int, guid: string, timestamp: int} | История обновлений образа |
| hot_resize | bool | Использует ли машина горячее изменение размера образа |
| image_id | int | ID образа |
| link_to | int | Привязка к образу, используется в виртуальных образах |
| milestones | int | Вехи |
| name | string | Название образа |
| password | string | Пароль для образа |
| pool_name | string | Пул, в котором был создан образ |
| provider_name | string | Наименование провайдера |
| purge_attempts | int | Попытки |
| reference_id | string | ID ссылки |
| res_id | string | ID ресурса |
| res_name | string | Наименование ресурса |
| rescuecd | bool | CD или нет |
| last_modified | int | Дата последнего изменения |
| deleted_time | int | Время удаления |
| desc | string | Описание образа |
| present_to | map[string]int | Список ID ресурсов для который предоставлен образ |
| sep_id | int | storage endpoint provider ID |
| shared_with | []int | Список ресурсов, имеющих доступ к образу |
| size | int | Размер образа |
| snapshot_id | string | ID снапшота |
| status | string | Статус образа |
| tech_status | string | Технический статус |
| url | string | Адрес, которого осуществлялась загрузка образа |
| version | string | Версия |

### Описание структуры acl
| Параметр | Тип | Описание |
| --- | --- | --- |
| explicit | bool | Явно ли указан доступ |
| guid | string | guid Ресурса |
| right | string | Права на ресурс |
| status | string | Статус ресурса |
| type | string | Тип ресурса |
| user_group_id | string | ID user group |

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

Пример вызова _resource_ функции **decort_cb_cdrom_image**:

```terraform
resource "decort_cb_cdrom_image" "my_image" {
  #имя образа
  #обязательный параметр
  #тип - строка
  #используется при создании и обновлении
  name = "test_image_rename"

  #адрес образа
  #обязательный параметр
  #тип - строка
  #используется при создании
  url = "https://colba.decs.online/index.php/s/G3H7AREngzeKGw2/download"

  #драйвера
  #опциональный параметр
  #тип - массив строк
  #возможные варианты - ["KVM_X86", "SVA_KVM_X86"], ["KVM_X86"], ["SVA_KVM_X86"]
  #используется при создании
  #drivers = ["KVM_X86", "SVA_KVM_X86"]

  #поддержка hot resize
  #опциональный параметр
  #тип - булев
  #используется при создании и обновлении
  #hot_resize = true

  #id аккаунта владельца образа
  #опциональный параметр
  #тип - целое число
  #используется при создании и обновлении
  #account_id = 57252

  #имя пользователя и пароль для загрузки бинарных данных
  #опциональные параметры
  #тип - строка
  #используется при создании и обновлении
  #username_dl = "Valera1"
  #password_dl = "1231"

  #sep id
  #опциональный параметр
  #тип - целое число
  #используется при создании
  #sep_id = 1206

  #пул для создания образа
  #опциональный тип
  #тип - строка
  #используется при создании
  #pool_name = "vmstor"

  #архитектура системы образа
  #опциональный параметр
  #тип - строка
  #доступные значения: "X86_64"
  #используется при создании
  #architecture = "X86_64"

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

  #настройка доступа образа аккаунтам
  #опциональный параметр
  #тип - массив целых чисел
  #пустой массив - удаление всех доступов, если они были
  #используется при обновлении
  #shared_with = [28096, 57121]

  #установка computeci
  #опциональный параметр
  #тип - целое число
  #чтобы сбросить, необходимо передать 0
  #используется при обновлении
  #computeci_id = 1

  #доступные стаки
  #опциональный параметр
  #тип - массив целых чисел
  #для удаления всех доступных стаков, необходимо передать пустой массив
  #используется при обновлении
  #enabled_stacks = [9]

  #является ли образ загрузочным 
  #опциональный параметр
  #тип - булев
  #используется при обновлении
  #bootable = true
}

# once the above directive completes, cdrom image will be accessible
# as decort_cb_cdrom_image.my_image
```

Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/wiki-terraform-provider-decort/src/branch/main/4.9.7/04.02-Инициализация-Terraform-провайдера-DECORT.md)).

После успешного завершения такого вызова **decort_cb_cdrom_image** в переменной `decort_cb_cdrom_image.my_image` будут сохранены возвращаемые значения.
