diff --git a/CHANGELOG.md b/CHANGELOG.md
index dc2f004..9f3c049 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,113 +1,170 @@
-# Список изменений в версии 1.1.0
+# Список изменений в версии 1.2.0
## Добавлено
### Функциональный интерфейс
| Идентификатор
задачи | Описание |
| --- | --- |
-| BPYS-23 | Функция API `/cloudapi/account/get`: добавлен атрибут `CloudapiAccountGetResultModel.description`. |
-| BPYS-23 | Функция API `/cloudapi/account/list`: добавлен атрибут `CloudapiAccountListResultModel.data.description`. |
-| BPYS-23 | Функция API `/cloudapi/account/listDeleted`: добавлен атрибут `CloudapiAccountListDeletedResultModel.data.description`. |
-| BPYS-214 | Функция API `/cloudbroker/account/create`: добавлен параметр `description`. |
-| BPYS-201 | Функция API `/cloudapi/account/update`: добавлен параметр `description`. |
-| BPYS-200 | Функция API `/cloudapi/account/disable`: добавлен параметр `reason`. |
-| BPYS-203 | Функция API `/cloudapi/bservice/groupAdd`: добавлен параметр `chipset`. |
-| BPYS-213 | Функция API `/cloudapi/vins/list`: добавлен параметр `status`. |
-| BPYS-211 | Функция API `/cloudapi/extnet/list`: добавлен параметр `ovs_bridge`. |
-| BPYS-172 | Добавлены функции API `/cloudapi/lb/frontendBindDelete`, `/cloudapi/lb/frontendBindingUpdate`, `/cloudapi/lb/frontendBind`, `/cloudapi/lb/frontendCreate`, `/cloudapi/lb/frontendDelete`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.boot_loader_type`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.boot_mode`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.created_by`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.deleted_by`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.size_available`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.hot_resize`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.network_interface_naming`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: добавлен атрибут `CloudapiComputeGetResultModel.pinned_to_stack` в связи с переименованием из `pinned`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: тип атрибута `CloudapiComputeGetResultModel.disks.present_to` изменен с `list[int] `на` dict[str, int]`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: тип атрибута `CloudapiComputeGetResultModel.disks.updated_by` изменен с `Any` на `str`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: добавлен атрибут `CloudapiComputeListResultModel.data.boot_loader_type`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: добавлен атрибут `CloudapiComputeListResultModel.data.boot_mode`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: добавлен атрибут `CloudapiComputeListResultModel.data.hot_resize`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: добавлен атрибут `CloudapiComputeListResultModel.data.network_interface_naming`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: добавлен атрибут `CloudapiComputeListResultModel.data.pinned_to_stack` в связи с переименованием из `pinned`. |
-| BPYS-25 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.created_by`. |
-| BPYS-25 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.deleted_by`. |
-| BPYS-25 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.size_available`. |
-| BPYS-25 | Функция API `/cloudapi/disks/get`: тип атрибута `CloudapiDisksGetResultModel.present_to` изменен с `list[int] `на` dict[str, int]`. |
-| BPYS-25 | Функция API `/cloudapi/disks/list`: добавлен атрибут `CloudapiDisksListResultModel.data.created_by`. |
-| BPYS-25 | Функция API `/cloudapi/disks/list`: добавлен атрибут `CloudapiDisksListResultModel.data.deleted_by`. |
-| BPYS-25 | Функция API `/cloudapi/disks/list`: добавлен атрибут `CloudapiDisksListResultModel.data.size_available`. |
-| BPYS-25 | Функция API `/cloudapi/disks/list`: тип атрибута `CloudapiDisksListResultModel.data.present_to` изменен с `list[int] `на` dict[str, int]`. |
-| BPYS-25 | Функция API `/cloudapi/image/create`: у параметра `boot_loader_type` в перечисляемом типе `BootLoaderType` было добавлено значение `unknown` в связи с переименованием из `other` . |
-| BPYS-25 | Функция API `/cloudapi/image/get`: у атрибута `CloudapiImageGetResultModel.boot_loader_type` в перечисляемом типе `BootLoaderType` было добавлено значение `unknown` в связи с переименованием из `other` . |
-| BPYS-25 | Функция API `/cloudapi/image/list`: у атрибута `CloudapiImageListResultModel.data.boot_loader_type` в перечисляемом типе `BootLoaderType` было добавлено значение `unknown` в связи с переименованием из `other` . |
-| BPYS-185 | Добавлены функции API `/cloudapi/audit/get`, `/cloudapi/user/getAudit`. |
-| BPYS-26 | Функция API `/cloudapi/compute/update`: добавлен параметр `boot_loader_type`. |
-| BPYS-26 | Функция API `/cloudapi/compute/update`: добавлен параметр `boot_mode`. |
-| BPYS-26 | Функция API `/cloudapi/compute/update`: добавлен параметр `hot_resize`. |
-| BPYS-26 | Функция API `/cloudapi/compute/update`: добавлен параметр `network_interface_naming`. |
-| BPYS-207 | Функция API `/cloudapi/compute/netAttach`: добавлен параметр `mac`. |
-| BPYS-56 | Функция API `/cloudapi/kvmx86/create`: добавлен параметр `interfaces.mac`. |
-| BPYS-56 | Функция API `/cloudapi/kvmx86/createBlank`: добавлен параметр `interfaces.mac`. |
-| BPYS-204 | Функция API `/cloudapi/bservice/groupResize`: добавлено значение по умолчанию для параметра `count_change_mode`. |
-| BPYS-204 | Функция API `/cloudapi/bservice/groupResize`: добавлен параметр `chipset`. |
-| BPYS-202 | Функция API `/cloudapi/kvmx86/createBlank`: добавлен параметр `boot_loader_type`. |
-| BPYS-202 | Функция API `/cloudapi/kvmx86/createBlank`: добавлен параметр `boot_mode`. |
-| BPYS-202 | Функция API `/cloudapi/kvmx86/createBlank`: добавлен параметр `hot_resize`. |
-| BPYS-202 | Функция API `/cloudapi/kvmx86/createBlank`: добавлен параметр `network_interface_naming`. |
-| BPYS-153 | Функция API `/cloudapi/tasks/list`: тип параметра `status` изменен с `str` на перечисляемый тип `TaskStatus`. |
-| BPYS-153 | Функция API `/cloudapi/tasks/get`: тип атрибута `CloudapiTasksGetResultModel.status` изменен с `str` на перечисляемый тип `TaskStatus`. |
-| BPYS-153 | Функция API `/cloudapi/tasks/list`: тип атрибута `CloudapiTasksListResultModel.data.status` изменен с `str` на перечисляемый тип `TaskStatus`. |
-| BPYS-179 | Добавлены функции API `/cloudapi/k8ci/get`, `/cloudapi/k8ci/list`, `/cloudapi/k8ci/listDeleted` . |
-| BPYS-64 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.milestones`. |
-| BPYS-64 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.vm_id`. |
-| BPYS-64 | Функция API `/cloudapi/disks/get`: добавлен атрибут `CloudapiDisksGetResultModel.vm_name`. |
-| BPYS-64 | Функция API `/cloudapi/disks/get`: тип атрибута `CloudapiDisksGetResultModel.updated_by` изменен на `str`. |
-| BPYS-64 | Функция API `/cloudapi/disks/list`: добавлен атрибут `CloudapiDisksListResultModel.data.milestones`. |
-| BPYS-64 | Функция API `/cloudapi/disks/list`: тип атрибута `CloudapiDisksListResultModel.data.updated_by` изменен на `str`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.created_by`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.deleted_by`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.milestones`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.size_available`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: тип атрибута `CloudapiDisksListDeletedResultModel.data.present_to` изменен с `list[int] `на` dict[str, int]`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: тип атрибута `CloudapiDisksListDeletedResultModel.data.updated_by` изменен на `str`. |
-| BPYS-183 | Добавлены функции API `/cloudapi/vins/enable`, `/cloudapi/vins/disable`. |
-| BPYS-255 | Функция API `/cloudapi/image/get`: тип атрибута `CloudapiImageGetResultModel.present_to` изменен с `list[int]` на `dict[str, int]`. |
-| BPYS-257 | Функция API `/cloudapi/extnet/get`: добавлен атрибут `CloudapiExtnetGetResultModel.ntp_servers`. |
-| BPYS-256 | Функция API `/cloudapi/vins/get`: тип атрибута `CloudapiVinsGetResultModel.vnfdev.config.resources.stack_id` изменен с `int` на `int \| None`. |
-| BPYS-259 | Функция API `/cloudapi/bservice/get`: тип атрибута `CloudapiBserviceGetResultModel.vms.stack_id` изменен с `int` на `int \| None`. |
-| BPYS-258 | Функция API `/cloudapi/stack/get`: тип атрибута `CloudapiStackGetResultModel.cpu_allocation_ratio` изменен с `float` на `float \| None`. |
-| BPYS-258 | Функция API `/cloudapi/stack/get`: тип атрибута `CloudapiStackGetResultModel.mem_allocation_ratio` изменен с `float` на `float \| None`. |
+| BPYS-117 | Обновлены системные требования: версия интерпретатора Python обновлена до 3.12. |
+| BPYS-102 | Функция `cloudbroker.account.create`: добавлен параметр `zone_ids`. |
+| BPYS-102 | Функция `cloudbroker.account.create`: добавлен параметр `default_zone_id`. |
+| BPYS-103 | Функция `cloudapi.account.update`: добавлен параметр `default_zone_id`.|
+| BPYS-216 | Функция `cloudapi.account.get`: у атрибута `CloudapiAccountGetResultModel.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudapi.account.get`: у атрибута `CloudapiAccountGetResultModel.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-216 | Функция `cloudapi.rg.get`: у атрибута `CloudapiRgGetResultModel.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudapi.rg.get`: у атрибута `CloudapiRgGetResultModel.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-216 | Функция `cloudapi.account.list_deleted`: у атрибута `CloudapiAccountListDeletedResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudapi.account.list_deleted`: у атрибута `CloudapiAccountListDeletedResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-216 | Функция `cloudapi.account.list`: у атрибута `CloudapiAccountListResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudapi.account.list`: у атрибута `CloudapiAccountListResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-216 | Функция `cloudapi.rg.list`: у атрибута `CloudapiRgListResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudapi.rg.list`: у атрибута `CloudapiRgListResultModel.data.vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-216 | Функция `cloudbroker.account.create`: у параметра `vm_features` в перечисляемом типе `VMFeature` было добавлено значение `changemac`. |
+| BPYS-216 | Функция `cloudbroker.account.create`: у параметра `vm_features` в перечисляемом типе `VMFeature` было добавлено значение `trunk`. |
+| BPYS-104 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.default_zone_id`. |
+| BPYS-104 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.zones`. |
+| BPYS-160 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.compute.list`: у атрибута `CloudapiComputeListResultModel.data.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.compute.list`: у атрибута `CloudapiComputeListResultModel.data.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.compute.net_attach`: у атрибута `CloudapiComputeNetAttachResultModel.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.compute.net_attach`: у атрибута `CloudapiComputeNetAttachResultModel.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.compute.net_attach`: у параметра `net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.compute.net_attach`: у параметра `net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.kvmx86.create_blank`: у параметра `interfaces` в модели `InterfaceAPIParamsNM`, у атрибута `net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.kvmx86.create_blank`: у параметра `interfaces` в модели `InterfaceAPIParamsNM`, у атрибута `net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.kvmx86.create`: у параметра `interfaces` в модели `InterfaceAPIParamsNM`, у атрибута `net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.kvmx86.create`: у параметра `interfaces` в модели `InterfaceAPIParamsNM`, у атрибута `net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfdev.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfdev.interfaces.net_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.dhcp.owner_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.dhcp.owner_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.gw.owner_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.gw.owner_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.nat.owner_type` в перечисляемом типе `NetType` было добавлено значение `SDN`. |
+| BPYS-160 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.nat.owner_type` в перечисляемом типе `NetType` было добавлено значение `TRUNK`. |
+| BPYS-105 | Функция `cloudapi.bservice.get`: добавлен атрибут `CloudapiBserviceGetResultModel.zone_id`. |
+| BPYS-105 | Функция `cloudapi.bservice.list`: добавлен атрибут `CloudapiBserviceListResultModel.data.zone_id`. |
+| BPYS-111 | Функция `cloudapi.bservice.create`: добавлен параметр `zone_id`. |
+| BPYS-114 | Функция `cloudapi.lb.create`: добавлен параметр `zone_id`. |
+| BPYS-109 | Функция `cloudapi.lb.get`: добавлен атрибут `CloudapiLbGetResultModel.account_id`. |
+| BPYS-109 | Функция `cloudapi.lb.get`: добавлен атрибут `CloudapiLbGetResultModel.zone_id`. |
+| BPYS-109 | Функция `cloudapi.lb.list`: добавлен атрибут `CloudapiLbListResultModel.data.zone_id`. |
+| BPYS-163 | Функция `cloudapi.rg.get`: добавлен атрибут `CloudapiRgGetResultModel.sdn_access_group_id`. |
+| BPYS-163 | Функция `cloudapi.rg.list`: добавлен атрибут `CloudapiRgListResultModel.data.sdn_access_group_id`. |
+| BPYS-162 | Функция `cloudapi.rg.create`: добавлен параметр `sdn_access_group_id`.|
+| BPYS-115 | Функция `cloudapi.vins.create_in_account`: добавлен параметр `zone_id`.|
+| BPYS-115 | Функция `cloudapi.vins.create_in_rg`: добавлен параметр `zone_id`.|
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.mtu`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.pre_reservations`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.redundant`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.secondary_vnfdev_id`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.zone_id`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.network_ids`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.zone_id`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.zone_id`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.sdn_logical_port_id`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.gw.zone_id`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.nat.zone_id`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.dhcp.zone_id`. |
+| BPYS-113 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `zone_id`. |
+| BPYS-113 | Функция `cloudapi.kvmx86.create_blank`: у параметра `interfaces` в модели `InterfaceAPIParamsNM` добавлен атрибут `sdn_logical_port_id`. |
+| BPYS-113 | Функция `cloudapi.kvmx86.create`: добавлен параметр `zone_id`. |
+| BPYS-113 | Функция `cloudapi.kvmx86.create`: у параметра `interfaces` в модели `InterfaceAPIParamsNM` добавлен атрибут `sdn_logical_port_id`. |
+| BPYS-198 | Функция `cloudapi.account.delete`: тип который возвращает функция изменен с `CloudapiAccountDeleteResultBool` на `CloudapiAccountDeleteResultStr`. |
+| BPYS-140 | Функция `cloudapi.bservice.get`: у атрибута `CloudapiBserviceGetResultModel.vms.tech_status` в перечисляемом типе `VMTechStatus` было добавлено значение `MERGE`. |
+| BPYS-140 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.tech_status` в перечисляемом типе `VMTechStatus` было добавлено значение `MERGE`. |
+| BPYS-140 | Функция `cloudapi.compute.list`: у атрибута `CloudapiComputeListResultModel.data.tech_status` в перечисляемом типе `VMTechStatus` было добавлено значение `MERGE`. |
+| BPYS-140 | Функция `cloudapi.compute.list`: у параметра `tech_status` в перечисляемом типе `VMTechStatus` было добавлено значение `MERGE`. |
+| BPYS-199 | Функция `cloudapi.account.restore`: тип который возвращает функция изменен с `CloudapiAccountRestoreResultBool` на `CloudapiAccountRestoreResultStr`. |
+| BPYS-161 | Функция `cloudapi.compute.net_attach`: добавлен параметр `sdn_logical_port_id`. |
+| BPYS-106 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.sdn_logical_port_id`. |
+| BPYS-106 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.trunk_vlan_ids`. |
+| BPYS-106 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.live_migration_job_id`. |
+| BPYS-106 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.guest_agent`. |
+| BPYS-106 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.zone_id`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.sdn_logical_port_id`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.trunk_vlan_ids`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.live_migration_job_id`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.guest_agent`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.zone_id`. |
+| BPYS-106 | Функция `cloudapi.compute.get`: тип атрибута `CloudapiComputeGetResultModel.acl` изменен с `VMACLForComputeGetAPIResultNM` на `VMACLAPIResultNM`. |
+| BPYS-106 | Функция `cloudapi.compute.user_list`: тип атрибута `CloudapiComputeUserListResultModel.data` изменен с `VMACLForComputeUserListAPIResultNM` на `VMACLAPIResultNM`. |
+| BPYS-184 | Добавлены функции `cloudapi.k8s.create`, `cloudapi.k8s.delete`, `cloudapi.k8s.get`, `cloudapi.k8s.list`, `cloudapi.k8s.list_deleted`, `cloudapi.k8s.restore`. |
+| BPYS-290 | Функция `cloudapi.image.list`: тип атрибута `CloudapiImageListResultModel.data.virtual` изменен с `bool` на `bool \| None`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.dhcp.devices.secondary`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.gw.devices.secondary`. |
+| BPYS-110 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.nat.devices.secondary`. |
+| BPYS-294 | Функция `cloudapi.locations.list`: добавлен атрибут `CloudapiLocationsListResultModel.data.network_modes`. |
+| BPYS-295 | Функция `cloudapi.locations.list`: добавлен атрибут `CloudapiLocationsListResultModel.data.sdn_support`. |
+| BPYS-165 | Добавлены функции `cloudapi.lb.enable`, `cloudapi.lb.disable`. |
+| BPYS-191 | Добавлена функция `cloudapi.k8s.get_config`. |
+| BPYS-167 | Добавлена функция `cloudapi.lb.make_highly_available`. |
+| BPYS-186 | Добавлены функции `cloudapi.k8s.worker_reset`, `cloudapi.k8s.worker_restart`. |
+| BPYS-187 | Добавлены функции `cloudapi.k8s.workers_group_add`, `cloudapi.k8s.workers_group_delete`, `cloudapi.k8s.workers_group_get_by_name` . |
+| BPYS-306 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.acl.emails`. |
+| BPYS-298 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.disks.status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.get`: у атрибута `CloudapiDisksGetResultModel.status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.list_deleted`: у атрибута `CloudapiDisksListDeletedResultModel.data.status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.list_unattached`: у атрибута `CloudapiDisksListUnattachedResultModel.data.status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.list_unattached`: у параметра `status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.list`: у атрибута `CloudapiDisksListResultModel.data.status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-298 | Функция `cloudapi.disks.list`: у параметра `status` в перечисляемом типе `DiskStatus` добавлены значения `BACKUP_RUNNING`, `CLONING`, `MERGE`, `MIGRATING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.bservice.get`: у атрибута `CloudapiBserviceGetResultModel.vms.tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.compute.list`: у атрибута `CloudapiComputeListResultModel.data.tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.compute.list`: у параметра `tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.k8s.get`: у атрибута `CloudapiK8sGetResultModel.node_groups.master.vms.tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-301 | Функция `cloudapi.k8s.get`: у атрибута `CloudapiK8sGetResultModel.node_groups.worker.vms.tech_status` в перечисляемом типе `VMTechStatus` добавлены значения `CLONING`, `ROLLBACK`, `SNAPCREATE`. |
+| BPYS-178 | Функция `cloudapi.account.add_user`: добавлен параметр `user_name` в связи с переименованием из `user_id`. |
+| BPYS-178 | Функция `cloudapi.account.delete_user`: добавлен параметр `user_name` в связи с переименованием из `user_id`. |
+| BPYS-178 | Функция `cloudapi.account.update_user`: добавлен параметр `user_name` в связи с переименованием из `user_id`. |
+| BPYS-178 | Добавлена функция `cloudapi.user.api_list`. |
+| BPYS-90 | Добавлены функции `cloudapi.dpdknet.get`, `cloudapi.dpdknet.list`. |
## Удалено
### Функциональный интерфейс
| Идентификатор
задачи | Описание |
| --- | --- |
-| BPYS-47 | Функция API `/cloudapi/rg/create`: удален параметр `register_computes`. |
-| BPYS-208 | Функция API `/cloudapi/disks/create`: удален параметр `grid_id`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: удален атрибут `CloudapiComputeGetResultModel.disks.order`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: удален атрибут `CloudapiComputeGetResultModel.pinned` в связи с переименованием в `pinned_to_stack`. |
-| BPYS-25 | Функция API `/cloudapi/compute/get`: удален атрибут `CloudapiComputeGetResultModel.registered`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: удален атрибут `CloudapiComputeListResultModel.data.disks.bus_number`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: удален атрибут `CloudapiComputeListResultModel.data.disks.pci_slot`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: удален атрибут `CloudapiComputeListResultModel.data.pinned` в связи с переименованием в `pinned_to_stack`. |
-| BPYS-25 | Функция API `/cloudapi/compute/list`: удален атрибут `CloudapiComputeListResultModel.data.registered`. |
-| BPYS-25 | Функция API `/cloudapi/disks/get`: удален атрибут `CloudapiDisksGetResultModel.order`. |
-| BPYS-25 | Функция API `/cloudapi/disks/list`: удален атрибут `CloudapiDisksListResultModel.data.order`. |
-| BPYS-25 | Функция API `/cloudapi/image/create`: у параметра `boot_loader_type` в перечисляемом типе `BootLoaderType` было удалено значение `other` в связи с переименованием в `unknown` . |
-| BPYS-25 | Функция API `/cloudapi/image/get`: у атрибута `CloudapiImageGetResultModel.boot_loader_type` в перечисляемом типе `BootLoaderType` было удалено значение `other` в связи с переименованием в `unknown` . |
-| BPYS-25 | Функция API `/cloudapi/image/list`: у атрибута `CloudapiImageListResultModel.data.boot_loader_type` в перечисляемом типе `BootLoaderType` было удалено значение `other` в связи с переименованием в `unknown` . |
-| BPYS-46 | Функция API `/cloudapi/rg/list`: удалён атрибут `CloudapiRgListResultModel.data.register_computes`. |
-| BPYS-46 | Функция API `/cloudapi/rg/get`: удалён атрибут `CloudapiRgGetResultModel.register_computes`. |
-| BPYS-53 | Функция API `/cloudapi/rg/update`: удален параметр `register_computes`. |
-| BPYS-64 | Функция API `/cloudapi/disks/listDeleted`: удален атрибут `CloudapiDisksListDeletedResultModel.data.order`. |
+| BPYS-125 | Функция `cloudapi.flipgroup.create`: удален параметр `client_type`. |
+| BPYS-107 | Функция `cloudapi.extnet.get`: удален атрибут `CloudapiExtnetGetResultModel.network_id` . |
+| BPYS-158 | Функция `cloudapi.tasks.get`: удален атрибут `CloudapiTasksGetResultModel.guid`. |
+| BPYS-158 | Функция `cloudapi.tasks.list`: удален атрибут `CloudapiTasksListResultModel.data.guid`. |
+| BPYS-253 | Функция `cloudapi.account.disable`: удален параметр `reason`.|
+| BPYS-284 | Функция `cloudapi.disks.list_unattached`: удален атрибут `CloudapiDisksListUnattachedResultModel.data.pci_slot` . |
+| BPYS-284 | Функция `cloudapi.disks.list_unattached`: удален атрибут `CloudapiDisksListUnattachedResultModel.data.vm_id` . |
+| BPYS-290 | Функция `cloudapi.image.list`: удален атрибут `CloudapiImageListResultModel.data.arch`. |
+| BPYS-178 | Функция `cloudapi.account.add_user`: удален параметр `user_id` в связи с переименованием в `user_name`. |
+| BPYS-178 | Функция `cloudapi.account.delete_user`: удален параметр `user_id` в связи с переименованием в `user_name`. |
+| BPYS-178 | Функция `cloudapi.account.update_user`: удален параметр `user_id` в связи с переименованием в `user_name`. |
## Исправлено
### Функциональный интерфейс
| Идентификатор
задачи | Описание |
| --- | --- |
-| BPYS-238 | Функция API `cloudapi/flipgroup/create`: у параметра `client_type` исправлена ошибка в значении по умолчанию. |
-| BPYS-220 | Функция API `/cloudapi/compute/pfwAdd`: удалено значение по умолчанию для параметра `protocol`. |
-| BPYS-239 | Функция API `cloudapi/flipgroup/create`: при вызове функции, возникала ошибка валидации атрибута `CloudapiFlipgroupCreateResultModel.ip_addr`. |
+| BPYS-311 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.disks.status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.get`: у атрибута `CloudapiDisksGetResultModel.status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_deleted`: у атрибута `CloudapiDisksListDeletedResultModel.data.status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_unattached`: у атрибута `CloudapiDisksListUnattachedResultModel.data.status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_unattached`: у параметра `status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.list`: у атрибута `CloudapiDisksListResultModel.data.status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.disks.list`: у параметра `status` в перечисляемом типе `DiskStatus` добавлено значение `CREATING`. |
+| BPYS-311 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.disks.status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.get`: у атрибута `CloudapiDisksGetResultModel.status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_deleted`: у атрибута `CloudapiDisksListDeletedResultModel.data.status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_unattached`: у атрибута `CloudapiDisksListUnattachedResultModel.data.status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.list_unattached`: у параметра `status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.list`: у атрибута `CloudapiDisksListResultModel.data.status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-311 | Функция `cloudapi.disks.list`: у параметра `status` в перечисляемом типе `DiskStatus` удалено значение `DESTROYING`. |
+| BPYS-312 | В перечисляемом типе `VNFDevStatus` удалены значения `ENABLED`, `DISABLED`, `STASHED`. |
+| BPYS-312 | В перечисляемом типе `VNFDevTechStatus` добавлены значения `DOWN`, `MIGRATING`, `SCHEDULED`. |
+| BPYS-312 | В перечисляемом типе `TaskStatus` добавлены значения `ABORTED`, `CLEANUPED`, `SCHEDULED`. |
+| BPYS-312 | В перечисляемом типе `PhysicalNodeStatus` добавлено значение `ERROR`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.dhcp.status` перечисляемый тип изменен с `VNFDevStatus` на `VNFStatus`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.dhcp.tech_status` перечисляемый тип изменен с `VNFDevTechStatus` на `VNFTechStatus`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.gw.status` перечисляемый тип изменен с `VNFDevStatus` на `VNFStatus`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.gw.tech_status` перечисляемый тип изменен с `VNFDevTechStatus` на `VNFTechStatus`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.nat.status` перечисляемый тип изменен с `VNFDevStatus` на `VNFStatus`. |
+| BPYS-312 | Функция `cloudapi.vins.get`: у атрибута `CloudapiVinsGetResultModel.vnfs.nat.tech_status` перечисляемый тип изменен с `VNFDevTechStatus` на `VNFTechStatus`. |
diff --git a/README.md b/README.md
index 0fad997..0564c64 100644
--- a/README.md
+++ b/README.md
@@ -34,6 +34,7 @@
| Версия платформы | Версия SDK |
| --- | --- |
+| 4.4.0 build 963 | 1.2.x |
| 4.3.0 | 1.1.x |
| 4.2.0 | 1.0.x |
@@ -612,6 +613,13 @@ except RequestException as e:
+dpdknet
+
+- /cloudapi/dpdknet/get
+- /cloudapi/dpdknet/list
+
+
+
extnet
- /cloudapi/extnet/get
@@ -652,6 +660,23 @@ except RequestException as e:
+k8s
+
+- /cloudapi/k8s/create
+- /cloudapi/k8s/delete
+- /cloudapi/k8s/get
+- /cloudapi/k8s/getConfig
+- /cloudapi/k8s/list
+- /cloudapi/k8s/listDeleted
+- /cloudapi/k8s/restore
+- /cloudapi/k8s/workerReset
+- /cloudapi/k8s/workerRestart
+- /cloudapi/k8s/workersGroupAdd
+- /cloudapi/k8s/workersGroupDelete
+- /cloudapi/k8s/workersGroupGetByName
+
+
+
kvmx86
- /cloudapi/kvmx86/create
@@ -669,6 +694,8 @@ except RequestException as e:
- /cloudapi/lb/backendUpdate
- /cloudapi/lb/create
- /cloudapi/lb/delete
+- /cloudapi/lb/disable
+- /cloudapi/lb/enable
- /cloudapi/lb/frontendBind
- /cloudapi/lb/frontendBindDelete
- /cloudapi/lb/frontendBindingUpdate
@@ -677,6 +704,7 @@ except RequestException as e:
- /cloudapi/lb/get
- /cloudapi/lb/list
- /cloudapi/lb/listDeleted
+- /cloudapi/lb/makeHighlyAvailable
@@ -720,6 +748,7 @@ except RequestException as e:
user
+- /cloudapi/user/apiList
- /cloudapi/user/get
- /cloudapi/user/getAudit
diff --git a/pyproject.toml b/pyproject.toml
index b2b086b..9455c0d 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,11 +1,15 @@
[project]
name = "dynamix-sdk"
-authors = [{name = "Dmitriy Smirnov"}]
-version = "1.1.0"
+authors = [
+ {name = "Dmitriy Smirnov"},
+ {name = "Vladislav Nesterov"},
+ {name = "Stanislav Karimov"},
+]
+version = "1.2.0"
readme = "README.md"
-requires-python = ">=3.10.12"
+requires-python = ">=3.12"
dependencies = [
"requests>=2.32.3",
diff --git a/src/dynamix_sdk/api/_nested/enums.py b/src/dynamix_sdk/api/_nested/enums.py
index 559f172..369d22e 100644
--- a/src/dynamix_sdk/api/_nested/enums.py
+++ b/src/dynamix_sdk/api/_nested/enums.py
@@ -47,6 +47,8 @@ class NetType(str, _AutoNameEnum):
DPDK = _enum_auto()
EMPTY = _enum_auto()
EXTNET = _enum_auto()
+ SDN = _enum_auto()
+ TRUNK = _enum_auto()
VFNIC = _enum_auto()
VINS = _enum_auto()
@@ -99,10 +101,12 @@ class LockStatus(str, _AutoNameEnum):
class VMFeature(str, _AutoNameEnum):
+ changemac = _enum_auto()
cpupin = _enum_auto()
dpdk = _enum_auto()
hugepages = _enum_auto()
numa = _enum_auto()
+ trunk = _enum_auto()
vfnic = _enum_auto()
@@ -126,13 +130,19 @@ class RGResourceType(str, _AutoNameEnum):
class DiskStatus(str, _AutoNameEnum):
ASSIGNED = _enum_auto()
+ BACKUP_RUNNING = _enum_auto()
+ CLONING = _enum_auto()
CREATED = _enum_auto()
+ CREATING = _enum_auto()
DELETED = _enum_auto()
DESTROYED = _enum_auto()
- DESTROYING = _enum_auto()
+ MERGE = _enum_auto()
+ MIGRATING = _enum_auto()
MODELED = _enum_auto()
PURGED = _enum_auto()
REPLICATION = _enum_auto()
+ ROLLBACK = _enum_auto()
+ SNAPCREATE = _enum_auto()
class DiskTechStatus(str, _AutoNameEnum):
@@ -155,11 +165,15 @@ class VMStatus(str, _AutoNameEnum):
class VMTechStatus(str, _AutoNameEnum):
BACKUP_RUNNING = _enum_auto()
BACKUP_STOPPED = _enum_auto()
+ CLONING = _enum_auto()
DOWN = _enum_auto()
+ MERGE = _enum_auto()
MIGRATING = _enum_auto()
PAUSED = _enum_auto()
PAUSING = _enum_auto()
+ ROLLBACK = _enum_auto()
SCHEDULED = _enum_auto()
+ SNAPCREATE = _enum_auto()
STARTED = _enum_auto()
STARTING = _enum_auto()
STOPPED = _enum_auto()
@@ -233,6 +247,23 @@ class VNFType(str, _AutoNameEnum):
class VNFDevStatus(str, _AutoNameEnum):
+ MODELED = _enum_auto()
+ CREATED = _enum_auto()
+ DELETED = _enum_auto()
+ DESTROYED = _enum_auto()
+
+
+class VNFDevTechStatus(str, _AutoNameEnum):
+ DOWN = _enum_auto()
+ MIGRATING = _enum_auto()
+ SCHEDULED = _enum_auto()
+ STARTED = _enum_auto()
+ STARTING = _enum_auto()
+ STOPPED = _enum_auto()
+ STOPPING = _enum_auto()
+
+
+class VNFStatus(str, _AutoNameEnum):
MODELED = _enum_auto()
CREATED = _enum_auto()
ENABLED = _enum_auto()
@@ -242,7 +273,7 @@ class VNFDevStatus(str, _AutoNameEnum):
STASHED = _enum_auto()
-class VNFDevTechStatus(str, _AutoNameEnum):
+class VNFTechStatus(str, _AutoNameEnum):
STARTING = _enum_auto()
STARTED = _enum_auto()
STOPPING = _enum_auto()
@@ -416,6 +447,7 @@ class PhysicalNodeStatus(str, _AutoNameEnum):
DECOMMISSIONED = _enum_auto()
DECOMMISSIONING = _enum_auto()
ENABLED = _enum_auto()
+ ERROR = _enum_auto()
INSTALLING = _enum_auto()
MAINTENANCE = _enum_auto()
RESTRICTED = _enum_auto()
@@ -434,6 +466,8 @@ class DHCPReservationType(str, _AutoNameEnum):
class TaskStatus(str, _AutoNameEnum):
+ ABORTED = _enum_auto()
+ CLEANUPED = _enum_auto()
ERROR = _enum_auto()
OK = _enum_auto()
PROCESSING = _enum_auto()
@@ -453,3 +487,32 @@ class K8CIStatus(str, _AutoNameEnum):
DISABLED = _enum_auto()
ENABLED = _enum_auto()
MODELED = _enum_auto()
+
+
+class K8sStatus(str, _AutoNameEnum):
+ CREATED = _enum_auto()
+ CREATING = _enum_auto()
+ DELETED = _enum_auto()
+ DELETING = _enum_auto()
+ DESTROYED = _enum_auto()
+ DESTROYING = _enum_auto()
+ DISABLED = _enum_auto()
+ DISABLING = _enum_auto()
+ ENABLED = _enum_auto()
+ ENABLING = _enum_auto()
+ MODELED = _enum_auto()
+ RESTORING = _enum_auto()
+
+
+class K8sTechStatus(str, _AutoNameEnum):
+ STARTED = _enum_auto()
+ STARTING = _enum_auto()
+ STOPPED = _enum_auto()
+ STOPPING = _enum_auto()
+
+
+class DPDKNetStatus(str, _AutoNameEnum):
+ CREATED = _enum_auto()
+ DESTROYED = _enum_auto()
+ DISABLED = _enum_auto()
+ ENABLED = _enum_auto()
diff --git a/src/dynamix_sdk/api/_nested/params.py b/src/dynamix_sdk/api/_nested/params.py
index 2a8ef39..edeb5f8 100644
--- a/src/dynamix_sdk/api/_nested/params.py
+++ b/src/dynamix_sdk/api/_nested/params.py
@@ -15,6 +15,7 @@ class DiskAPIParamsNM(_base.BaseAPIParamsNestedModel):
class InterfaceAPIParamsNM(_base.BaseAPIParamsNestedModel):
net_id: int
net_type: _enums.NetType
+ sdn_logical_port_id: str
ip_addr: None | str = None
mac: None | str = None
diff --git a/src/dynamix_sdk/api/_nested/result.py b/src/dynamix_sdk/api/_nested/result.py
index f5e060c..f0c08b8 100644
--- a/src/dynamix_sdk/api/_nested/result.py
+++ b/src/dynamix_sdk/api/_nested/result.py
@@ -14,6 +14,7 @@ class AccessAPIResultNM(_base.BaseAPIResultNestedModel):
user_group_id: str
can_be_deleted: None | bool = None
+ emails: list[str] | None = None
class AffinityRuleAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -32,9 +33,7 @@ class QOSAPIResultNM(_base.BaseAPIResultNestedModel):
ingress_rate: int
-class VMACLForComputeGetAPIResultNM( # BDX-8459
- _base.BaseAPIResultNestedModel
-):
+class VMACLAPIResultNM(_base.BaseAPIResultNestedModel):
account: list[AccessAPIResultNM]
vm: list[AccessAPIResultNM]
rg: list[AccessAPIResultNM]
@@ -50,7 +49,7 @@ class LibvirtSettingsAPIResultNM(_base.BaseAPIResultNestedModel):
tx_queue_size: int
-class BaseInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
+class InterfaceForComputeListAPIResultNM(_base.BaseAPIResultNestedModel):
bus_number: int
conn_id: int
conn_type: str
@@ -66,24 +65,67 @@ class BaseInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
net_id: int
net_mask: int
+ net_type: _enums.NetType
node_id: int
pci_slot: int
+ sdn_logical_port_id: str
target: str
+ trunk_vlan_ids: str | None = None
type: str
vnf_ids: list[int]
-class InterfaceForComputeListAPIResultNM(BaseInterfaceAPIResultNM):
+class InterfaceForComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
+ bus_number: int
+ conn_id: int
+ conn_type: str
+ default_gw: str
+ enabled: bool
+ flip_group_id: int
+ guid: str
+ ip_addr: str
+ libvirt_settings: LibvirtSettingsAPIResultNM
+ listen_ssh: bool
+ mac: str
+ mtu: int
+ name: str
+ net_id: int
+ net_mask: int
net_type: _enums.NetType
-
-
-class InterfaceForComputeGetAPIResultNM(InterfaceForComputeListAPIResultNM):
+ node_id: int
+ pci_slot: int
+ sdn_logical_port_id: str
qos: QOSAPIResultNM
+ target: str
+ trunk_vlan_ids: str | None = None
+ type: str
+ vnf_ids: list[int]
-class VNFDevInterfaceAPIResultNM(BaseInterfaceAPIResultNM):
+class VNFDevInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
+ bus_number: int
+ conn_id: int
+ conn_type: str
+ default_gw: str
+ enabled: bool
+ flip_group_id: int
+ guid: str
+ ip_addr: str
+ libvirt_settings: LibvirtSettingsAPIResultNM
+ listen_ssh: bool
+ mac: str
+ mtu: int
+ name: str
+ net_id: int
+ net_mask: int
net_type: _EmptyStr | _enums.NetType
+ node_id: int
+ pci_slot: int
qos: QOSAPIResultNM
+ sdn_logical_port_id: str
+ target: str
+ type: str
+ vnf_ids: list[int]
class SnapshotSetAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -144,30 +186,36 @@ class DiskForCAComputeListAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
-class BaseDiskAPIResultNM(_base.BaseAPIResultNestedModel):
- created_by: str
- deleted_by: str
- updated_by: str
-
-
-class DiskAPIResultNM(_base.BaseAPIResultNestedModel):
+class DiskForCAComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
acl: dict
+ boot_partition: int
+ bus_number: int
+ created_by: str
created_timestamp: int
+ deleted_by: str
deleted_timestamp: int
description: str
destruction_timestamp: int
+ disk_path: str
grid_id: int
+ guid: int
+ id: int
id: int
image_id: int
image_ids: list[int]
io_tune: IOTuneAPIResultNM
+ iqn: str
+ login: str
+ milestones: int
name: str
params: str
parent_id: int
- size_available: float
+ password: str
+ pci_slot: int
present_to: dict[str, int]
purge_timestamp: int
+ reality_device_number: int
replication: ReplicationAPIResultNM | dict
res_id: str
role: str
@@ -175,16 +223,16 @@ class DiskAPIResultNM(_base.BaseAPIResultNestedModel):
sep_pool_name: str
shared: bool
size_available: float
+ size_available: float
size_max_gb: int
size_used: float
snapshots: list[SnapshotAPIResultNM]
status: _enums.DiskStatus
tech_status: _enums.DiskTechStatus
type: _enums.DiskType
+ updated_by: str
+ updated_by: str
updated_timestamp: int = 0
- order_depr_: int | None = None # BDX-8545
- pci_slot_depr_: int | None = None # BDX-8545
- vm_id_depr_: int | None = None # BDX-8545
@property
def created_datetime(self):
@@ -207,56 +255,135 @@ class DiskAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
-class BaseDiskForCADisksAPIResultNM(DiskAPIResultNM):
+class DiskForListAndListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
account_name: str
- res_name: str
-
-
-class DiskForCAComputeGetAPIResultNM(
- BaseDiskAPIResultNM,
- DiskAPIResultNM,
-):
- boot_partition: int
- bus_number: int
- id: int
- pci_slot: int
- disk_path: str
- guid: int
- iqn: str
- login: str
- milestones: int
- password: str
- reality_device_number: int
- updated_by: str
-
-
-class DiskForListAndListDeletedAPIResultNM(
- BaseDiskForCADisksAPIResultNM,
- BaseDiskAPIResultNM,
-):
+ acl: dict
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ destruction_timestamp: int
device_name: str | None = None
+ grid_id: int
+ id: int
+ image_id: int
+ image_ids: list[int]
+ io_tune: IOTuneAPIResultNM
milestones: int
+ name: str
+ params: str
+ parent_id: int
+ present_to: dict[str, int]
+ purge_timestamp: int
+ replication: ReplicationAPIResultNM | dict
+ res_id: str
+ res_name: str
+ role: str
+ sep_id: int
+ sep_pool_name: str
sep_type: _enums.SEPType
+ shared: bool
+ size_available: float
+ size_available: float
+ size_max_gb: int
+ size_used: float
+ snapshots: list[SnapshotAPIResultNM]
+ status: _enums.DiskStatus
+ tech_status: _enums.DiskTechStatus
+ type: _enums.DiskType
+ updated_by: str
vm_id: int | None
vm_name: str | None
vms: dict[str, str]
+ updated_timestamp: int = 0
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
-class DiskForListUnattachedAPIResultNM(
- BaseDiskForCADisksAPIResultNM,
-):
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def destruction_datetime(self):
+ return self._get_datetime_from_timestamp(self.destruction_timestamp)
+
+ @property
+ def purge_datetime(self):
+ return self._get_datetime_from_timestamp(self.purge_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
+
+class DiskForListUnattachedAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
+ account_name: str
+ acl: dict
boot_partition: int
+ created_timestamp: int
+ deleted_timestamp: int
+ description: str
+ destruction_timestamp: int
disk_path: str
+ grid_id: int
guid: int
+ id: int
+ image_id: int
+ image_ids: list[int]
+ io_tune: IOTuneAPIResultNM
iqn: str
login: str
milestones: int
+ name: str
+ params: str
+ parent_id: int
password: str
- pci_slot: int
+ present_to: dict[str, int]
purge_attempt_count: int
+ purge_timestamp: int
reality_device_number: int
reference_id: str
- vm_id: int
+ replication: ReplicationAPIResultNM | dict
+ res_id: str
+ res_name: str
+ role: str
+ sep_id: int
+ sep_pool_name: str
+ shared: bool
+ size_available: float
+ size_available: float
+ size_max_gb: int
+ size_used: float
+ snapshots: list[SnapshotAPIResultNM]
+ status: _enums.DiskStatus
+ tech_status: _enums.DiskTechStatus
+ type: _enums.DiskType
+ updated_timestamp: int = 0
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def destruction_datetime(self):
+ return self._get_datetime_from_timestamp(self.destruction_timestamp)
+
+ @property
+ def purge_datetime(self):
+ return self._get_datetime_from_timestamp(self.purge_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class TenantQuotasAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -291,6 +418,7 @@ class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
quotas: TenantQuotasAPIResultNM
resource_types: list[_enums.RGResourceType]
+ sdn_access_group_id: str
secret: str
status: _enums.ResourceGroupStatus
uniq_pools: list[str]
@@ -338,9 +466,22 @@ class AccountAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
-class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
+class GuestAgentAPIResultNM(_base.BaseAPIResultNestedModel):
+ enabled: bool
+ available_commands: list[str]
+ guid: str | None = None
+ last_update_timestamp: int
+ user_name: str
+
+ @property
+ def last_update_datetime(self):
+ return self._get_datetime_from_timestamp(self.last_update_timestamp)
+
+
+class VMAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
+ acl: list[_typing.Any] # BDX-7995
affinity_label: str
affinity_rules: list[AffinityRuleAPIResultNM]
affinity_weight: int
@@ -349,15 +490,12 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
auto_start: bool
boot_disk_size_gb: int
boot_loader_type: _enums.BootLoaderType
+ boot_mode: _enums.BootMode
boot_order: list[_enums.BootDevice]
cdrom_image_id: int
chipset: _enums.Chipset
clone_ids: list[int]
clone_reference: int
- boot_mode: _enums.BootMode
- network_interface_naming: _enums.NetIfaceNamingTemplate
- hot_resize: bool
- vm_ci_id: int
cpu_count: int
cpu_pin: bool
created_by: str
@@ -367,12 +505,16 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
deleted_timestamp: int
description: str
devices: dict
+ disks: list[DiskForCAComputeListAPIResultNM]
driver: _enums.Driver
grid_id: int
guid: int
+ hot_resize: bool
hp_backed: bool
id: int
image_id: int
+ interfaces: list[InterfaceForComputeListAPIResultNM]
+ live_migration_job_id: int
lock_status: _enums.LockStatus
manager_id: int
manager_type: str
@@ -380,6 +522,7 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
milestones: int
name: str
need_reboot: bool
+ network_interface_naming: _enums.NetIfaceNamingTemplate
numa_affinity: _enums.NumaAffinity
numa_node_id: int
pinned_to_stack: bool
@@ -396,11 +539,16 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
status: _enums.VMStatus
tags: dict
tech_status: _enums.VMTechStatus
+ total_disks_size: int
updated_by: str
updated_timestamp: int
user_managed: bool
vgpus: list[dict[str, _typing.Any]]
+ vins_count: int
virtual_image_id: int
+ vm_ci_id: int
+ guest_agent: GuestAgentAPIResultNM
+ zone_id: int
@property
def created_datetime(self):
@@ -415,24 +563,16 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
-class VMAPIResultNM(BaseVMAPIResultNM):
- acl: list[_typing.Any] # BDX-7995
- disks: list[DiskForCAComputeListAPIResultNM]
- interfaces: list[InterfaceForComputeListAPIResultNM]
- total_disks_size: int
- vins_count: int
-
-
class VMCountsAPIResultNM(_base.BaseAPIResultNestedModel):
started: int
stopped: int
-class BaseImageAPIResultNM(_base.BaseAPIResultNestedModel):
+class ImageForListAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
- arch: str
boot_mode: _enums.BootMode | _EmptyStr | None
bootable: bool
+ cdrom: bool
description: str
drivers: list[_enums.Driver]
hot_resize: bool
@@ -446,6 +586,7 @@ class BaseImageAPIResultNM(_base.BaseAPIResultNestedModel):
size_gb: int
status: _enums.ImageStatus
type: _enums.ImageType
+ virtual: bool | None = None
@property
def boot_loader_type(self):
@@ -453,11 +594,6 @@ class BaseImageAPIResultNM(_base.BaseAPIResultNestedModel):
return _enums.BootLoaderType[self.type]
-class ImageForListAPIResultNM(BaseImageAPIResultNM):
- cdrom: bool
- virtual: bool
-
-
class ImageHistoryRecordAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
id: int
@@ -473,13 +609,16 @@ class VINSVMAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
-class BaseVINSAPIResultNM(_base.BaseAPIResultNestedModel):
+class VINSForListAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
created_by: str
created_timestamp: int
deleted_by: str
deleted_timestamp: int
+ ext_net_id: int
+ ext_net_ip: str
+ free_ip_count: int
id: int
name: str
net_ip: str
@@ -503,15 +642,36 @@ class BaseVINSAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
-class VINSForListAPIResultNM(BaseVINSAPIResultNM):
- ext_net_id: int
+class VINSForListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
+ account_name: str
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
ext_net_ip: str
- free_ip_count: int
+ id: int
+ name: str
+ net_ip: str
+ primary_vnfdev_id: int
+ rg_id: int
+ rg_name: str
+ status: _enums.VINSStatus
+ updated_by: str
+ updated_timestamp: int
+ vxlan_id: int
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
-class VINSForListDeletedAPIResultNM(BaseVINSAPIResultNM):
- ext_net_ip: str
- primary_vnfdev_id: int
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class VNFHostDeviceAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -522,6 +682,7 @@ class VNFHostDeviceAPIResultNM(_base.BaseAPIResultNestedModel):
class VNFHostDevicesAPIResultNM(_base.BaseAPIResultNestedModel):
primary: VNFHostDeviceAPIResultNM
+ secondary: VNFHostDeviceAPIResultNM | None = None
class RouteAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -533,28 +694,6 @@ class RouteAPIResultNM(_base.BaseAPIResultNestedModel):
vm_ids: list[int]
-class BaseVNFAPIResultNM(_base.BaseAPIResultNestedModel):
- account_id: int
- created_timestamp: int
- devices: VNFHostDevicesAPIResultNM
- grid_id: int
- guid: int
- id: int
- lock_status: _enums.LockStatus
- milestones: int
- owner_id: int
- owner_type: _enums.NetType
- pure_virtual: bool
- routes: list[RouteAPIResultNM]
- status: _enums.VNFDevStatus
- tech_status: _enums.VNFDevTechStatus
- type: _enums.VNFType
-
- @property
- def created_datetime(self):
- return self._get_datetime_from_timestamp(self.created_timestamp)
-
-
class DHCPReservationAPIResultNM(_base.BaseAPIResultNestedModel):
ip_addr: str
mac: str
@@ -603,16 +742,76 @@ class NATVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
rules: list[NATRuleAPIResultNM]
-class DHCPVNFAPIResultNM(BaseVNFAPIResultNM):
+class DHCPVNFAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
config: DHCPVNFConfigAPIResultNM
+ created_timestamp: int
+ devices: VNFHostDevicesAPIResultNM
+ grid_id: int
+ guid: int
+ id: int
+ lock_status: _enums.LockStatus
+ milestones: int
+ owner_id: int
+ owner_type: _enums.NetType
+ pure_virtual: bool
+ routes: list[RouteAPIResultNM]
+ status: _enums.VNFStatus
+ tech_status: _enums.VNFTechStatus
+ type: _enums.VNFType
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
-class GWVNFAPIResultNM(BaseVNFAPIResultNM):
+class GWVNFAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
config: GWVNFConfigAPIResultNM
+ created_timestamp: int
+ devices: VNFHostDevicesAPIResultNM
+ grid_id: int
+ guid: int
+ id: int
+ lock_status: _enums.LockStatus
+ milestones: int
+ owner_id: int
+ owner_type: _enums.NetType
+ pure_virtual: bool
+ routes: list[RouteAPIResultNM]
+ status: _enums.VNFStatus
+ tech_status: _enums.VNFTechStatus
+ type: _enums.VNFType
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
-class NATVNFAPIResultNM(BaseVNFAPIResultNM):
+class NATVNFAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
config: NATVNFConfigAPIResultNM
+ created_timestamp: int
+ devices: VNFHostDevicesAPIResultNM
+ grid_id: int
+ guid: int
+ id: int
+ lock_status: _enums.LockStatus
+ milestones: int
+ owner_id: int
+ owner_type: _enums.NetType
+ pure_virtual: bool
+ routes: list[RouteAPIResultNM]
+ status: _enums.VNFStatus
+ tech_status: _enums.VNFTechStatus
+ type: _enums.VNFType
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
class VNFSAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -659,6 +858,7 @@ class VNFDevAPIResultNM(_base.BaseAPIResultNestedModel):
type: _enums.VNFDevType
vins_ids: list[int]
vnc_password: str
+ zone_id: int
class BServiceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -695,7 +895,7 @@ class BServiceSnapshotAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.timestamp)
-class BaseBServiceAPIResultNM(_base.BaseAPIResultNestedModel):
+class BServiceAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
base_domain: str
@@ -704,6 +904,7 @@ class BaseBServiceAPIResultNM(_base.BaseAPIResultNestedModel):
deleted_by: str
deleted_timestamp: int
grid_id: int
+ group_ids: list[int]
guid: int
id: int
name: str
@@ -717,6 +918,7 @@ class BaseBServiceAPIResultNM(_base.BaseAPIResultNestedModel):
updated_by: str
updated_timestamp: int
user_managed: bool
+ zone_id: int
@property
def created_datetime(self):
@@ -731,18 +933,16 @@ class BaseBServiceAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
-class BServiceForListAPIResultNM(BaseBServiceAPIResultNM):
- group_ids: list[int]
-
-
class BServiceGroupOSUserAPIResultNM(_base.BaseAPIResultNestedModel):
login: str
password: str
-class OSUserAPIResultNM(BServiceGroupOSUserAPIResultNM):
- pub_key: str
+class OSUserAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
+ login: str
+ password: str
+ pub_key: str
class BServiceGroupVMAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -759,7 +959,7 @@ class ExtNetForListAPIResultNM(_base.BaseAPIResultNestedModel):
status: _enums.ExtNetStatus
-class BaseFlipGroupAPIResultNM(_base.BaseAPIResultNestedModel):
+class FlipGroupForListAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
client_ids: list[int]
client_type: _enums.FlipGroupClientType
@@ -774,14 +974,11 @@ class BaseFlipGroupAPIResultNM(_base.BaseAPIResultNestedModel):
milestones: int
name: str
net_id: int
+ net_mask: int
net_type: _enums.FlipGroupNetType
status: _enums.FlipGroupStatus
-class FlipGroupForListAPIResultNM(BaseFlipGroupAPIResultNM):
- net_mask: int
-
-
class LBNodeAPIResultNM(_base.BaseAPIResultNestedModel):
backend_ip_addr: str
frontend_ip_addr: str
@@ -867,6 +1064,7 @@ class LBAPIResultNM(_base.BaseAPIResultNestedModel):
updated_timestamp: int
user_managed: bool
vins_id: int
+ zone_id: int
@property
def created_datetime(self):
@@ -908,6 +1106,8 @@ class LocationAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
location_code: str
name: str
+ network_modes: list[str]
+ sdn_support: bool
class AffinityRelationsAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -919,17 +1119,8 @@ class AffinityRelationsAPIResultNM(_base.BaseAPIResultNestedModel):
other_node_indirect_soft: list[int]
-class VMACLForComputeUserListAPIResultNM( # BDX-8459
- _base.BaseAPIResultNestedModel
-):
- account: list[AccessAPIResultNM]
- vm: list[AccessAPIResultNM]
- rg: list[AccessAPIResultNM]
-
-
class TaskAPIResultNM(_base.BaseAPIResultNestedModel):
audit_guid: str
- guid: None | str = None # BDX-8474
completed: bool
created_timestamp: int
error: str
@@ -963,18 +1154,187 @@ class UserAuditAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.request_timestamp)
-class BaseK8CIAPIResultNM(_base.BaseAPIResultNestedModel):
+class K8CIForListAPIResultNM(_base.BaseAPIResultNestedModel):
+ created_timestamp: int
+ description: str
id: int
name: str
+ network_plugins: list[_enums.K8sNetworkPlugin]
+ status: _enums.K8CIStatus
version: str
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+
+class ZoneAPIResultNM(_base.BaseAPIResultNestedModel):
+ id: int
+ name: str
+
+
+class NetworkIDsAPIResultNM(_base.BaseAPIResultNestedModel):
+ primary: int
+ secondary: int
+
+
+class K8sVMAPIResultNM(_base.BaseAPIResultNestedModel):
+ id: int
+ name: str
+ status: _enums.VMStatus
+ tech_status: _enums.VMTechStatus
+
+
+class WorkerGroupAPIResultNM(_base.BaseAPIResultNestedModel):
+ id: int
+ guid: str
+ labels: list[str]
+ taints: list[str]
+ annotations: list[str]
+
+
+class K8sNodeGroupAPIResultNM(_base.BaseAPIResultNestedModel):
+ vms: list[K8sVMAPIResultNM]
+ id: int
+ node_count: int
+ node_cpu_count: int
+ node_ram_size_mb: int
+ node_boot_disk_size_gb: int
+ name: str
+ labels: list[str] | None = None
+ taints: list[str] | None = None
+ annotations: list[str] | None = None
+
+
+class K8sNodeGroupsAPIResultNM(_base.BaseAPIResultNestedModel):
+ master: K8sNodeGroupAPIResultNM
+ worker: list[K8sNodeGroupAPIResultNM]
+
+
+class K8sACLAPIResultNM(_base.BaseAPIResultNestedModel):
+ account: list[AccessAPIResultNM]
+ k8s: list[AccessAPIResultNM]
+ rg: list[AccessAPIResultNM]
+
+
+class LBHAIPsAPIResultNM(_base.BaseAPIResultNestedModel):
+ backend: str
+ frontend: str
+
+
+class K8sServiceAccountAPIResultNM(_base.BaseAPIResultNestedModel):
+ guid: str
+ password: str
+ user_name: str
+
+
+class K8sListAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
+ account_name: str
+ acl: list[K8sACLAPIResultNM]
+ bservice_id: int
+ k8ci_id: int
+ config: dict
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
description: str
- network_plugins: list[_enums.K8sNetworkPlugin]
+ ext_net_id: int
+ grid_id: int
+ guid: int
+ id: int
+ lb_id: int
+ milestones: int
+ name: str
+ network_plugin: _enums.K8sNetworkPlugin
+ rg_id: int
+ rg_name: str
+ service_account: K8sServiceAccountAPIResultNM
+ status: _enums.K8sStatus
+ tech_status: _enums.K8sTechStatus
+ updated_by: str
+ updated_timestamp: int
+ vins_id: int
+ worker_groups: list[WorkerGroupAPIResultNM]
+ zone_id: int
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
-class K8CIForListAPIResultNM(BaseK8CIAPIResultNM):
- status: _enums.K8CIStatus
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
+
+class K8sListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_id: int
+ account_name: str
+ acl: list[K8sACLAPIResultNM]
+ bservice_id: int
+ k8ci_id: int
+ config: dict
+ created_by: str
created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ ext_net_id: int
+ grid_id: int
+ guid: int
+ id: int
+ lb_id: int
+ milestones: int
+ name: str
+ network_plugin: _enums.K8sNetworkPlugin
+ rg_id: int
+ rg_name: str
+ service_account: K8sServiceAccountAPIResultNM
+ status: _enums.K8sStatus
+ tech_status: _enums.K8sTechStatus
+ updated_by: str
+ updated_timestamp: int
+ vins_id: int
+ worker_groups: list[WorkerGroupAPIResultNM]
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
+
+class DPDKNetAPIResultNM(_base.BaseAPIResultNestedModel):
+ account_ids: list[int]
+ created_timestamp: int
+ description: str
+ grid_id: int
+ guid: int
+ id: int
+ name: str
+ ovs_bridge: str
+ rg_ids: list[int]
+ status: _enums.DPDKNetStatus
+ updated_timestamp: int
+ vlan_id: int
+ vm_ids: list[int]
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
diff --git a/src/dynamix_sdk/api/cloudapi/_api.py b/src/dynamix_sdk/api/cloudapi/_api.py
index cc65fe2..72a1b19 100644
--- a/src/dynamix_sdk/api/cloudapi/_api.py
+++ b/src/dynamix_sdk/api/cloudapi/_api.py
@@ -4,10 +4,12 @@ from .audit import *
from .bservice import *
from .compute import *
from .disks import *
+from .dpdknet import *
from .extnet import *
from .flipgroup import *
from .image import *
from .k8ci import *
+from .k8s import *
from .kvmx86 import *
from .lb import *
from .locations import *
@@ -24,10 +26,12 @@ class CloudapiAPI(_base.BaseAPI):
bservice: CloudapiBserviceAPI
compute: CloudapiComputeAPI
disks: CloudapiDisksAPI
+ dpdknet: CloudapiDpdknetAPI
extnet: CloudapiExtnetAPI
flipgroup: CloudapiFlipgroupAPI
image: CloudapiImageAPI
k8ci: CloudapiK8ciAPI
+ k8s: CloudapiK8sAPI
kvmx86: CloudapiKvmx86API
lb: CloudapiLbAPI
locations: CloudapiLocationsAPI
diff --git a/src/dynamix_sdk/api/cloudapi/account/add_user.py b/src/dynamix_sdk/api/cloudapi/account/add_user.py
index 399e697..8b878d1 100644
--- a/src/dynamix_sdk/api/cloudapi/account/add_user.py
+++ b/src/dynamix_sdk/api/cloudapi/account/add_user.py
@@ -12,6 +12,6 @@ class CloudapiAccountAddUserProtocol(_base.BasePostAPIFunctionProtocol):
*,
account_id: int,
access_type: _nested.AccessTypeForSet,
- user_id: str,
+ user_name: str,
) -> CloudapiAccountAddUserResultBool:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/delete.py b/src/dynamix_sdk/api/cloudapi/account/delete.py
index 0dceb92..2173f64 100644
--- a/src/dynamix_sdk/api/cloudapi/account/delete.py
+++ b/src/dynamix_sdk/api/cloudapi/account/delete.py
@@ -1,7 +1,7 @@
import dynamix_sdk.base as _base
-class CloudapiAccountDeleteResultBool(_base.BaseAPIResultBool):
+class CloudapiAccountDeleteResultStr(_base.BaseAPIResultStr):
pass
@@ -11,5 +11,5 @@ class CloudapiAccountDeleteProtocol(_base.BasePostAPIFunctionProtocol):
*,
account_id: int,
permanently: bool = False,
- ) -> CloudapiAccountDeleteResultBool:
+ ) -> CloudapiAccountDeleteResultStr:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/delete_user.py b/src/dynamix_sdk/api/cloudapi/account/delete_user.py
index 0af9705..04e69d4 100644
--- a/src/dynamix_sdk/api/cloudapi/account/delete_user.py
+++ b/src/dynamix_sdk/api/cloudapi/account/delete_user.py
@@ -10,6 +10,6 @@ class CloudapiAccountDeleteUserProtocol(_base.BasePostAPIFunctionProtocol):
self,
*,
account_id: int,
- user_id: str,
+ user_name: str,
) -> CloudapiAccountDeleteUserResultBool:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/disable.py b/src/dynamix_sdk/api/cloudapi/account/disable.py
index 2d1c276..a93f379 100644
--- a/src/dynamix_sdk/api/cloudapi/account/disable.py
+++ b/src/dynamix_sdk/api/cloudapi/account/disable.py
@@ -10,6 +10,5 @@ class CloudapiAccountDisableProtocol(_base.BasePostAPIFunctionProtocol):
self,
*,
account_id: int,
- reason: str | None = None,
) -> CloudapiAccountDisableResultBool:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/get.py b/src/dynamix_sdk/api/cloudapi/account/get.py
index 681368d..fec6ae2 100644
--- a/src/dynamix_sdk/api/cloudapi/account/get.py
+++ b/src/dynamix_sdk/api/cloudapi/account/get.py
@@ -2,33 +2,53 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiAccountGetResultModel(
- _base.BaseAPIResultModel,
- _nested.AccountAPIResultNM,
-):
- company: str
+class CloudapiAccountGetResultModel(_base.BaseAPIResultModel):
+ acc_lvl_vins_ids: list[int]
+ acl: list[_nested.AccessAPIResultNM]
company_url: str
+ company: str
cpu_allocation_parameter: str
cpu_allocation_ratio: int
created_by: str
+ created_timestamp: int
dc_location: str
deactivation_timestamp: int
+ default_zone_id: int
deleted_by: str
+ deleted_timestamp: int
+ description: str
display_name: str
guid: int
+ id: int
+ name: str
quotas: _nested.TenantQuotasAPIResultNM
resource_types: list[_nested.AccountResourceType]
send_access_emails: bool
+ status: _nested.AccountStatus
uniq_pools: list[str]
+ updated_timestamp: int
version: int
vins_count: int
- acc_lvl_vins_ids: list[int]
vm_counts: _nested.VMCountsAPIResultNM
+ vm_features: list[_nested.VMFeature]
+ zones: list[_nested.ZoneAPIResultNM]
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deactivation_datetime(self):
return self._get_datetime_from_timestamp(self.deactivation_timestamp)
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
class CloudapiAccountGetProtocol(_base.BasePostAPIFunctionProtocol):
def get(
diff --git a/src/dynamix_sdk/api/cloudapi/account/restore.py b/src/dynamix_sdk/api/cloudapi/account/restore.py
index 7c5e7e3..f702d9f 100644
--- a/src/dynamix_sdk/api/cloudapi/account/restore.py
+++ b/src/dynamix_sdk/api/cloudapi/account/restore.py
@@ -1,7 +1,7 @@
import dynamix_sdk.base as _base
-class CloudapiAccountRestoreResultBool(_base.BaseAPIResultBool):
+class CloudapiAccountRestoreResultStr(_base.BaseAPIResultStr):
pass
@@ -10,5 +10,5 @@ class CloudapiAccountRestoreProtocol(_base.BasePostAPIFunctionProtocol):
self,
*,
account_id: int,
- ) -> CloudapiAccountRestoreResultBool:
+ ) -> CloudapiAccountRestoreResultStr:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/update.py b/src/dynamix_sdk/api/cloudapi/account/update.py
index 998f69c..18e9261 100644
--- a/src/dynamix_sdk/api/cloudapi/account/update.py
+++ b/src/dynamix_sdk/api/cloudapi/account/update.py
@@ -20,5 +20,6 @@ class CloudapiAccountUpdateProtocol(_base.BasePostAPIFunctionProtocol):
storage_size_quota_gb: None | int = None,
uniq_pools: None | list[str] = None,
description: str | None = None,
+ default_zone_id: int | None = None,
) -> CloudapiAccountUpdateResultBool:
...
diff --git a/src/dynamix_sdk/api/cloudapi/account/update_user.py b/src/dynamix_sdk/api/cloudapi/account/update_user.py
index 9c46d6d..5459401 100644
--- a/src/dynamix_sdk/api/cloudapi/account/update_user.py
+++ b/src/dynamix_sdk/api/cloudapi/account/update_user.py
@@ -12,6 +12,6 @@ class CloudapiAccountUpdateUserProtocol(_base.BasePostAPIFunctionProtocol):
*,
account_id: int,
access_type: _nested.AccessTypeForSet,
- user_id: str,
+ user_name: str,
) -> CloudapiAccountUpdateUserResultBool:
...
diff --git a/src/dynamix_sdk/api/cloudapi/bservice/create.py b/src/dynamix_sdk/api/cloudapi/bservice/create.py
index aeff494..a61745b 100644
--- a/src/dynamix_sdk/api/cloudapi/bservice/create.py
+++ b/src/dynamix_sdk/api/cloudapi/bservice/create.py
@@ -13,5 +13,6 @@ class CloudapiBserviceCreateProtocol(_base.BasePostAPIFunctionProtocol):
rg_id: int,
ssh_user: str | None = None,
ssh_key: str | None = None,
+ zone_id: int | None = None,
) -> CloudapiBserviceCreateResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/bservice/get.py b/src/dynamix_sdk/api/cloudapi/bservice/get.py
index aa2828e..3d3f074 100644
--- a/src/dynamix_sdk/api/cloudapi/bservice/get.py
+++ b/src/dynamix_sdk/api/cloudapi/bservice/get.py
@@ -2,18 +2,49 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiBserviceGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseBServiceAPIResultNM,
-):
+class CloudapiBserviceGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ account_name: str
+ base_domain: str
cpu_count_total: int
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
disk_size_total_gb: int
+ grid_id: int
groups: list[_nested.BServiceGroupAPIResultNM]
+ guid: int
+ id: int
milestones: int
+ name: str
+ parent_service_id: int
+ parent_service_type: str
ram_size_total_mb: int
+ rg_id: int
+ rg_name: str
snapshots: list[_nested.BServiceSnapshotAPIResultNM]
ssh_key: str
+ ssh_user: str
+ status: _nested.BServiceStatus
+ tech_status: _nested.BServiceTechStatus
+ updated_by: str
+ updated_timestamp: int
+ user_managed: bool
vms: list[_nested.BServiceVMAPIResultNM]
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class CloudapiBserviceGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/bservice/list.py b/src/dynamix_sdk/api/cloudapi/bservice/list.py
index 7077176..844a59d 100644
--- a/src/dynamix_sdk/api/cloudapi/bservice/list.py
+++ b/src/dynamix_sdk/api/cloudapi/bservice/list.py
@@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiBserviceListResultModel(_base.BaseAPIResultModel):
- data: list[_nested.BServiceForListAPIResultNM]
+ data: list[_nested.BServiceAPIResultNM]
entry_count: int
diff --git a/src/dynamix_sdk/api/cloudapi/bservice/list_deleted.py b/src/dynamix_sdk/api/cloudapi/bservice/list_deleted.py
index 518b90d..c7ac5f1 100644
--- a/src/dynamix_sdk/api/cloudapi/bservice/list_deleted.py
+++ b/src/dynamix_sdk/api/cloudapi/bservice/list_deleted.py
@@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiBserviceListDeletedResultModel(_base.BaseAPIResultModel):
- data: list[_nested.BServiceForListAPIResultNM]
+ data: list[_nested.BServiceAPIResultNM]
entry_count: int
diff --git a/src/dynamix_sdk/api/cloudapi/compute/get.py b/src/dynamix_sdk/api/cloudapi/compute/get.py
index d794d46..1fa29fb 100644
--- a/src/dynamix_sdk/api/cloudapi/compute/get.py
+++ b/src/dynamix_sdk/api/cloudapi/compute/get.py
@@ -1,19 +1,83 @@
+import typing as _typing
+
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiComputeGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseVMAPIResultNM,
-):
- acl: _nested.VMACLForComputeGetAPIResultNM
+class CloudapiComputeGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ account_name: str
+ acl: _nested.VMACLAPIResultNM
+ affinity_label: str
+ affinity_rules: list[_nested.AffinityRuleAPIResultNM]
+ affinity_weight: int
+ anti_affinity_rules: list[_nested.AffinityRuleAPIResultNM]
+ arch: str
+ auto_start: bool
+ boot_disk_size_gb: int
+ boot_loader_type: _nested.BootLoaderType
+ boot_mode: _nested.BootMode
+ boot_order: list[_nested.BootDevice]
+ cdrom_image_id: int
+ chipset: _nested.Chipset
ci_user_data: dict
+ clone_ids: list[int]
+ clone_reference: int
+ cpu_count: int
+ cpu_pin: bool
+ created_by: str
+ created_timestamp: int
+ custom_fields: dict
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ devices: dict
disks: list[_nested.DiskForCAComputeGetAPIResultNM]
+ driver: _nested.Driver
+ grid_id: int
+ guid: int
+ hot_resize: bool
+ hp_backed: bool
+ id: int
+ image_id: int
image_name: None | str
interfaces: list[_nested.InterfaceForComputeGetAPIResultNM]
+ live_migration_job_id: int
+ lock_status: _nested.LockStatus
+ manager_id: int
+ manager_type: str
+ migration_job: int
+ milestones: int
+ name: str
+ need_reboot: bool
+ network_interface_naming: _nested.NetIfaceNamingTemplate
+ numa_affinity: _nested.NumaAffinity
+ numa_node_id: int
os_users: list[_nested.OSUserAPIResultNM]
+ pinned_to_stack: bool
+ preferred_cpu_cores: list[int]
+ ram_size_mb: int
+ reference_id: str
+ res_name: str
+ reserved_cpu_cores: list[int]
+ rg_id: int
+ rg_name: str
+ snapshot_sets: list[_nested.SnapshotSetAPIResultNM]
+ stateless_sep_id: int
+ stateless_sep_type: str
+ status: _nested.VMStatus
+ tags: dict
+ tech_status: _nested.VMTechStatus
+ updated_by: str
+ updated_timestamp: int
+ user_managed: bool
+ vgpus: list[dict[str, _typing.Any]]
+ virtual_image_id: int
virtual_image_name: None | str
+ vm_ci_id: int
vnc_password: str
+ guest_agent: _nested.GuestAgentAPIResultNM
+ zone_id: int
natable_vins_id: int = 0
natable_vins_ip: str = ''
@@ -21,6 +85,18 @@ class CloudapiComputeGetResultModel(
natable_vins_network: str = ''
natable_vins_network_name: str = ''
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
class CloudapiComputeGetProtocol(_base.BasePostAPIFunctionProtocol):
def get(
diff --git a/src/dynamix_sdk/api/cloudapi/compute/net_attach.py b/src/dynamix_sdk/api/cloudapi/compute/net_attach.py
index 02a7d68..6938286 100644
--- a/src/dynamix_sdk/api/cloudapi/compute/net_attach.py
+++ b/src/dynamix_sdk/api/cloudapi/compute/net_attach.py
@@ -19,5 +19,6 @@ class CloudapiComputeNetAttachProtocol(_base.BasePostAPIFunctionProtocol):
ip_addr: None | str = None,
mtu: None | int = None,
mac: None | str = None,
+ sdn_logical_port_id: None | str = None,
) -> CloudapiComputeNetAttachResultModel:
...
diff --git a/src/dynamix_sdk/api/cloudapi/compute/user_list.py b/src/dynamix_sdk/api/cloudapi/compute/user_list.py
index 459dbb9..a29ad4d 100644
--- a/src/dynamix_sdk/api/cloudapi/compute/user_list.py
+++ b/src/dynamix_sdk/api/cloudapi/compute/user_list.py
@@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiComputeUserListResultModel(_base.BaseAPIResultModel):
- data: _nested.VMACLForComputeUserListAPIResultNM
+ data: _nested.VMACLAPIResultNM
entry_count: int
diff --git a/src/dynamix_sdk/api/cloudapi/disks/get.py b/src/dynamix_sdk/api/cloudapi/disks/get.py
index bb78012..8d7e033 100644
--- a/src/dynamix_sdk/api/cloudapi/disks/get.py
+++ b/src/dynamix_sdk/api/cloudapi/disks/get.py
@@ -2,17 +2,69 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiDisksGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseDiskAPIResultNM,
- _nested.BaseDiskForCADisksAPIResultNM,
-):
+class CloudapiDisksGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ account_name: str
+ acl: dict
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ destruction_timestamp: int
+ device_name: str | None = None
+ grid_id: int
+ id: int
+ image_id: int
+ image_ids: list[int]
+ io_tune: _nested.IOTuneAPIResultNM
milestones: int
+ name: str
+ params: str
+ parent_id: int
+ present_to: dict[str, int]
+ purge_timestamp: int
+ replication: _nested.ReplicationAPIResultNM | dict
+ res_id: str
+ res_name: str
+ role: str
+ sep_id: int
+ sep_pool_name: str
+ sep_type: _nested.SEPType
+ shared: bool
+ size_available: float
+ size_available: float
+ size_max_gb: int
+ size_used: float
+ snapshots: list[_nested.SnapshotAPIResultNM]
+ status: _nested.DiskStatus
+ tech_status: _nested.DiskTechStatus
+ type: _nested.DiskType
+ updated_by: str
vm_id: int | None
vm_name: str | None
vms: dict[str, str]
- device_name: str | None = None
- sep_type: _nested.SEPType
+ updated_timestamp: int = 0
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def destruction_datetime(self):
+ return self._get_datetime_from_timestamp(self.destruction_timestamp)
+
+ @property
+ def purge_datetime(self):
+ return self._get_datetime_from_timestamp(self.purge_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class CloudapiDisksGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/dpdknet/__init__.py b/src/dynamix_sdk/api/cloudapi/dpdknet/__init__.py
new file mode 100644
index 0000000..24a9928
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/dpdknet/__init__.py
@@ -0,0 +1 @@
+from ._api import *
diff --git a/src/dynamix_sdk/api/cloudapi/dpdknet/_api.py b/src/dynamix_sdk/api/cloudapi/dpdknet/_api.py
new file mode 100644
index 0000000..cfd4622
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/dpdknet/_api.py
@@ -0,0 +1,11 @@
+import dynamix_sdk.base as _base
+from .get import *
+from .list import *
+
+
+class CloudapiDpdknetAPI(
+ _base.BaseAPI,
+ CloudapiDpdknetGetProtocol,
+ CloudapiDpdknetListProtocol,
+):
+ pass
diff --git a/src/dynamix_sdk/api/cloudapi/dpdknet/get.py b/src/dynamix_sdk/api/cloudapi/dpdknet/get.py
new file mode 100644
index 0000000..221bcde
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/dpdknet/get.py
@@ -0,0 +1,18 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiDpdknetGetResultModel(
+ _base.BaseAPIResultModel,
+ _nested.DPDKNetAPIResultNM,
+):
+ pass
+
+
+class CloudapiDpdknetGetProtocol(_base.BasePostAPIFunctionProtocol):
+ def get(
+ self,
+ *,
+ dpdk_net_id: int,
+ ) -> CloudapiDpdknetGetResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/dpdknet/list.py b/src/dynamix_sdk/api/cloudapi/dpdknet/list.py
new file mode 100644
index 0000000..0357cf9
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/dpdknet/list.py
@@ -0,0 +1,24 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiDpdknetListResultModel(_base.BaseAPIResultModel):
+ data: list[_nested.DPDKNetAPIResultNM]
+ entry_count: int
+
+
+class CloudapiDpdknetListProtocol(_base.BasePostAPIFunctionProtocol):
+ def list(
+ self,
+ *,
+ description: str | None = None,
+ grid_id: int | None = None,
+ id: int | None = None,
+ name: str | None = None,
+ page_number: int | None = None,
+ page_size: int | None = None,
+ sort_by: str | None = None,
+ status: _nested.DPDKNetStatus | None = None,
+ vm_ids: list[int] | None = None,
+ ) -> CloudapiDpdknetListResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/extnet/get.py b/src/dynamix_sdk/api/cloudapi/extnet/get.py
index 33a22d4..63de7ab 100644
--- a/src/dynamix_sdk/api/cloudapi/extnet/get.py
+++ b/src/dynamix_sdk/api/cloudapi/extnet/get.py
@@ -2,32 +2,38 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiExtnetGetResultModel(
- _base.BaseAPIResultModel,
- _nested.ExtNetForListAPIResultNM,
-):
+class CloudapiExtnetGetResultModel(_base.BaseAPIResultModel):
check_ips: list[str]
default_qos: _nested.QOSAPIResultNM
default: bool
description: str
- dns_servers: list[str]
dhcp_excluded_reservations: list[_nested.DHCPReservationAPIResultNM]
+ dhcp_reservations: list[_nested.DHCPReservationAPIResultNM]
+ dns_servers: list[str]
free_ip_count: int
gateway: str
grid_id: int
guid: int
+ id: int
+ ip_cidr: str
milestones: int
+ mtu: int
+ name: str
net_ip: str
- network_id: int
+ net_mask: int
+ network_ids: _nested.NetworkIDsAPIResultNM
+ ntp_servers: list[str]
ovs_bridge: str
pre_reservation_count: int
- net_mask: int
+ pre_reservations: list[_nested.DHCPReservationAPIResultNM]
primary_vnfdev_id: int
- dhcp_reservations: list[_nested.DHCPReservationAPIResultNM]
+ redundant: bool
+ secondary_vnfdev_id: int
shared_with: list[int]
+ status: _nested.ExtNetStatus
vlan_id: int
vnf_ids_by_type: dict[str, int]
- ntp_servers: list[str]
+ zone_id: int
class CloudapiExtnetGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/flipgroup/create.py b/src/dynamix_sdk/api/cloudapi/flipgroup/create.py
index c9d6da7..bea14db 100644
--- a/src/dynamix_sdk/api/cloudapi/flipgroup/create.py
+++ b/src/dynamix_sdk/api/cloudapi/flipgroup/create.py
@@ -18,9 +18,6 @@ class CloudapiFlipgroupCreateProtocol(_base.BasePostAPIFunctionProtocol):
name: str,
net_id: int,
net_type: _nested.FlipGroupNetType,
- client_type: _nested.FlipGroupClientType = (
- _nested.FlipGroupClientType.VM
- ),
description: str | None = None,
ip_addr: str | None = None,
) -> CloudapiFlipgroupCreateResultModel:
diff --git a/src/dynamix_sdk/api/cloudapi/flipgroup/get.py b/src/dynamix_sdk/api/cloudapi/flipgroup/get.py
index b4b9322..f53b929 100644
--- a/src/dynamix_sdk/api/cloudapi/flipgroup/get.py
+++ b/src/dynamix_sdk/api/cloudapi/flipgroup/get.py
@@ -2,19 +2,32 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiFlipgroupGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseFlipGroupAPIResultNM,
-):
+class CloudapiFlipgroupGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
account_name: str
+ client_ids: list[int]
client_names: list[str]
+ client_type: _nested.FlipGroupClientType
+ conn_id: int
+ conn_type: str
created_by: str
created_timestamp: int
+ default_gw: str
deleted_by: str
deleted_timestamp: int
+ description: str
+ grid_id: int
+ guid: int
+ id: int
+ ip_addr: str
+ milestones: int
+ name: str
net_cidr: str
+ net_id: int
+ net_type: _nested.FlipGroupNetType
rg_id: int
rg_name: str
+ status: _nested.FlipGroupStatus
updated_by: str
updated_timestamp: int
diff --git a/src/dynamix_sdk/api/cloudapi/image/get.py b/src/dynamix_sdk/api/cloudapi/image/get.py
index 9a02b28..1f5aeb3 100644
--- a/src/dynamix_sdk/api/cloudapi/image/get.py
+++ b/src/dynamix_sdk/api/cloudapi/image/get.py
@@ -2,35 +2,55 @@ import typing as _typing
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
+from dynamix_sdk.utils import EmptyStr as _EmptyStr
-class CloudapiImageGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseImageAPIResultNM,
-):
+class CloudapiImageGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
acl: list[_typing.Any]
+ arch: str
+ boot_mode: _nested.BootMode | _EmptyStr | None
+ bootable: bool
cd_presented_to: dict[str, list[int]]
ckey: str
deleted_timestamp: int
+ description: str
+ drivers: list[_nested.Driver]
enabled: bool
grid_id: int
guid: int
history: list[_nested.ImageHistoryRecordAPIResultNM]
+ hot_resize: bool
+ id: int
last_modified: int
+ link_to: int
milestones: int
+ name: str
+ network_interface_naming: _nested.NetIfaceNamingTemplate
os_password: str | None
+ os_user_name: str | None
present_to: dict[str, int]
provider_name: str
purge_attempt_count: int
res_id: str
rescue_cd: bool
+ sep_id: int
+ sep_pool_name: str
shared_with: list[int]
+ size_gb: int
snapshot_id: str = ''
+ status: _nested.ImageStatus
tech_status: _nested.ImageTechStatus
+ type: _nested.ImageType
unc_path: str
version: str
vm_ci_id: int
+ @property
+ def boot_loader_type(self):
+ if self.type in _nested.BootLoaderType._member_names_:
+ return _nested.BootLoaderType[self.type]
+
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
diff --git a/src/dynamix_sdk/api/cloudapi/k8ci/get.py b/src/dynamix_sdk/api/cloudapi/k8ci/get.py
index 4fdd141..3864eb7 100644
--- a/src/dynamix_sdk/api/cloudapi/k8ci/get.py
+++ b/src/dynamix_sdk/api/cloudapi/k8ci/get.py
@@ -2,11 +2,12 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiK8ciGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseK8CIAPIResultNM,
-):
- pass
+class CloudapiK8ciGetResultModel(_base.BaseAPIResultModel):
+ id: int
+ name: str
+ version: str
+ description: str
+ network_plugins: list[_nested.K8sNetworkPlugin]
class CloudapiK8ciGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/__init__.py b/src/dynamix_sdk/api/cloudapi/k8s/__init__.py
new file mode 100644
index 0000000..24a9928
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/__init__.py
@@ -0,0 +1 @@
+from ._api import *
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/_api.py b/src/dynamix_sdk/api/cloudapi/k8s/_api.py
new file mode 100644
index 0000000..0338f59
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/_api.py
@@ -0,0 +1,31 @@
+import dynamix_sdk.base as _base
+from .create import *
+from .delete import *
+from .get import *
+from .get_config import *
+from .list import *
+from .list_deleted import *
+from .restore import *
+from .worker_reset import *
+from .worker_restart import *
+from .workers_group_add import *
+from .workers_group_delete import *
+from .workers_group_get_by_name import *
+
+
+class CloudapiK8sAPI(
+ _base.BaseAPI,
+ CloudapiK8sCreateProtocol,
+ CloudapiK8sDeleteProtocol,
+ CloudapiK8sGetConfigProtocol,
+ CloudapiK8sGetProtocol,
+ CloudapiK8sListDeletedProtocol,
+ CloudapiK8sListProtocol,
+ CloudapiK8sRestoreProtocol,
+ CloudapiK8sWorkerResetProtocol,
+ CloudapiK8sWorkerRestartProtocol,
+ CloudapiK8sWorkersGroupAddProtocol,
+ CloudapiK8sWorkersGroupDeleteProtocol,
+ CloudapiK8sWorkersGroupGetByNameProtocol,
+):
+ pass
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/create.py b/src/dynamix_sdk/api/cloudapi/k8s/create.py
new file mode 100644
index 0000000..f31e5fd
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/create.py
@@ -0,0 +1,50 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sCreateResultStr(_base.BaseAPIResultStr):
+ pass
+
+
+class CloudapiK8sCreateProtocol(_base.BasePostAPIFunctionProtocol):
+ def create(
+ self,
+ *,
+ name: str,
+ rg_id: int,
+ k8ci_id: int,
+ worker_group_name: str,
+ network_plugin: _nested.K8sNetworkPlugin,
+ master_node_sep_id: int | None = None,
+ master_node_sep_pool_name: str | None = None,
+ worker_node_sep_id: int | None = None,
+ worker_node_sep_pool_name: str | None = None,
+ labels: list[str] | None = None,
+ taints: list[str] | None = None,
+ annotations: list[str] | None = None,
+ init_config: str | None = None,
+ cluster_config: str | None = None,
+ kubelet_config: str | None = None,
+ kube_proxy_config: str | None = None,
+ join_config: str | None = None,
+ master_node_count: int = 1,
+ master_node_cpu_count: int = 2,
+ master_node_ram_size_mb: int = 2048,
+ master_node_disk_size_gb: int | None = None,
+ worker_node_count: int = 1,
+ worker_node_cpu_count: int = 1,
+ worker_node_ram_size_mb: int = 1024,
+ worker_node_disk_size_gb: int | None = None,
+ ext_net_id: int | None = None,
+ vins_id: int | None = None,
+ with_lb: bool = True,
+ lb_ha_mode: bool = False,
+ description: str | None = None,
+ extnet_only: bool = False,
+ ci_user_data: str | None = None,
+ additional_sans: list[str] | None = None,
+ chipset: _nested.Chipset = _nested.Chipset.i440fx,
+ lb_sysctl_params: list[dict] | None = None,
+ zone_id: int | None = None,
+ ) -> CloudapiK8sCreateResultStr:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/delete.py b/src/dynamix_sdk/api/cloudapi/k8s/delete.py
new file mode 100644
index 0000000..890bb56
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/delete.py
@@ -0,0 +1,15 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sDeleteResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiK8sDeleteProtocol(_base.BasePostAPIFunctionProtocol):
+ def delete(
+ self,
+ *,
+ k8s_id: int,
+ permanently: bool = False,
+ ) -> CloudapiK8sDeleteResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/get.py b/src/dynamix_sdk/api/cloudapi/k8s/get.py
new file mode 100644
index 0000000..c527fbc
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/get.py
@@ -0,0 +1,53 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ account_name: str
+ acl: _nested.K8sACLAPIResultNM
+ lb_ha_ips: _nested.LBHAIPsAPIResultNM
+ bservice_id: int
+ k8ci_id: int
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ extnet_only: bool
+ lb_ha_mode: bool
+ id: int
+ k8ci_name: str
+ node_groups: _nested.K8sNodeGroupsAPIResultNM
+ lb_id: int
+ name: str
+ network_plugin: _nested.K8sNetworkPlugin
+ rg_id: int
+ rg_name: str
+ status: _nested.K8sStatus
+ tech_status: _nested.K8sTechStatus
+ updated_by: str
+ updated_timestamp: int
+ with_lb: bool
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
+
+
+class CloudapiK8sGetProtocol(_base.BasePostAPIFunctionProtocol):
+ def get(
+ self,
+ *,
+ k8s_id: int,
+ ) -> CloudapiK8sGetResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/get_config.py b/src/dynamix_sdk/api/cloudapi/k8s/get_config.py
new file mode 100644
index 0000000..e8226dc
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/get_config.py
@@ -0,0 +1,14 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sGetConfigResultStr(_base.BaseAPIResultStr):
+ pass
+
+
+class CloudapiK8sGetConfigProtocol(_base.BasePostAPIFunctionProtocol):
+ def get_config(
+ self,
+ *,
+ k8s_id: int,
+ ) -> CloudapiK8sGetConfigResultStr:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/list.py b/src/dynamix_sdk/api/cloudapi/k8s/list.py
new file mode 100644
index 0000000..c3ed4c3
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/list.py
@@ -0,0 +1,27 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sListResultModel(_base.BaseAPIResultModel):
+ data: list[_nested.K8sListAPIResultNM]
+ entry_count: int
+
+
+class CloudapiK8sListProtocol(_base.BasePostAPIFunctionProtocol):
+ def list(
+ self,
+ *,
+ bservice_id: int | None = None,
+ id: int | None = None,
+ include_deleted: bool = False,
+ ip_addr: str | None = None,
+ lb_id: int | None = None,
+ name: str | None = None,
+ page_number: int | None = None,
+ page_size: int | None = None,
+ rg_id: int | None = None,
+ sort_by: str | None = None,
+ status: _nested.K8sStatus | None = None,
+ tech_status: _nested.K8sTechStatus | None = None,
+ ) -> CloudapiK8sListResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/list_deleted.py b/src/dynamix_sdk/api/cloudapi/k8s/list_deleted.py
new file mode 100644
index 0000000..d2a0ac5
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/list_deleted.py
@@ -0,0 +1,25 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sListDeletedResultModel(_base.BaseAPIResultModel):
+ data: list[_nested.K8sListDeletedAPIResultNM]
+ entry_count: int
+
+
+class CloudapiK8sListDeletedProtocol(_base.BasePostAPIFunctionProtocol):
+ def list_deleted(
+ self,
+ *,
+ bservice_id: int | None = None,
+ id: int | None = None,
+ ip_addr: str | None = None,
+ lb_id: int | None = None,
+ name: str | None = None,
+ page_number: int | None = None,
+ page_size: int | None = None,
+ rg_id: int | None = None,
+ sort_by: str | None = None,
+ tech_status: _nested.K8sTechStatus | None = None,
+ ) -> CloudapiK8sListDeletedResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/restore.py b/src/dynamix_sdk/api/cloudapi/k8s/restore.py
new file mode 100644
index 0000000..b08a445
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/restore.py
@@ -0,0 +1,14 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sRestoreResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiK8sRestoreProtocol(_base.BasePostAPIFunctionProtocol):
+ def restore(
+ self,
+ *,
+ k8s_id: int,
+ ) -> CloudapiK8sRestoreResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/worker_reset.py b/src/dynamix_sdk/api/cloudapi/k8s/worker_reset.py
new file mode 100644
index 0000000..f1b1db6
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/worker_reset.py
@@ -0,0 +1,16 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sWorkerResetResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiK8sWorkerResetProtocol(_base.BasePostAPIFunctionProtocol):
+ def worker_reset(
+ self,
+ *,
+ k8s_id: int,
+ worker_group_id: int,
+ worker_node_id: int,
+ ) -> CloudapiK8sWorkerResetResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/worker_restart.py b/src/dynamix_sdk/api/cloudapi/k8s/worker_restart.py
new file mode 100644
index 0000000..042ecec
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/worker_restart.py
@@ -0,0 +1,16 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sWorkerRestartResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiK8sWorkerRestartProtocol(_base.BasePostAPIFunctionProtocol):
+ def worker_restart(
+ self,
+ *,
+ k8s_id: int,
+ worker_group_id: int,
+ worker_node_id: int,
+ ) -> CloudapiK8sWorkerRestartResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/workers_group_add.py b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_add.py
new file mode 100644
index 0000000..030a63d
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_add.py
@@ -0,0 +1,27 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sWorkersGroupAddResultStr(_base.BaseAPIResultStr):
+ pass
+
+
+class CloudapiK8sWorkersGroupAddProtocol(_base.BasePostAPIFunctionProtocol):
+ def workers_group_add(
+ self,
+ *,
+ k8s_id: int,
+ name: str,
+ sep_id: int | None = None,
+ sep_pool_name: str | None = None,
+ labels: list[str] | None = None,
+ taints: list[str] | None = None,
+ annotations: list[str] | None = None,
+ node_count: int = 1,
+ node_cpu_count: int = 1,
+ node_ram_size_mb: int = 1024,
+ node_disk_size_gb: int | None = None,
+ ci_user_data: str | None = None,
+ chipset: _nested.Chipset = _nested.Chipset.i440fx,
+ ) -> CloudapiK8sWorkersGroupAddResultStr:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/workers_group_delete.py b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_delete.py
new file mode 100644
index 0000000..01332e1
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_delete.py
@@ -0,0 +1,15 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiK8sWorkersGroupDeleteResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiK8sWorkersGroupDeleteProtocol(_base.BasePostAPIFunctionProtocol):
+ def workers_group_delete(
+ self,
+ *,
+ k8s_id: int,
+ worker_group_id: int,
+ ) -> CloudapiK8sWorkersGroupDeleteResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/k8s/workers_group_get_by_name.py b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_get_by_name.py
new file mode 100644
index 0000000..9a1a52b
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/k8s/workers_group_get_by_name.py
@@ -0,0 +1,27 @@
+import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiK8sWorkersGroupGetByNameResultModel(_base.BaseAPIResultModel):
+ annotations: list[str]
+ node_boot_disk_size_gb: int
+ node_cpu_count: int
+ vms: list[_nested.K8sVMAPIResultNM]
+ id: int
+ labels: list[str]
+ name: str
+ node_ram_size_mb: int
+ taints: list[str]
+ node_count: int
+
+
+class CloudapiK8sWorkersGroupGetByNameProtocol(
+ _base.BasePostAPIFunctionProtocol
+):
+ def workers_group_get_by_name(
+ self,
+ *,
+ k8s_id: int,
+ worker_group_name: str,
+ ) -> CloudapiK8sWorkersGroupGetByNameResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/kvmx86/create.py b/src/dynamix_sdk/api/cloudapi/kvmx86/create.py
index 299467b..5757b32 100644
--- a/src/dynamix_sdk/api/cloudapi/kvmx86/create.py
+++ b/src/dynamix_sdk/api/cloudapi/kvmx86/create.py
@@ -33,5 +33,6 @@ class CloudapiKvmx86CreateProtocol(_base.BasePostAPIFunctionProtocol):
start: bool = True,
system_name: None | str = None,
without_boot_disk: bool = False,
+ zone_id: None | int = None,
) -> CloudapiKvmx86CreateResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/kvmx86/create_blank.py b/src/dynamix_sdk/api/cloudapi/kvmx86/create_blank.py
index c35a4e7..e80dbad 100644
--- a/src/dynamix_sdk/api/cloudapi/kvmx86/create_blank.py
+++ b/src/dynamix_sdk/api/cloudapi/kvmx86/create_blank.py
@@ -32,5 +32,6 @@ class CloudapiKvmx86CreateBlankProtocol(_base.BasePostAPIFunctionProtocol):
_nested.NetIfaceNamingTemplate.ens
),
hot_resize: bool = False,
+ zone_id: None | int = None,
) -> CloudapiKvmx86CreateBlankResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/lb/_api.py b/src/dynamix_sdk/api/cloudapi/lb/_api.py
index ce49f09..66819a1 100644
--- a/src/dynamix_sdk/api/cloudapi/lb/_api.py
+++ b/src/dynamix_sdk/api/cloudapi/lb/_api.py
@@ -7,6 +7,8 @@ from .backend_server_update import *
from .backend_update import *
from .create import *
from .delete import *
+from .disable import *
+from .enable import *
from .frontend_bind import *
from .frontend_bind_delete import *
from .frontend_binding_update import *
@@ -15,6 +17,7 @@ from .frontend_delete import *
from .get import *
from .list import *
from .list_deleted import *
+from .make_highly_available import *
class CloudapiLbAPI(
@@ -27,13 +30,16 @@ class CloudapiLbAPI(
CloudapiLbBackendUpdateProtocol,
CloudapiLbCreateProtocol,
CloudapiLbDeleteProtocol,
+ CloudapiLbDisableProtocol,
+ CloudapiLbEnableProtocol,
CloudapiLbFrontendBindDeleteProtocol,
- CloudapiLbFrontendBindingUpdateProtocol,
CloudapiLbFrontendBindProtocol,
+ CloudapiLbFrontendBindingUpdateProtocol,
CloudapiLbFrontendCreateProtocol,
CloudapiLbFrontendDeleteProtocol,
CloudapiLbGetProtocol,
CloudapiLbListDeletedProtocol,
CloudapiLbListProtocol,
+ CloudapiLbMakeHighlyAvailableProtocol,
):
pass
diff --git a/src/dynamix_sdk/api/cloudapi/lb/create.py b/src/dynamix_sdk/api/cloudapi/lb/create.py
index 03b981d..eb6418e 100644
--- a/src/dynamix_sdk/api/cloudapi/lb/create.py
+++ b/src/dynamix_sdk/api/cloudapi/lb/create.py
@@ -14,8 +14,9 @@ class CloudapiLbCreateProtocol(_base.BasePostAPIFunctionProtocol):
rg_id: int,
vins_id: int,
description: None | str = None,
- highly_available: bool = False,
+ ha_mode: bool = False,
start: bool = True,
sysctl_params: None | list[str] = None,
+ zone_id: None | int = None,
) -> CloudapiLbCreateResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/lb/disable.py b/src/dynamix_sdk/api/cloudapi/lb/disable.py
new file mode 100644
index 0000000..bfe5dbe
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/lb/disable.py
@@ -0,0 +1,14 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiLbDisableResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiLbDisableProtocol(_base.BasePostAPIFunctionProtocol):
+ def disable(
+ self,
+ *,
+ lb_id: int,
+ ) -> CloudapiLbDisableResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/lb/enable.py b/src/dynamix_sdk/api/cloudapi/lb/enable.py
new file mode 100644
index 0000000..56c13ad
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/lb/enable.py
@@ -0,0 +1,14 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiLbEnableResultBool(_base.BaseAPIResultBool):
+ pass
+
+
+class CloudapiLbEnableProtocol(_base.BasePostAPIFunctionProtocol):
+ def enable(
+ self,
+ *,
+ lb_id: int,
+ ) -> CloudapiLbEnableResultBool:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/lb/get.py b/src/dynamix_sdk/api/cloudapi/lb/get.py
index 370c527..e434c45 100644
--- a/src/dynamix_sdk/api/cloudapi/lb/get.py
+++ b/src/dynamix_sdk/api/cloudapi/lb/get.py
@@ -1,12 +1,56 @@
-import dynamix_sdk.api._nested as _nested
+import typing as _typing
+
import dynamix_sdk.base as _base
+import dynamix_sdk.api._nested as _nested
+
+
+class CloudapiLbGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ acl: list[_typing.Any]
+ backend_ha_ip_addr: str
+ backends: list[_nested.LBBackendAPIResultNM]
+ created_by: str
+ created_timestamp: int
+ deleted_by: str
+ deleted_timestamp: int
+ description: str
+ dp_api_user: str
+ ext_net_id: int
+ frontend_ha_ip_addr: str
+ frontends: list[_nested.LBFrontendAPIResultNM]
+ grid_id: int
+ guid: int
+ ha_mode: bool
+ id: int
+ manager_id: int
+ manager_type: str
+ milestones: int
+ name: str
+ part_of_k8s: bool
+ primary_node: _nested.LBNodeAPIResultNM
+ rg_id: int
+ rg_name: str
+ secondary_node: _nested.LBNodeAPIResultNM
+ status: _nested.LBStatus
+ sysctl_params: dict[str, str]
+ tech_status: _nested.LBTechStatus
+ updated_by: str
+ updated_timestamp: int
+ user_managed: bool
+ vins_id: int
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
-class CloudapiLbGetResultModel(
- _base.BaseAPIResultModel,
- _nested.LBAPIResultNM
-):
- pass
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class CloudapiLbGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/lb/make_highly_available.py b/src/dynamix_sdk/api/cloudapi/lb/make_highly_available.py
new file mode 100644
index 0000000..145cb6d
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/lb/make_highly_available.py
@@ -0,0 +1,14 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiLbMakeHighlyAvailableResultInt(_base.BaseAPIResultInt):
+ pass
+
+
+class CloudapiLbMakeHighlyAvailableProtocol(_base.BasePostAPIFunctionProtocol):
+ def make_highly_available(
+ self,
+ *,
+ lb_id: int,
+ ) -> CloudapiLbMakeHighlyAvailableResultInt:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/rg/create.py b/src/dynamix_sdk/api/cloudapi/rg/create.py
index 9aaac37..238af51 100644
--- a/src/dynamix_sdk/api/cloudapi/rg/create.py
+++ b/src/dynamix_sdk/api/cloudapi/rg/create.py
@@ -26,5 +26,6 @@ class CloudapiRgCreateProtocol(_base.BasePostAPIFunctionProtocol):
public_ip_count_quota: int | None = None,
ram_size_quota_mb: int | None = None,
storage_size_quota_gb: int | None = None,
+ sdn_access_group_id: str | None = None,
) -> CloudapiRgCreateResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/stack/get.py b/src/dynamix_sdk/api/cloudapi/stack/get.py
index 8af6153..8567638 100644
--- a/src/dynamix_sdk/api/cloudapi/stack/get.py
+++ b/src/dynamix_sdk/api/cloudapi/stack/get.py
@@ -2,14 +2,15 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiStackGetResultModel(
- _base.BaseAPIResultModel,
- _nested.StackAPIResultNM
-):
+class CloudapiStackGetResultModel(_base.BaseAPIResultModel):
cpu_allocation_ratio: float | None
description: str
drivers: list[_nested.Driver]
+ id: int
mem_allocation_ratio: float | None
+ name: str
+ status: _nested.PhysicalNodeStatus
+ type: str
class CloudapiStackGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudapi/user/_api.py b/src/dynamix_sdk/api/cloudapi/user/_api.py
index 75a106e..efc94ed 100644
--- a/src/dynamix_sdk/api/cloudapi/user/_api.py
+++ b/src/dynamix_sdk/api/cloudapi/user/_api.py
@@ -1,11 +1,13 @@
import dynamix_sdk.base as _base
+from .api_list import *
from .get import *
from .get_audit import *
class CloudapiUserAPI(
_base.BaseAPI,
- CloudapiUserGetProtocol,
+ CloudapiUserApiListProtocol,
CloudapiUserGetAuditProtocol,
+ CloudapiUserGetProtocol,
):
pass
diff --git a/src/dynamix_sdk/api/cloudapi/user/api_list.py b/src/dynamix_sdk/api/cloudapi/user/api_list.py
new file mode 100644
index 0000000..e6ab080
--- /dev/null
+++ b/src/dynamix_sdk/api/cloudapi/user/api_list.py
@@ -0,0 +1,17 @@
+import dynamix_sdk.base as _base
+
+
+class CloudapiUserApiListResultModel(_base.BaseAPIResultModel): # BPYS-297
+ cloudapi: dict | None = None
+ cloudbroker: dict | None = None
+ sdn: dict | None = None
+ system: dict | None = None
+
+
+class CloudapiUserApiListProtocol(_base.BasePostAPIFunctionProtocol):
+ def api_list(
+ self,
+ *,
+ user_name: str,
+ ) -> CloudapiUserApiListResultModel:
+ ...
diff --git a/src/dynamix_sdk/api/cloudapi/vins/create_in_account.py b/src/dynamix_sdk/api/cloudapi/vins/create_in_account.py
index e145ee2..0c1e04f 100644
--- a/src/dynamix_sdk/api/cloudapi/vins/create_in_account.py
+++ b/src/dynamix_sdk/api/cloudapi/vins/create_in_account.py
@@ -18,5 +18,6 @@ class CloudapiVinsCreateInAccountProtocol(_base.BasePostAPIFunctionProtocol):
ip_cidr: None | str = None,
pre_reservation_count: int = 32,
routes: None | list[_nested.RouteAPIParamsNM] = None,
+ zone_id: None | int = None,
) -> CloudapiVinsCreateInAccountResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/vins/create_in_rg.py b/src/dynamix_sdk/api/cloudapi/vins/create_in_rg.py
index 416871c..ec8c9c8 100644
--- a/src/dynamix_sdk/api/cloudapi/vins/create_in_rg.py
+++ b/src/dynamix_sdk/api/cloudapi/vins/create_in_rg.py
@@ -19,5 +19,6 @@ class CloudapiVinsCreateInRGProtocol(_base.BasePostAPIFunctionProtocol):
ip_cidr: None | str = None,
pre_reservation_count: None | int = None,
routes: None | list[_nested.RouteAPIParamsNM] = None,
+ zone_id: None | int = None,
) -> CloudapiVinsCreateInRGResultInt:
...
diff --git a/src/dynamix_sdk/api/cloudapi/vins/get.py b/src/dynamix_sdk/api/cloudapi/vins/get.py
index 287f196..8e47ffc 100644
--- a/src/dynamix_sdk/api/cloudapi/vins/get.py
+++ b/src/dynamix_sdk/api/cloudapi/vins/get.py
@@ -2,27 +2,52 @@ import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
-class CloudapiVinsGetResultModel(
- _base.BaseAPIResultModel,
- _nested.BaseVINSAPIResultNM,
-):
+class CloudapiVinsGetResultModel(_base.BaseAPIResultModel):
+ account_id: int
+ account_name: str
+ created_by: str
+ created_timestamp: int
default_gw: str
default_qos: _nested.QOSAPIResultNM
+ deleted_by: str
+ deleted_timestamp: int
description: None | str
grid_id: int
guid: int
+ id: int
lock_status: _nested.LockStatus
manager_id: int
manager_type: str
milestones: int
+ name: str
+ net_ip: str
net_mask: int
pre_reservation_count: int
redundant: bool
+ rg_id: int
+ rg_name: str
secondary_vnfdev_id: int
+ status: _nested.VINSStatus
+ updated_by: str
+ updated_timestamp: int
user_managed: bool
vms: list[_nested.VINSVMAPIResultNM]
vnfdev: _nested.VNFDevAPIResultNM
vnfs: _nested.VNFSAPIResultNM
+ vxlan_id: int
+ zone_id: int
+
+ @property
+ def created_datetime(self):
+ return self._get_datetime_from_timestamp(self.created_timestamp)
+
+ @property
+ def deleted_datetime(self):
+ return self._get_datetime_from_timestamp(self.deleted_timestamp)
+
+ @property
+ def updated_datetime(self):
+ return self._get_datetime_from_timestamp(self.updated_timestamp)
class CloudapiVinsGetProtocol(_base.BasePostAPIFunctionProtocol):
diff --git a/src/dynamix_sdk/api/cloudbroker/account/create.py b/src/dynamix_sdk/api/cloudbroker/account/create.py
index f1211ae..eeb41f8 100644
--- a/src/dynamix_sdk/api/cloudbroker/account/create.py
+++ b/src/dynamix_sdk/api/cloudbroker/account/create.py
@@ -23,5 +23,7 @@ class CloudbrokerAccountCreateProtocol(_base.BasePostAPIFunctionProtocol):
storage_size_quota_gb: None | int = None,
uniq_pools: None | list[str] = None,
description: str | None = None,
+ zone_ids: None | list[int] = None,
+ default_zone_id: None | int = None,
) -> CloudbrokerAccountCreateResultInt:
...
diff --git a/src/dynamix_sdk/api/name_mapping.yml b/src/dynamix_sdk/api/name_mapping.yml
index c72dfd9..0514356 100644
--- a/src/dynamix_sdk/api/name_mapping.yml
+++ b/src/dynamix_sdk/api/name_mapping.yml
@@ -5,28 +5,34 @@ access_type__AccessAPIResultNM: right
access_type__CloudapiAccountListDeletedParamsModel: acl
access_type__CloudapiAccountListParamsModel: acl
access_type__CloudapiRgAccessGrantParamsModel: right
-account: accountAcl
-account__VMACLForComputeUserListAPIResultNM: accountACL
+account: accountACL
+account__K8sACLAPIResultNM: accountAcl
account_id: accountId
account_id__DHCPReservationAPIResultNM: account_id
+account_ids: accountAccess
account_name: accountName
acl: acl
acl__CloudapiComputeGetResultModel: ACL
+acl__CloudapiK8sGetResultModel: ACL
+additional_sans: additionalSANs
admin: admin
affinity_label: affinityLabel
affinity_rules: affinityRules
affinity_weight: affinityWeight
algorithm: algorithm
+annotations: annotations
anti_affinity_rules: antiAffinityRules
api_url_path: call
api_url_path__UserAuditAPIResultNM: Call
arch: arch
-arch__BaseImageAPIResultNM: architecture
+arch__CloudapiImageGetResultModel: architecture
args: args
audit_guid: auditId
audit_guid__CloudapiAuditGetParamsModel: audit_guid
auth_broker: authBroker
auto_start: autoStart
+available_commands: enabled_agent_features
+backend__LBHAIPsAPIResultNM: backendIp
backend_ha_ip_addr: backendHAIP
backend_ip_addr: backendIp
backend_ip_addr__CloudapiLbListDeletedParamsModel: backIp
@@ -52,15 +58,21 @@ boot_disk_size_gb__CloudapiComputeRedeployParamsModel: diskSize
boot_disk_size_gb__CloudapiKvmx86CreateBlankParamsModel: bootDisk
boot_disk_size_gb__CloudapiKvmx86CreateParamsModel: bootDisk
boot_loader_type: imagetype
-boot_loader_type__BaseVMAPIResultNM: loaderType
+boot_loader_type__CloudapiComputeGetResultModel: loaderType
boot_loader_type__CloudapiComputeUpdateParamsModel: loaderType
boot_loader_type__CloudapiKvmx86CreateBlankParamsModel: loaderType
+boot_loader_type__VMAPIResultNM: loaderType
boot_mode: bootType
boot_mode__CloudapiImageCreateParamsModel: boottype
boot_order: bootOrder
boot_partition: bootPartition
bootable: bootable
bservice_id: serviceId
+bservice_id__CloudapiK8sGetResultModel: bserviceId
+bservice_id__CloudapiK8sListDeletedParamsModel: basicServiceId
+bservice_id__CloudapiK8sListParamsModel: basicServiceId
+bservice_id__K8sListAPIResultNM: bserviceId
+bservice_id__K8sListDeletedAPIResultNM: bserviceId
bsgroup_id: compgroupId
bsgroup_name: compgroupName
bsgroup_role: compgroupRole
@@ -70,12 +82,15 @@ capabilities: capabilities
cd_presented_to: cdPresentedTo
cdrom: cdrom
cdrom_image_id: cdromId
-cdrom_image_id__BaseVMAPIResultNM: cdImageId
+cdrom_image_id__CloudapiComputeGetResultModel: cdImageId
+cdrom_image_id__VMAPIResultNM: cdImageId
check: check
check_ips: checkIps
chipset: chipset
ci_user_data: userdata
ci_user_data__CloudapiBserviceGroupAddParamsModel: userData
+ci_user_data__CloudapiK8sCreateParamsModel: userData
+ci_user_data__CloudapiK8sWorkersGroupAddParamsModel: userData
ckey: _ckey
clear_uniq_pools: clearUniqPools
client_ids: clientIds
@@ -84,6 +99,9 @@ client_names: clientNames
client_type: clientType
clone_ids: clones
clone_reference: cloneReference
+cloudapi: cloudapi
+cloudbroker: cloudbroker
+cluster_config: clusterConfiguration
company: company
company_url: companyurl
completed: completed
@@ -96,8 +114,9 @@ count_change_mode__CloudapiBserviceGroupResizeParamsModel: mode
cpu_allocation_parameter: cpu_allocation_parameter
cpu_allocation_ratio: cpu_allocation_ratio
cpu_count: cpu
-cpu_count__BaseVMAPIResultNM: cpus
+cpu_count__CloudapiComputeGetResultModel: cpus
cpu_count__TenantQuotasAPIResultNM: CU_C
+cpu_count__VMAPIResultNM: cpus
cpu_count_quota: maxCPUCapacity
cpu_count_total: cpuTotal
cpu_pin: cpupin
@@ -117,18 +136,23 @@ dc_location: DCLocation
deactivation_timestamp: deactivationTime
default: default
default_gw: defaultGW
-default_gw__BaseInterfaceAPIResultNM: defGw
default_gw__DHCPVNFConfigAPIResultNM: default_gw
default_gw__GWVNFConfigAPIResultNM: default_gw
+default_gw__InterfaceForComputeGetAPIResultNM: defGw
+default_gw__InterfaceForComputeListAPIResultNM: defGw
+default_gw__VNFDevInterfaceAPIResultNM: defGw
default_net_id: def_net_id
default_net_type: def_net_type
default_net_type__CloudapiRgCreateParamsModel: def_net
default_qos: defaultQos
+default_zone_id: defaultZoneId
deleted_by: deletedBy
deleted_timestamp: deletedTime
description: desc
description__CloudapiDisksCreateParamsModel: description
+description__CloudapiDpdknetListParamsModel: description
description__CloudapiStackGetResultModel: descr
+description__DPDKNetAPIResultNM: description
destruction_timestamp: destructionTime
detach: detach
detach_disks: detachDisks
@@ -162,6 +186,7 @@ download_password: passwordDL
download_url: url
download_user_name: usernameDL
dp_api_user: dpApiUser
+dpdk_net_id: dpdkId
driver: driver
drivers: drivers
dst_net_ip: destination
@@ -171,6 +196,7 @@ dst_net_mask__RouteAPIResultNM: netmask
egress_rate: eRate
email_address: emailaddress
email_addresses: emailaddresses
+emails: emails
enabled: enabled
entry_count: entryCount
error: error
@@ -193,6 +219,7 @@ ext_net_name: extNetName
ext_traffic: CU_NP
ext_traffic_quota: maxNetworkPeerTransfer
extnet_ids: extnets
+extnet_only: extnetOnly
fall: fall
flag: flag
flip_group_id: flipgroupId
@@ -200,6 +227,7 @@ force: force
force_stop: forceStop
free_ip_count: freeIPs
free_ip_count__CloudapiExtnetGetResultModel: free_ips
+frontend__LBHAIPsAPIResultNM: frontendIp
frontend_ha_ip_addr: frontendHAIP
frontend_ip_addr: frontendIp
frontend_ip_addr__CloudapiLbListDeletedParamsModel: frontIp
@@ -211,13 +239,14 @@ gpu_count: gpu_units
gpu_count_quota__CloudapiAccountUpdateParamsModel: gpu_units
gpu_count_quota__CloudbrokerAccountCreateParamsModel: gpu_units
grid_id: gid
-group_ids__BServiceForListAPIResultNM: groups
+group_ids__BServiceAPIResultNM: groups
groups: groups
+guest_agent: qemu_guest
guid: guid
guid__UserAuditAPIResultNM: Guid
gw: GW
ha_mode: HAmode
-highly_available: highlyAvailable
+ha_mode__CloudapiLbCreateParamsModel: highlyAvailable
history: history
hostname: hostname
hot_resize: hotResize
@@ -231,11 +260,14 @@ id__CloudapiComputeListParamsModel: by_id
id__CloudapiDisksListDeletedParamsModel: by_id
id__CloudapiDisksListParamsModel: by_id
id__CloudapiDisksListUnattachedParamsModel: by_id
+id__CloudapiDpdknetListParamsModel: by_id
id__CloudapiExtnetListParamsModel: by_id
id__CloudapiFlipgroupListParamsModel: by_id
id__CloudapiImageListParamsModel: by_id
id__CloudapiK8ciListDeletedParamsModel: k8cId
id__CloudapiK8ciListParamsModel: by_id
+id__CloudapiK8sListDeletedParamsModel: by_id
+id__CloudapiK8sListParamsModel: by_id
id__CloudapiLbListDeletedParamsModel: by_id
id__CloudapiLbListParamsModel: by_id
id__CloudapiLocationsListParamsModel: by_id
@@ -249,30 +281,37 @@ image_id: imageId
image_ids: images
image_name: imageName
include_deleted: includedeleted
+include_deleted__CloudapiK8sListParamsModel: includedeleted
include_deleted__CloudapiVinsListParamsModel: includeDeleted
include_disabled: includeDisabled
ingress_burst: inBurst
ingress_rate: inRate
+init_config: initConfiguration
inter: inter
interfaces: interfaces
io_tune: iotune
ioeventfd: ioeventfd
iops: iops
ip_addr: ipAddr
-ip_addr__BaseFlipGroupAPIResultNM: ip
-ip_addr__BaseInterfaceAPIResultNM: ipAddress
ip_addr__CloudapiComputeChangeIpParamsModel: ip_addr
ip_addr__CloudapiComputeListParamsModel: ipAddress
ip_addr__CloudapiFlipgroupCreateParamsModel: ip
ip_addr__CloudapiFlipgroupCreateResultModel: ip
+ip_addr__CloudapiFlipgroupGetResultModel: ip
ip_addr__CloudapiFlipgroupListParamsModel: byIp
+ip_addr__CloudapiK8sListDeletedParamsModel: ipAddress
+ip_addr__CloudapiK8sListParamsModel: ipAddress
ip_addr__CloudapiLbBackendServerAddParamsModel: address
ip_addr__CloudapiLbBackendServerUpdateParamsModel: address
ip_addr__CloudapiLbFrontendBindParamsModel: bindingAddress
ip_addr__CloudapiLbFrontendBindingUpdateParamsModel: bindingAddress
ip_addr__DHCPReservationAPIResultNM: ip
+ip_addr__FlipGroupForListAPIResultNM: ip
+ip_addr__InterfaceForComputeGetAPIResultNM: ipAddress
+ip_addr__InterfaceForComputeListAPIResultNM: ipAddress
ip_addr__LBFrontendBindingAPIResultNM: address
ip_addr__LBServerAPIResultNM: address
+ip_addr__VNFDevInterfaceAPIResultNM: ipAddress
ip_addr__VNFDevMGMTConfigAPIResultNM: ipaddr
ip_addresses: ipAddresses
ip_cidr: ipcidr
@@ -280,16 +319,31 @@ ip_pool_end: ip_end
ip_pool_start: ip_start
ipa_type: ipaType
iqn: iqn
+join_config: joinConfiguration
k8ci_id: k8ciId
+k8ci_id__CloudapiK8sGetResultModel: ciId
+k8ci_id__K8sListAPIResultNM: ciId
+k8ci_id__K8sListDeletedAPIResultNM: ciId
+k8ci_name: k8ciName
+k8s: k8sAcl
+k8s_id: k8sId
key: key
+kube_proxy_config: kubeProxyConfiguration
+kubelet_config: kubeletConfiguration
kwargs: kwargs
label: label
+labels: labels
last_modified: lastModified
+last_update_timestamp: last_update
+lb_ha_ips: addressVip
+lb_ha_mode: highlyAvailableLB
lb_id: lbId
+lb_sysctl_params: lbSysctlParams
lease_time: lease
libvirt_settings: libvirtSettings
link_to: linkTo
listen_ssh: listenSsh
+live_migration_job_id: live_migration_job_id
local_ip: localIp
local_port: localPort
local_port__CloudapiComputePfwAddParamsModel: localBasePort
@@ -302,7 +356,14 @@ mac: mac
mac__CloudapiComputeNetAttachParamsModel: mac_addr
manager_id: managerId
manager_type: managerType
+master: masters
+master_node_count: masterNum
+master_node_cpu_count: masterCpu
+master_node_disk_size_gb: masterDisk
master_node_driver: masterDriver
+master_node_ram_size_mb: masterRam
+master_node_sep_id: masterSepId
+master_node_sep_pool_name: masterSepPool
max_status_code: maxStatusCode
maxconn: maxconn
maxqueue: maxqueue
@@ -331,25 +392,42 @@ net_id__LBNodeAPIResultNM: networkId
net_ip: network
net_ip__CloudapiExtnetListParamsModel: network
net_mask: netmask
-net_mask__BaseInterfaceAPIResultNM: netMask
net_mask__CloudapiExtnetGetResultModel: prefix
net_mask__CloudapiVinsGetResultModel: netMask
+net_mask__InterfaceForComputeGetAPIResultNM: netMask
+net_mask__InterfaceForComputeListAPIResultNM: netMask
+net_mask__VNFDevInterfaceAPIResultNM: netMask
net_type: netType
net_type__CloudapiComputeChangeIpParamsModel: net_type
-network_id: networkId
+network_ids: networkIds
network_interface_naming: networkInterfaceNaming
+network_modes: network_modes
+network_plugin: networkPlugin
network_plugin__CloudapiK8ciListDeletedParamsModel: netPlugins
network_plugin__CloudapiK8ciListParamsModel: netPlugins
network_plugins: networkPlugins
+node_boot_disk_size_gb__CloudapiK8sWorkersGroupGetByNameResultModel: disk
+node_boot_disk_size_gb__K8sNodeGroupAPIResultNM: disk
+node_count__CloudapiK8sWorkersGroupAddParamsModel: workerNum
+node_count__CloudapiK8sWorkersGroupGetByNameResultModel: num
+node_count__K8sNodeGroupAPIResultNM: num
+node_cpu_count__CloudapiK8sWorkersGroupAddParamsModel: workerCpu
+node_cpu_count__CloudapiK8sWorkersGroupGetByNameResultModel: cpu
+node_cpu_count__K8sNodeGroupAPIResultNM: cpu
+node_disk_size_gb__CloudapiK8sWorkersGroupAddParamsModel: workerDisk
+node_groups: k8sGroups
node_id: nodeId
+node_ram_size_mb__CloudapiK8sWorkersGroupAddParamsModel: workerRam
+node_ram_size_mb__CloudapiK8sWorkersGroupGetByNameResultModel: ram
+node_ram_size_mb__K8sNodeGroupAPIResultNM: ram
ntp_servers: ntp
numa_affinity: numaAffinity
numa_node_id: numaNodeId
-order_depr_: order
os_password__CloudapiImageCreateParamsModel: password
os_password__CloudapiImageGetResultModel: password
-os_user_name__BaseImageAPIResultNM: username
os_user_name__CloudapiImageCreateParamsModel: username
+os_user_name__CloudapiImageGetResultModel: username
+os_user_name__ImageForListAPIResultNM: username
os_users: osUsers
other_node: otherNode
other_node_indirect: otherNodeIndirect
@@ -372,7 +450,6 @@ password__DiskForCAComputeGetAPIResultNM: passwd
password__DiskForListUnattachedAPIResultNM: passwd
pci_slot: pciSlot
pci_slot__DiskForCAComputeGetAPIResultNM: pci_slot
-pci_slot_depr___DiskAPIResultNM: pciSlot
permanently: permanently
pinned_to_stack: pinnedToStack
policy: policy
@@ -382,6 +459,7 @@ port: port
port__CloudapiLbFrontendBindParamsModel: bindingPort
port__CloudapiLbFrontendBindingUpdateParamsModel: bindingPort
pre_reservation_count: preReservationsNum
+pre_reservations: pre-reservations
preferred_cpu_cores: preferredCpu
present_to: presentTo
primary: primary
@@ -412,7 +490,6 @@ read_bytes_sec_max: read_bytes_sec_max
read_iops_sec: read_iops_sec
read_iops_sec_max: read_iops_sec_max
reality_device_number: realityDeviceNumber
-reason: reason
recursively__CloudapiRgDeleteParamsModel: force
redundant: redundant
reference_id: referenceId
@@ -431,9 +508,10 @@ resource_types: resourceTypes
resources: resources
response_timestamp: timestampEnd
result: result
-rg: rgAcl
-rg__VMACLForComputeUserListAPIResultNM: rgACL
+rg: rgACL
+rg__K8sACLAPIResultNM: rgAcl
rg_id: rgId
+rg_ids: rgAccess
rg_name: rgName
rise: rise
role: role
@@ -445,6 +523,11 @@ rules: rules
rx_queue_size: rx_queue_size
same_node: sameNode
same_node_soft: sameNodeSoft
+sdn: sdn
+sdn_access_group_id: sdn_access_group_id
+sdn_logical_port_id: sdn_interface_id
+sdn_support: sdn_support
+secondary: secondary
secondary_node: secondaryNode
secondary_vnfdev_id: secVnfDevId
secret: secret
@@ -452,27 +535,31 @@ self_volume_id: selfVolumeId
send_access_emails: sendAccessEmails
sep_id: sepId
sep_id__CloudapiDisksCreateParamsModel: sep_id
+sep_id__CloudapiK8sWorkersGroupAddParamsModel: workerSepId
sep_name: sepName
sep_pool_name: pool
sep_pool_name__CloudapiBserviceGroupAddParamsModel: sepPool
sep_pool_name__CloudapiBserviceGroupGetResultModel: poolName
sep_pool_name__CloudapiImageCreateParamsModel: poolName
+sep_pool_name__CloudapiK8sWorkersGroupAddParamsModel: workerSepPool
sep_type: sepType
seq_no: seqNo
server_default_settings: serverDefaultSettings
server_name: serverName
server_settings: serverSettings
servers: servers
+service_account: serviceAccount
shared: shareable
shared__CloudapiDisksListDeletedParamsModel: shared
shared__CloudapiDisksListParamsModel: shared
shared_with: sharedWith
show_all: showAll
size_available: sizeAvailable
-size_gb__BaseImageAPIResultNM: size
size_gb__CloudapiDisksCreateParamsModel: size
+size_gb__CloudapiImageGetResultModel: size
size_gb__CloudapiImageListParamsModel: imageSize
size_gb__DiskAPIParamsNM: size
+size_gb__ImageForListAPIResultNM: size
size_iops_sec: size_iops_sec
size_max_gb: sizeMax
size_used: sizeUsed
@@ -508,6 +595,7 @@ sysctl_params: sysctlParams
system: system
system_name: IS
tags: tags
+taints: taints
target: target
target_image_id: targetId
task_guid: taskId
@@ -519,6 +607,7 @@ total_bytes_sec_max: total_bytes_sec_max
total_disks_size: totalDisksSize
total_iops_sec: total_iops_sec
total_iops_sec_max: total_iops_sec_max
+trunk_vlan_ids: trunk_tags
tx_mode: txmode
tx_queue_size: tx_queue_size
type: type
@@ -530,15 +619,19 @@ updated_by: updatedBy
updated_timestamp: updatedTime
user: user
user_group_id: userGroupId
-user_id: userId
user_managed: userManaged
user_name: username
+user_name__CloudapiAccountAddUserParamsModel: userId
+user_name__CloudapiAccountDeleteUserParamsModel: userId
+user_name__CloudapiAccountUpdateUserParamsModel: userId
user_name__CloudapiAuditGetResultModel: user
user_name__CloudapiComputeUserGrantParamsModel: userName
user_name__CloudapiComputeUserRevokeParamsModel: userName
user_name__CloudapiComputeUserUpdateParamsModel: userName
user_name__CloudapiRgAccessGrantParamsModel: user
user_name__CloudapiRgAccessRevokeParamsModel: user
+user_name__CloudapiUserApiListParamsModel: userId
+user_name__GuestAgentAPIResultNM: user
uuid: uuid
valid: valid
value: value
@@ -557,8 +650,7 @@ virtual_image_id: virtualImageId
virtual_image_id__CloudapiImageLinkParamsModel: imageId
virtual_image_name: virtualImageName
vlan_id: vlanId
-vm: computeAcl
-vm__VMACLForComputeUserListAPIResultNM: computeACL
+vm: computeACL
vm_ci_id: computeciId
vm_count__BServiceGroupAPIResultNM: computes
vm_count__CloudapiBserviceGroupAddParamsModel: count
@@ -570,18 +662,20 @@ vm_id__CloudapiComputeChangeIpParamsModel: compute_id
vm_id__CloudapiDisksGetResultModel: machineId
vm_id__DHCPReservationAPIResultNM: vmId
vm_id__DiskForListAndListDeletedAPIResultNM: machineId
-vm_id__DiskForListUnattachedAPIResultNM: vmid
vm_id__NATRuleAPIResultNM: vmId
-vm_id_depr___DiskAPIResultNM: vmid
vm_ids: vms
+vm_ids__CloudapiDpdknetListParamsModel: computeIds
+vm_ids__DPDKNetAPIResultNM: computeIds
vm_ids__RouteAPIResultNM: computeIds
vm_name__CloudapiDisksGetResultModel: machineName
vm_name__DiskForListAndListDeletedAPIResultNM: machineName
vms__CloudapiBserviceGetResultModel: computes
vms__CloudapiBserviceGroupGetResultModel: computes
vms__CloudapiDisksGetResultModel: computes
+vms__CloudapiK8sWorkersGroupGetByNameResultModel: detailedInfo
vms__CloudapiVinsGetResultModel: computes
vms__DiskForListAndListDeletedAPIResultNM: computes
+vms__K8sNodeGroupAPIResultNM: detailedInfo
vnc_password: vncPasswd
vnf_ids: vnfs
vnf_ids_by_type__CloudapiExtnetGetResultModel: vnfs
@@ -592,9 +686,25 @@ vnfs__CloudapiVinsGetResultModel: vnfs
volume_id: volumeId
vxlan_id: vxlanId
weight: weight
+with_lb: withLB
without_boot_disk: withoutBootDisk
+worker: workers
+worker_group_id: workersGroupId
+worker_group_name: workerGroupName
+worker_group_name__CloudapiK8sWorkersGroupGetByNameParamsModel: groupName
+worker_groups: workersGroups
+worker_node_count: workerNum
+worker_node_cpu_count: workerCpu
+worker_node_disk_size_gb: workerDisk
worker_node_driver: workerDriver
+worker_node_id: workerId
+worker_node_ram_size_mb: workerRam
+worker_node_sep_id: workerSepId
+worker_node_sep_pool_name: workerSepPool
write_bytes_sec: write_bytes_sec
write_bytes_sec_max: write_bytes_sec_max
write_iops_sec: write_iops_sec
write_iops_sec_max: write_iops_sec_max
+zone_id: zoneId
+zone_ids: zoneIds
+zones__CloudapiAccountGetResultModel: zoneIds
diff --git a/src/dynamix_sdk/api/path_mapping.yml b/src/dynamix_sdk/api/path_mapping.yml
index a37f8b3..524edaa 100644
--- a/src/dynamix_sdk/api/path_mapping.yml
+++ b/src/dynamix_sdk/api/path_mapping.yml
@@ -11,6 +11,7 @@ affinity_rules_clear: affinityRulesClear
anti_affinity_rule_add: antiAffinityRuleAdd
anti_affinity_rule_remove: antiAffinityRuleRemove
anti_affinity_rules_clear: antiAffinityRulesClear
+api_list: apiList
backend_create: backendCreate
backend_delete: backendDelete
backend_server_add: backendServerAdd
@@ -40,6 +41,7 @@ frontend_binding_update: frontendBindingUpdate
frontend_create: frontendCreate
frontend_delete: frontendDelete
get_audit: getAudit
+get_config: getConfig
get_default: getDefault
get_url: getUrl
group_add: groupAdd
@@ -61,6 +63,7 @@ limit_io: limitIO
list_deleted: listDeleted
list_types: listTypes
list_unattached: listUnattached
+make_highly_available: makeHighlyAvailable
net_attach: netAttach
net_detach: netDetach
pfw_add: pfwAdd
@@ -87,3 +90,8 @@ user_revoke: userRevoke
user_update: userUpdate
vnfdev_redeploy: vnfdevRedeploy
vnfdev_restart: vnfdevRestart
+worker_reset: workerReset
+worker_restart: workerRestart
+workers_group_add: workersGroupAdd
+workers_group_delete: workersGroupDelete
+workers_group_get_by_name: workersGroupGetByName
diff --git a/src/dynamix_sdk/utils.py b/src/dynamix_sdk/utils.py
index 8f8e49d..a83c365 100644
--- a/src/dynamix_sdk/utils.py
+++ b/src/dynamix_sdk/utils.py
@@ -1,5 +1,6 @@
from enum import Enum, auto as enum_auto
-from typing import Sequence, Any
+from typing import Any
+from collections.abc import Sequence
JSON = int | str | bool | list['JSON'] | dict[str, 'JSON'] | None
diff --git a/tests/test_with_api_definition.py b/tests/test_with_api_definition.py
index 8073943..f02eb77 100644
--- a/tests/test_with_api_definition.py
+++ b/tests/test_with_api_definition.py
@@ -15,18 +15,18 @@ from tests.conftest import SDKFunction
expected_inconsistencies: list[str] = [
+ '''cloudapi.image.create: API has parameter "asyncMode" but this SDK function doesn't have corresponding parameter.''', # noqa: E501
+ '''cloudapi.flipgroup.create: API has parameter "clientType" but this SDK function doesn't have corresponding parameter.''', # noqa: E501
+ '''cloudapi.k8s.create: API has parameter "oidcCertificate" but this SDK function doesn't have corresponding parameter.''', # noqa: E501
+ 'cloudapi.k8s.create: annotation of parameter "lb_sysctl_params" must contain BaseAPIParamsNestedModel.', # noqa: E501
'cloudapi.user.get_audit: result type must be child of BaseAPIParamsNestedModel.', # noqa: E501
'cloudapi.disks.limit_io: API has parameter "iops" but this SDK function doesn\'t have corresponding parameter.', # noqa: E501
- 'cloudapi.image.list: API has parameter "architecture" but this SDK function doesn\'t have corresponding parameter.', # noqa: E501
'cloudapi.bservice.group_stop: default value of parameter "force" must be None.', # noqa: E501
'cloudapi.bservice.group_stop: annotation of parameter "force" must be Union.', # noqa: E501
- 'cloudapi.bservice.delete: default value of parameter "permanently" must be None.', # noqa: E501
- 'cloudapi.bservice.delete: annotation of parameter "permanently" must be Union.', # noqa: E501
'cloudapi.compute.net_attach: result type must be child of BaseAPIResultBool.', # noqa: E501
'cloudapi.compute.net_attach: default value of parameter "mtu" must be 1500.', # noqa: E501
'cloudapi.disks.create: default value of parameter "size_gb" must be 10.',
'cloudapi.kvmx86.create: annotation of parameter "ci_user_data" must contain BaseAPIParamsNestedModel.', # noqa: E501
- '''cloudapi.image.create: API has parameter "architecture" but this SDK function doesn't have corresponding parameter.''', # noqa: E501
'cloudapi.lb.create: annotation of parameter "sysctl_params" must contain BaseAPIParamsNestedModel.', # noqa: E501
]
@@ -298,8 +298,8 @@ def test_with_api_definition(
inconsistencies.append(
f'{".".join(sdk_func.call_attrs)}:'
f' parameter "{sdk_param_name}",'
- f' {target_annotation = },'
- f' {expected_annot = }'
+ f' {target_annotation = },' # noqa: E202, E251
+ f' {expected_annot = }' # noqa: E202, E251
)
continue