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

_Data source_ функция **decort_bservice** служит для получения информации о базовом сервисе. Базовый сервис (basic service) может быть шаблоном, на основе которого создаются вычислительные мощности (computes).

## Аргументы
_Data source_ функция **decort_bservice** принимает следующие аргументы:

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- | 
| service_id | int | :heavy_check_mark: | ID сервиса |


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

| Параметр | Тип | Описание |
| --- | --- | --- |
| account_id | int | ID аккаунта |
| account_name | string | Название аккаунта |
| base_domain | string | Базовый домен |
| computes | []Struct [см. ниже](#описание-структуры-compute) | Список компьютов |
| cpu_total | int | Кол-во ядер |
| created_by | string | Кем создан сервис |
| created_time | int | Время создания сервиса |
| deleted_by | string | Кем удален сервис |
| deleted_time | int | Время удаления сервиса |
| disk_total | int | Кол-во используемого места на дисках, ГБ |
| gid | int | Grid id |
| groups | []Struct [см. ниже](#описание-структуры-group) | Список вычислительных групп сервиса |
| guid | int | Внутренний ID сервиса |
| milestones | int | Вехи |
| service_id | int | ID сервиса |
| service_name | string | Название сервиса |
| parent_srv_id | int | ID родительского сервисе |
| parent_srv_type | string | Тип родительского сервиса |
| ram_total | int | Общее кол-во RAM, МБ |
| rg_id | int | ID ресурсной группы |
| rg_name | string | Название ресурсной группы |
| snapshots | []Struct [см. ниже](#описание-структуры-snapshots) | Список снимков состояний |
| ssh_key | string | Ключ пользователя для подключения по ssh |
| ssh_user | string | Имя пользователя для подключения по ssh |
| status | string | Статус сервиса |
| tech_status | string | Технический статус сервиса |
| updated_by | string | Кем сервис был обновлен |
| updated_time | int | Время последнего обновления |
| user_managed | bool | Флаг, управляется ли пользователем |

### Описание структуры compute
| Параметр | Тип | Описание |
| --- | --- | --- |
| account_id | int | ID аккаунта |
| architecture | string | Архитектура |
| compgroup_id | int | ID группы |
| compgroup_name | string | Наименование группы |
| compgroup_role | string | Роль компьюта в группе |
| id | int | ID компьюта |
| name | string | Наименование компьюта |
| rg_id | int | ID ресурсной группы |
| stack_id | int | Stack ID |
| status | string | Статус |
| tech_status | string | Тех. статус |

### Описание структуры group
| Параметр | Тип | Описание |
| --- | --- | --- |
| computes | int | Кол-во компьютов |
| consistency | bool | Последовательность |
| id | int | ID группы |
| name | string | Наименование группы |
| status | string | Статус |
| tech_status | string | Тех. статус |

### Описание структуры snapshots
| Параметр | Тип | Описание |
| --- | --- | --- |
|guid | string| guid снимка|
|label | string | Название снимка|
|timestamp | int | Время создания снимка |
|valid | bool | Флаг валидности снимка состояния|

## Пример использования
Пример вызова _data source_ функции **decort_bservice**:
```terraform
data "decort_bservice" "b" {
  #id сервиса
  #обязательный параметр
  #тип - число
  service_id = 11111

}
# once the above directive completes, bservice will be accessible 
# as data.decort_bservice.b
```

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

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