You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
terraform-provider-dynamix/wiki/1.0.1/06.01.07-Data_dynamix_image.md

83 lines
6.8 KiB

6 months ago
_Data source_ функция **dynamix_image** служит для получения информации об имеющихся в облачной платформе образах. Образы это дисковые ресурсы, уже содержащие некоторые данные ("golden image"), для которых реализован механизм быстрого клонирования/копирования в новый диск.
Основной сценарий использования таких ресурсов это создание каталогов образов операционных систем (ОС), на базе которых создаются загрузочные диски для _compute_. Также с их помощью можно хранить эталонную информацию, требующуюся для работы приложений, например, файлы баз данных.
Образ ОС является основной для создания новых виртуальных серверов, так как из него формируется загрузочный диск сервера. Как следствие, для создания виртуального сервера помимо других параметров требуется указать идентификатор нужного образа ОС. Для получения такого идентификатора можно воспользоваться _data source_ функцией **dynamix_image**.
## Аргументы
_Data source_ функция **dynamix_image** принимает следующие аргументы:
| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| image_id | int | :heavy_check_mark: | ID образа, информацию по которому требуется получить. |
| show_all | bool | :x: | Скрывать / показывать информацию об удаленном образе |
ID необходимо образа можно взять вызвав [dynamix_image_list](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.0.1/06.01.06-Data_dynamix_image_list.md)
## Возвращаемые значения
В случае успешного выполнения _data source_ функция **dynamix_image** возвращает в указанную при вызове переменную следующие значения:
| Параметр | Тип | Описание |
| --- | --- | --- |
| account_id | int | accountId привязки образа |
| architecture | string | Архитектура образа, возможен вариант X86_64 или PPC64_LE |
| boot_type | string | Тип запуска ОС - bios или uefi |
| bootable | bool | Является ли образ загрузочным |
| cd_presented_to | string | Каким виртуальным машинам предоставлен CD образ |
| computeci_id | int | ID вычислительного ресурса |
| desc | string | Описание образа |
| drivers | []string | Список используемых драйверов |
| enabled | bool | Доступность образа |
| gid | int | ID платформы, где образ будет создан |
| guid | int | Внутренний id образа, совпадает с image_id |
| history | object{id: int, guid: int, timestamp: int} | История обновлений образа |
| hot_resize | bool | Использует ли машина горячее изменение размера образа |
| image_type | string | Тип образа: linux, windows или другой |
| last_modified | int | Дата последнего изменения |
| link_to | int | Привязка к образу, используется в виртуальных образах |
| meta | []string | Мета информация об образе |
| milestones | int | Вехи |
| name | string | Название образа |
| network_interface_naming | string | Название сетевого интерфейса |
| password | string | Пароль для образа |
| password_dl | string | Пароль для загрузки двоичных файлов |
| permanently | bool | Удаление образа: мгновенное или нет |
| pool_name | string | Пул, в котором был создан образ |
| provider_name | string | Наименование провайдера |
| purge_attempts | int | Попытки |
| present_to | []int | Список ID ресурсов для который предоставлен образ |
| reference_id | string | ID ссылки |
| res_id | string | ID ресурса |
| res_name | string | Наименование ресурса |
| rescuecd | bool | CD или нет |
| sep_id | int | storage endpoint provider ID |
| size | int | Размер образа |
| status | string | Статус образа |
| tech_status | string | Технический статус |
| unc_path | string | unc path |
| url | string | Адрес, которого осуществлялась загрузка образа |
| username | string | Имя пользователя образа |
| username_dl | string | Имя пользователя для загрузки двоичных файлов |
| version | string | Версия |
## Пример использования
Пример вызова _data source_ функции **dynamix_image**:
```terraform
data "dynamix_image" "image" {
#id образа
#обязательный параметр
#тип - целое число
image_id = 111
#показывать ли информацию об удаленном образе
#опциональный параметр
#тип - булев
#по умолчанию - false
#show_all = false
}
```
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DYNAMIX см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.0.1/04.02-Инициализация-Terraform-провайдера-DYNAMIX.md)).
После успешного завершения такого вызова **dynamix_image** в переменной `data.dynamix_image.image` будут сохранены возвращаемые значения. В частности, для получения идентификатора образа следует использовать конструкцию `data.dynamix_image.image.id`