add: documentation

This commit is contained in:
“Naeel”
2026-06-30 15:45:24 +04:00
parent 540c1f7293
commit ca276d200f
1055 changed files with 47294 additions and 0 deletions
@@ -0,0 +1,24 @@
# Поля, изменяемые операцией `modify` (VM)
_Сохранено: 2026-01-29 — извлёно из UI (страница modify) и HAR `vm.html`._
## Кратко
Этот документ фиксирует набор параметров виртуальной машины, которые доступны для изменения через операцию `modify` в Личном кабинете (Deck). Используйте его при разработке провайдера и тестировании `modify`-сценариев.
## Изменяемые поля
- `vmCpu` — Количество ядер (int). Пример: `2`.
- `vmRam` — Объём оперативной памяти (GB) (int). Пример: `4`.
- `vmDisk` — Размер дополнительного диска (GB) (int, опционально).
- `ipSpaceName` — Назначение внешнего IP (select). Пример: `no-needed` (означает без внешнего IP).
- `accessIpList` — Белый список IP (JSON строка, textarea). Пример: `["192.168.1.1"]`.
- `accessPortList` — Список портов (JSON строка). Пример: `["22","10050"]`.
- `needAddZabbixTemplate` — Флаг добавления в Zabbix (bool).
## Примечания для разработчиков
- При вызове `modify` провайдер создаёт операцию `instanceOperations` с полем `operation: "modify"` и вызывает `submitVMOperationParams`, который сопоставляет параметры по `Code` и/или `svcOperationCfsParamId` и отправляет `instanceOperationCfsParams`.
- Обязательно протестировать модификацию всех перечисленных полей с реальными HAR/интеграциями, чтобы покрыть случаи, когда API использует разные `svcOperationCfsParamId` для create и modify.
- Для `ipSpaceName` и списков доступа необходимо корректно обрабатывать значение `no-needed` и пустые списки (например, пустая `accessIpList` означает доступ со всех адресов).
---
Если нужно, могу: добавить тесты на `modify` в `tests/` и/или сгенерировать пример запроса к API с нужными параметрами. Подтвердите действие.