TOOLS/ — generators + scripts + config + ARCHITECTURE.md ├── yaml-generator/ (code) ├── resource-generator/ (code) ├── docs-generator/ (code) ├── scripts/ (← devops/*.sh) ├── config/ (← devops/profiles/ + devops/config/) │ ├── test/ profile.env, services_list.txt, operation_timeouts.json │ ├── prod/ │ └── dev/ └── ARCHITECTURE.md (← devops/ARCHITECTURE.md) generated/ — pipeline output only (gitignored) ├── test/resources_yaml/, go/, docs/, provider_build/ ├── prod/ └── dev/ provider/ — code only, no generated files resources_yaml/ — DELETED (generated) internal/resources_gen/ — DELETED (generated) devops/ — removed (replaced by TOOLS/scripts + TOOLS/config + generated/) Generators now fail if NUBES_*_DIR not set (no defaults to provider/). Provider requires pipeline to populate resources_gen/ before build.
3.9 KiB
3.9 KiB
Resource nubes_vc_vm
Service ID: 23
Service Name: VM в Cloud Director (старый формат) (vc_vm)
Manual | Create params | Modify params | Output params | Operations | Example
Create params
Обязательные параметры (вводимые пользователем)
| ID | Code | Type | Description | Constraints |
|---|---|---|---|---|
| 33 | vapp_uid | uuid | InstanceUid vApp. vApp должен быть создан | ref_svc_id=26 |
| 406 | ip_space_name | string | Брать из свойств ресурсной платформы .vcd.ipSpace Имя IP-space для выделения внешнего IP (IP выделяется обязательно) |
Параметры, имеющие значение по умолчанию, если не меняете - эти параметры не обязательно прописывать в манифесте
| ID | Code | Type | Default | Description | Constraints |
|---|---|---|---|---|---|
| 35 | vm_name | string | vm0001 | Имя ВМ. Не поддерживает спец-символы | regex=^[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$ |
| 36 | vm_cpu | string | 2 | CPU | |
| 37 | vm_ram | string | 2 | RAM (GB) | |
| 38 | vm_disksize | string | 10 | Размер диска под сервис (GB) | |
| 176 | template_name | string | RockyLinux_9-16G | ОС | value_list=RockyLinux_9-16G, OracleLinux_9-16G, Ubuntu_24-20G, Ubuntu_22-20G |
| 177 | access_ip_list | string | 79.111.119.78/32 185.247.187.1/32 | IP адреса в CIDR формате через пробел для настройки аксес листов |
Параметры поведения (кратко)
По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
При `terraform destroy` или удалении ресурса из манифеста:
- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
- `false` — если ресурс уже есть, будет ошибка.
- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.
По умолчанию: `suspend_on_destroy = True`, `adopt_existing_on_create = False`.
При `terraform destroy` или удалении ресурса из манифеста:
- `suspend_on_destroy=true` — инстанс переводится в `Suspend` (не удаляется).
- `suspend_on_destroy=false` — Terraform удаляет ресурс только из state.
При `apply` флаг `adopt_existing_on_create` работает как авто-`import`:
- `false` — если ресурс уже есть, будет ошибка.
- `true` — Terraform может взять существующий инстанс под управление (`running` → adopt, `suspended` → resume+adopt при совпадении параметров).
Важно: один инстанс должен быть только в одном state. Иначе получите конфликт управления.