main 1.3.0
Dmitriy Smirnov 3 weeks ago
parent 9eac1da63f
commit 1703d1ed33

@ -1,20 +1,376 @@
# Список изменений в версии 1.2.2 # Список изменений в версии 1.3.0
## Добавлено ## Добавлено
### Функциональный интерфейс
| Идентификатор<br>задачи | Описание | | Идентификатор<br>задачи | Описание |
| --- | --- | | --- | --- |
| BPYS-89 | Добавлены функции `cloudapi.vfpool.get`, `cloudapi.vfpool.list`. |
| BPYS-314 | Функция `cloudapi.compute.get`: тип атрибута `CloudapiComputeGetResultModel.stateless_sep_id` изменен с `int` на `int \| None`. |
| BPYS-315 | Функция `cloudapi.compute.get`: тип атрибута `CloudapiComputeGetResultModel.stateless_sep_type` изменен с `str` на `str \| None`. |
| BPYS-174 | Добавлена функция `cloudapi.compute.get_console_url`. |
| BPYS-168 | Добавлена функция `cloudapi.lb.config_reset`. |
| BPYS-166 | Добавлена функция `cloudapi.lb.update`. |
| BPYS-164 | Добавлены функции `cloudapi.lb.start`, `cloudapi.lb.stop`. |
| BPYS-333 | Функция `cloudapi.compute.list`: тип атрибута `CloudapiComputeListResultModel.data.stateless_sep_id` изменен с `int` на `int \| None`. |
| BPYS-334 | Функция `cloudapi.compute.list`: тип атрибута `CloudapiComputeListResultModel.data.stateless_sep_type` изменен с `str` на `str \| None`. |
| BPYS-324 | Функция `cloudapi.k8s.list`: у атрибута `CloudapiK8sListResultModel.data` изменен тип с `K8sListAPIResultNM` на `K8sAPIResultNM`. |
| BPYS-324 | Функция `cloudapi.k8s.list_deleted`: у атрибута `CloudapiK8sListDeletedResultModel.data` изменен тип с `K8sListDeletedAPIResultNM` на `K8sAPIResultNM`. |
| BPYS-188 | Добавлены функции `cloudapi.k8s.delete_master_from_group`, `cloudapi.k8s.delete_worker_from_group`. |
| BPYS-359 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.quotas.ext_ip_count` в связи с переименованием из `public_ip_count`. |
| BPYS-359 | Функция `cloudapi.account.update`: добавлен параметр `ext_ip_count_quota` в связи с переименованием из `public_ip_count_quota`. |
| BPYS-359 | Функция `cloudapi.rg.create`: добавлен параметр `ext_ip_count_quota` в связи с переименованием из `public_ip_count_quota`. |
| BPYS-359 | Функция `cloudapi.rg.get`: добавлен атрибут `CloudapiRgGetResultModel.quotas.ext_ip_count` в связи с переименованием из `public_ip_count`. |
| BPYS-359 | Функция `cloudapi.rg.list`: добавлен атрибут `CloudapiRgListResultModel.data.quotas.ext_ip_count` в связи с переименованием из `public_ip_count`. |
| BPYS-359 | Функция `cloudapi.rg.update`: добавлен параметр `ext_ip_count_quota` в связи с переименованием из `public_ip_count_quota`. |
| BPYS-359 | Функция `cloudbroker.account.create`: добавлен параметр `ext_ip_count_quota` в связи с переименованием из `public_ip_count_quota`. |
| BPYS-150 | Добавлены функции `cloudapi.vins.nat_rule_add`, `cloudapi.vins.nat_rule_del`, `cloudapi.vins.nat_rule_list`. |
| BPYS-176 | Добавлена функция `cloudapi.compute.power_cycle`. |
| BPYS-374 | Функция `cloudapi.image.create`: добавлен параметр `storage_policy_id`. |
| BPYS-379 | Функция `cloudapi.kvmx86.create`: добавлен параметр `storage_policy_id`. |
| BPYS-380 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `storage_policy_id`. |
| BPYS-370 | Функция `cloudapi.compute.disk_add`: добавлен параметр `storage_policy_id`. |
| BPYS-372 | Функция `cloudapi.disks.create`: добавлен параметр `storage_policy_id`. |
| BPYS-376 | Функция `cloudapi.k8s.create`: добавлен параметр `storage_policy_id`. |
| BPYS-378 | Функция `cloudapi.k8s.workers_group_add`: добавлен параметр `storage_policy_id`. |
| BPYS-368 | Функция `cloudapi.bservice.group_add`: добавлен параметр `storage_policy_id`. |
| BPYS-177 | Добавлена функция `cloudapi.compute.reset`. |
| BPYS-192 | Добавлена функция `cloudapi.k8s.enable`, `cloudapi.k8s.disable`. |
| BPYS-193 | Добавлена функция `cloudapi.k8s.update`. |
| BPYS-194 | Добавлена функция `cloudapi.k8s.start`, `cloudapi.k8s.stop`. |
| BPYS-170 | Добавлена функция `cloudapi.lb.restart`. |
| BPYS-169 | Добавлена функция `cloudapi.lb.restore`. |
| BPYS-175 | Добавлена функция `cloudapi.compute.change_link_state`. |
| BPYS-139 | Добавлена функция `cloudapi.compute.abort_shared_snapshot_merge`. |
| BPYS-173 | Добавлена функция `cloudapi.lb.update_syscl_params`. |
| BPYS-389 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.storage_policy_ids`. |
| BPYS-414 | Функция `cloudapi.account.get`: добавлен атрибут `CloudapiAccountGetResultModel.quotas.storage_policies`. |
| BPYS-414 | Функция `cloudapi.rg.get`: добавлен атрибут `CloudapiRgGetResultModel.quotas.storage_policies`. |
| BPYS-414 | Функция `cloudapi.rg.list`: добавлен атрибут `CloudapiRgListResultModel.data.quotas.storage_policies`. |
| BPYS-385 | Функция `cloudapi.compute.redeploy`: добавлен параметр `storage_policy_id`. |
| BPYS-386 | Функция `cloudapi.disks.get`: добавлен атрибут `CloudapiDisksGetResultModel.storage_policy_id`. |
| BPYS-387 | Функция `cloudapi.disks.list`: добавлен атрибут `CloudapiDisksListResultModel.data.storage_policy_id`. |
| BPYS-387 | Функция `cloudapi.disks.list_deleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.storage_policy_id`. |
| BPYS-391 | Функция `cloudapi.rg.get`: добавлен атрибут `CloudapiRgGetResultModel.storage_policy_ids`. |
| BPYS-181 | Добавлена функция `cloudapi.vins.dns_apply`. |
| BPYS-388 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.storage_policy_id`. |
| BPYS-417 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.security_group_ids`. |
| BPYS-418 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.security_group_mode`. |
| BPYS-418 | Функция `cloudapi.compute.net_attach`: добавлен атрибут `CloudapiComputeNetAttachResultModel.interfaces.security_group_ids`. |
| BPYS-418 | Функция `cloudapi.compute.net_attach`: добавлен атрибут `CloudapiComputeNetAttachResultModel.interfaces.security_group_mode`. |
| BPYS-155 | Добавлены функции `cloudbroker.user.block`, `cloudbroker.user.unblock`. |
| BPYS-308 | Функция `cloudapi.image.create_virtual`: добавлен параметр `account_id`. |
| BPYS-422 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.security_group_ids`. |
| BPYS-423 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.security_group_mode`. |
| BPYS-156 | Функция `cloudapi.compute.user_list`: у атрибута `CloudapiComputeUserListResultModel.data.account.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-156 | Функция `cloudapi.compute.user_list`: у атрибута `CloudapiComputeUserListResultModel.data.vm.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-156 | Функция `cloudapi.compute.user_list`: у атрибута `CloudapiComputeUserListResultModel.data.rg.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-156 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.acl.account.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-156 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.acl.vm.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-156 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.acl.rg.explicit` изменен тип с `bool \| str` на `bool`. |
| BPYS-100 | Добавлены функции `cloudapi.zone.get`, `cloudapi.zone.list`. |
| BPYS-141 | Добавлены функции `cloudapi.compute.guest_agent_disable`, `cloudapi.compute.guest_agent_enable`, `cloudapi.compute.guest_agent_execute`, `cloudapi.compute.guest_agent_feature_update`. |
| BPYS-436 | Функция `cloudapi.disks.list`: добавлен параметр `storage_policy_id`. |
| BPYS-427 | Функция `cloudapi.kvmx86.create`: добавлен параметр `interfaces.security_group_mode`. |
| BPYS-428 | Функция `cloudapi.kvmx86.create`: добавлен параметр `interfaces.security_group_ids`. |
| BPYS-428 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `interfaces.security_group_mode`. |
| BPYS-428 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `interfaces.security_group_ids`. |
| BPYS-433 | Функция `cloudapi.compute.net_attach`: добавлен параметр `security_group_mode`. |
| BPYS-434 | Функция `cloudapi.compute.net_attach`: добавлен параметр `security_group_ids`. |
| BPYS-447 | Добавлена функция `cloudapi.image.change_storage_policy`. |
| BPYS-459 | Функция `cloudapi.rg.update`: добавлен параметр `storage_policies`. |
| BPYS-101 | Добавлены функции `cloudapi.bservice.migrate_to_zone`, `cloudapi.compute.migrate_to_zone`, `cloudapi.k8s.migrate_to_zone`, `cloudapi.lb.migrate_to_zone`, `cloudapi.vins.migrate_to_zone`. |
| BPYS-446 | Добавлена функция `cloudapi.security_group.update`. |
| BPYS-251 | Добавлена функция `cloudapi.compute.change_mtu`. |
| BPYS-439 | Добавлена функция `cloudapi.compute.change_security_groups`. |
| BPYS-217 | Добавлены функции `cloudapi.trunk.get`, `cloudapi.trunk.list`. |
| BPYS-462 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `data_disks.storage_policy_id`. |
| BPYS-462 | Функция `cloudapi.kvmx86.create`: добавлен параметр `data_disks.storage_policy_id`. |
| BPYS-464 | Функция `cloudapi.user.get_audit`: в параметре `sort_by` изменено значение по умолчанию с `-Time` на `-timestamp`. |
| BPYS-470 | Функция `cloudapi.bservice.list`: добавлен параметр `zone_id`. |
| BPYS-496 | Функция `cloudapi.account.list`: добавлен атрибут `CloudapiAccountListResultModel.data.zone_ids`. |
| BPYS-496 | Функция `cloudapi.account.list_deleted`: добавлен атрибут `CloudapiAccountListDeletedResultModel.data.zone_ids`. |
| BPYS-468 | Функция `cloudapi.account.list`: добавлен параметр `zone_id`. |
| BPYS-492 | Функция `cloudapi.kvmx86.create`: добавлен параметр `interfaces.enabled`. |
| BPYS-492 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `interfaces.enabled`. |
| BPYS-480 | Функция `cloudapi.vins.list`: добавлен параметр `zone_id`. |
| BPYS-397 | Добавлена функция `cloudapi.storage_policy.get`. |
| BPYS-472 | Функция `cloudapi.compute.list`: добавлен параметр `zone_id`. |
| BPYS-474 | Функция `cloudapi.extnet.list`: добавлен параметр `zone_id`. |
| BPYS-476 | Функция `cloudapi.k8s.list`: добавлен параметр `zone_id`. |
| BPYS-478 | Функция `cloudapi.lb.list`: добавлен параметр `zone_id`. |
| BPYS-493 | Функция `cloudapi.compute.net_attach`: добавлен параметр `enabled`. |
| BPYS-180 | Добавлены функции `cloudapi.vins.ext_net_list`, `cloudapi.vins.ext_net_connect`, `cloudapi.vins.ext_net_disconnect`. |
| BPYS-445 | Добавлена функция `cloudapi.security_group.list`. |
| BPYS-442 | Добавлена функция `cloudapi.security_group.delete`. |
| BPYS-440 | Добавлена функция `cloudapi.security_group.create`. |
| BPYS-441 | Добавлена функция `cloudapi.security_group.create_rule`. |
| BPYS-398 | Добавлена функция `cloudapi.storage_policy.list`. |
| BPYS-443 | Добавлена функция `cloudapi.security_group.delete_rule`. |
| BPYS-400 | Добавлена функция `cloudbroker.storage_policy.create`. |
| BPYS-403 | Добавлена функция `cloudbroker.account.add_storage_policy`. |
| BPYS-404 | Добавлена функция `cloudbroker.account.del_storage_policy`. |
| BPYS-405 | Добавлена функция `cloudbroker.rg.add_storage_policy`. |
| BPYS-448 | Добавлена функция `cloudbroker.image.change_storage_policy`. |
| BPYS-396 | Функция `cloudbroker.account.create`: добавлен параметр `storage_policy_quotas`. |
| BPYS-444 | Добавлена функция `cloudapi.security_group.get`. |
| BPYS-449 | Добавлена функция `cloudbroker.compute.change_security_groups`. |
| BPYS-450 | Добавлена функция `cloudbroker.vins.update`. |
| BPYS-505 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.to_clean`. |
| BPYS-515 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.os_version`. |
| BPYS-518 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.image_id` изменен тип с `int` на `None \| int`. |
| BPYS-504 | Функция `cloudapi.disks.list`: добавлен атрибут `CloudapiDisksListResultModel.data.to_clean`. |
| BPYS-504 | Функция `cloudapi.disks.list_deleted`: добавлен атрибут `CloudapiDisksListDeletedResultModel.data.to_clean`. |
| BPYS-503 | Функция `cloudapi.disks.get`: добавлен атрибут `CloudapiDisksGetResultModel.to_clean`. |
| BPYS-406 | Добавлена функция `cloudbroker.rg.del_storage_policy`. |
| BPYS-438 | Функция `cloudapi.rg.create`: добавлен параметр `storage_policy_quotas`. |
| BPYS-514 | Функция `cloudapi.kvmx86.create`: добавлен параметр `os_version`. |
| BPYS-521 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.os_version`. |
| BPYS-513 | Функция `cloudapi.kvmx86.create_blank`: добавлен параметр `os_version`. |
| BPYS-512 | Функция `cloudapi.compute.update`: добавлен параметр `os_version`. |
| BPYS-409 | Добавлена функция `cloudbroker.storage_policy.disable`. |
| BPYS-402 | Добавлена функция `cloudbroker.storage_policy.update`. |
| BPYS-407 | Добавлена функция `cloudbroker.storage_policy.add_pool`. |
| BPYS-410 | Добавлена функция `cloudbroker.storage_policy.enable`. |
| BPYS-532 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.security_group_ids`. |
| BPYS-533 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.security_group_mode`. |
| BPYS-534 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.security_group_mode`. |
| BPYS-531 | Функция `cloudapi.image.get`: добавлен атрибут `CloudapiImageGetResultModel.storage_policy_id`. |
| BPYS-529 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.security_group_mode`. |
| BPYS-528 | Функция `cloudapi.dpdknet.get`: добавлен атрибут `CloudapiDpdknetGetResultModel.security_group_mode`. |
| BPYS-528 | Функция `cloudapi.dpdknet.list`: добавлен атрибут `CloudapiDpdknetListResultModel.data.security_group_mode`. |
| BPYS-524 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.correlation_id`. |
| BPYS-411 | Добавлена функция `cloudbroker.storage_policy.get`. |
| BPYS-451 | Добавлена функция `cloudbroker.security_group.create`. |
| BPYS-412 | Добавлена функция `cloudbroker.storage_policy.list`. |
| BPYS-452 | Добавлена функция `cloudbroker.security_group.create_rule`. |
| BPYS-542 | Функция `cloudapi.disks.list_unattached`: добавлен параметр `storage_policy_id`. |
| BPYS-408 | Добавлена функция `cloudbroker.storage_policy.delete_pool`. |
| BPYS-453 | Добавлена функция `cloudbroker.security_group.delete`. |
| BPYS-455 | Добавлена функция `cloudbroker.security_group.get`. |
| BPYS-456 | Добавлена функция `cloudbroker.security_group.list`. |
| BPYS-457 | Добавлена функция `cloudbroker.security_group.update`. |
| BPYS-564 | Функция `cloudapi.image.list`: добавлен параметр `storage_policy_id`. |
| BPYS-562 | Функция `cloudapi.compute.redeploy`: добавлен параметр `os_version`. |
| BPYS-570 | Функция `cloudapi.storage_policy.get`: добавлен атрибут `CloudapiStoragePolicyGetResultModel.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudapi.storage_policy.list`: добавлен атрибут `CloudapiStoragePolicyListResultModel.data.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudbroker.storage_policy.add_pool`: добавлен атрибут `CloudbrokerStoragePolicyAddPoolResultModel.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudbroker.storage_policy.delete_pool`: добавлен атрибут `CloudbrokerStoragePolicyDeletePoolResultModel.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudbroker.storage_policy.get`: добавлен атрибут `CloudbrokerStoragePolicyGetResultModel.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudbroker.storage_policy.list`: добавлен атрибут `CloudbrokerStoragePolicyListResultModel.data.sep_pools.sep_name`. |
| BPYS-570 | Функция `cloudbroker.storage_policy.update`: добавлен атрибут `CloudbrokerStoragePolicyUpdateResultModel.sep_pools.sep_name`. |
| BPYS-550 | Добавлена функция `cloudbroker.node.get_ssh_identity`. |
| BPYS-566 | Добавлена функция `cloudbroker.compute.start_migration_in`. |
| BPYS-581 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.boot_loader_metaiso`. |
| BPYS-582 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.device_name`. |
| BPYS-580 | Функция `cloudapi.image.list`: добавлен атрибут `CloudapiImageListResultModel.data.storage_policy_id`. |
| BPYS-567 | Добавлена функция `cloudbroker.compute.stop_migration_in`. |
| BPYS-556 | Функция `cloudapi.compute.disk_add`: добавлен параметр `pci_slot_num_hex`. |
| BPYS-557 | Функция `cloudapi.compute.disk_add`: добавлен параметр `bus_num_hex`. |
| BPYS-559 | Функция `cloudapi.compute.disk_attach`: добавлен параметр `pci_slot_num_hex`. |
| BPYS-560 | Функция `cloudapi.compute.disk_attach`: добавлен параметр `bus_num_hex`. |
| BPYS-565 | Добавлена функция `cloudbroker.compute.migrate_storage_list`. |
| BPYS-553 | Функция `cloudapi.k8s.create`: тип параметра `lb_sysctl_params` изменен с `list[dict]` на `list[dict[str, str]]`. |
| BPYS-552 | Функция `cloudapi.lb.update_sysctl_params`: тип параметра `sysctl_params` изменен с `list[dict]` на `list[dict[str, str]]`. |
| BPYS-497 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.compute.net_attach`: добавлен атрибут `CloudapiComputeNetAttachResultModel.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.flipgroup.create`: добавлен атрибут `CloudapiFlipgroupCreateResultModel.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.flipgroup.list`: добавлен атрибут `CloudapiFlipgroupListResultModel.data.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.extnet.get`: добавлен атрибут `CloudapiExtnetGetResultModel.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.dhcp.config.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-497 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.gw.config.ext_net_prefix` в связи с переименованием из `ext_net_mask`. |
| BPYS-497 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfs.nat.config.net_prefix` в связи с переименованием из `net_mask`. |
| BPYS-587 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.account_id`. |
| BPYS-588 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.vm_id`. |
| BPYS-589 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.rg_id`. |
| BPYS-590 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.vins_id`. |
| BPYS-591 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.bservice_id`. |
| BPYS-592 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.k8s_id`. |
| BPYS-593 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.flip_group_id`. |
| BPYS-594 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.lb_id`. |
| BPYS-595 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.sep_id`. |
| BPYS-596 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.node_ids`. |
| BPYS-597 | Функция `cloudapi.audit.get`: добавлен атрибут `CloudapiAuditGetResultModel.apitask`. |
| BPYS-575 | Добавлена функция `cloudapi.compute.create_template`. |
| BPYS-195 | Добавлены функции `cloudapi.k8s.get_node_annotations`, `cloudapi.k8s.get_node_labels`, `cloudapi.k8s.get_node_taints`. |
| BPYS-189 | Добавлена функция `cloudapi.k8s.update_worker_nodes_meta_data`. |
| BPYS-579 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.bus_num` в связи с переименованием из `bus_number`. |
| BPYS-579 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.bus_num` в связи с переименованием из `bus_number`. |
| BPYS-579 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.bus_num` в связи с переименованием из `bus_number`. |
| BPYS-579 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.bus_num` в связи с переименованием из `bus_number`. |
| BPYS-578 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.disks.pci_slot_num` в связи с переименованием из `pci_slot`. |
| BPYS-578 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.interfaces.pci_slot_num` в связи с переименованием из `pci_slot`. |
| BPYS-578 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.interfaces.pci_slot_num` в связи с переименованием из `pci_slot`. |
| BPYS-578 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.pci_slot_num` в связи с переименованием из `pci_slot`. |
| BPYS-586 | Добавлена функция `cloudapi.audit.list`. |
| BPYS-601 | Добавлена функция `cloudbroker.audit.list`. |
| BPYS-607 | Функция `cloudapi.compute.clone`: добавлен параметр `storage_policy_id`. |
| BPYS-617 | Функция `cloudapi.compute.clone`: изменен тип возвращаемого функцией значения с `int` на `str`. |
| BPYS-621 | Функция `cloudbroker.storage_policy.update`: добавлен параметр `sep_pools`. |
| BPYS-603 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.vgpu_ids` в связи с переименованием из `vgpus`. |
| BPYS-127 | Функция `cloudapi.compute.get`: у атрибута `CloudapiComputeGetResultModel.vgpus` изменен тип с `list[dict[str, _typing.Any]]` на `list[VGPUAPIResultNM]`. |
| BPYS-604 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.migration_job_id` в связи с переименованием из `migration_job`. |
| BPYS-604 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.migration_job_id` в связи с переименованием из `migration_job`. |
| BPYS-609 | Функция `cloudapi.compute.clone`: добавлен параметр `sep_pool_name`. |
| BPYS-610 | Функция `cloudapi.compute.clone`: добавлен параметр `sep_id`. |
| BPYS-549 | Добавлена функция `cloudbroker.node.add_ssh_identity`. |
| BPYS-401 | Добавлена функция `cloudbroker.storage_policy.delete`. |
| BPYS-454 | Добавлена функция `cloudbroker.security_group.delete_rule`. |
| BPYS-154 | Добавлена функция `cloudbroker.user.create`. |
| BPYS-576 | Добавлена функция `cloudbroker.compute.start_migration_out`. |
| BPYS-577 | Добавлена функция `cloudbroker.compute.stop_migration_out`. |
| BPYS-613 | Добавлена функция `cloudbroker.compute.clone`. |
| BPYS-612 | Добавлена функция `cloudbroker.compute.clone_abort`. |
| BPYS-618 | Добавлена функция `cloudapi.compute.clone_abort`. |
| BPYS-614 | Добавлена функция `cloudbroker.disks.migrate`. |
| BPYS-615 | Добавлена функция `cloudbroker.disks.migrate_abort`. |
| BPYS-623 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.boot_image_id`. |
| BPYS-625 | Функция `cloudapi.compute.list`: добавлен атрибут `CloudapiComputeListResultModel.data.boot_image_id`. |
| BPYS-634 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.live_migration_job_id`. |
| BPYS-643 | Функции `cloudapi.bservice.get`, `cloudapi.compute.get`, `cloudapi.compute.list`, `cloudapi.k8s.get`: в перечисляемый тип `VMTechStatus` добавлено значение `MIGRATING_IN`. |
| BPYS-644 | Функции `cloudapi.bservice.get`, `cloudapi.compute.get`, `cloudapi.compute.list`, `cloudapi.k8s.get`: в перечисляемый тип `VMTechStatus` добавлено значение `MIGRATING_OUT`. |
| BPYS-215 | Добавлены функции `cloudbroker.user.get`, `cloudbroker.user.list`. |
| BPYS-399 | Добавлена функция `cloudapi.disks.change_disk_storage_policy`. |
| BPYS-616 | Добавлена функция `cloudbroker.disks.migrate_status`. |
| BPYS-660 | Функция `cloudapi.image.get`: добавлен атрибут `CloudapiImageGetResultModel.to_clean`. |
| BPYS-641 | Добавлена функция `cloudapi.rg.del_storage_policy`. |
| BPYS-640 | Добавлена функция `cloudapi.rg.add_storage_policy`. |
| BPYS-642 | Функция `cloudapi.compute.get`: добавлен атрибут `CloudapiComputeGetResultModel.os_users.ssh_public_key` в связи с переименованием из `pub_key`. |
| BPYS-642 | Функция `cloudbroker.compute.stop_migration_in`: добавлен параметр `os_users.ssh_public_key` в связи с переименованием из `pub_key`. |
| BPYS-629 | Добавлена функция `cloudbroker.node.update_description`. |
| BPYS-630 | Добавлена функция `cloudbroker.vnfdev.migrate_abort`. |
| BPYS-668 | Функция `cloudapi.bservice.create`: добавлен параметр `ssh_public_key` в связи с переименованием из `ssh_key`. |
| BPYS-668 | Функция `cloudapi.bservice.get`: добавлен атрибут `CloudapiBserviceGetResultModel.ssh_public_key` в связи с переименованием из `ssh_key`. |
| BPYS-668 | Функция `cloudapi.vins.get`: добавлен атрибут `CloudapiVinsGetResultModel.vnfdev.config.mgmt.ssh_public_key` в связи с переименованием из `ssh_key`. |
| BPYS-667 | Функция `cloudapi.bservice.create`: добавлен параметр `ssh_user_name` в связи с переименованием из `ssh_user`. |
| BPYS-667 | Функция `cloudapi.bservice.get`: добавлен атрибут `CloudapiBserviceGetResultModel.ssh_user_name` в связи с переименованием из `ssh_user`. |
| BPYS-667 | Функция `cloudapi.bservice.list`: добавлен атрибут `CloudapiBserviceListResultModel.data.ssh_user_name` в связи с переименованием из `ssh_user`. |
| BPYS-667 | Функция `cloudapi.bservice.list_delete`: добавлен атрибут `CloudapiBserviceListDeleteResultModel.data.ssh_user_name` в связи с переименованием из `ssh_user`. |
| BPYS-676 | Добавлена функция `system.info.version`. |
| BPYS-681 | Добавлена функция `cloudapi.bservice.snapshot_rollback`. |
| BPYS-680 | Добавлена функция `cloudapi.bservice.snapshot_delete`. |
| BPYS-679 | Добавлена функция `cloudapi.bservice.snapshot_create`. |
| BPYS-684 | Добавлена функция `cloudapi.compute.attach_pci_device`. |
| BPYS-682 | Добавлена функция `cloudapi.bservice.snapshot_list`. |
| BPYS-683 | Добавлена функция `cloudapi.compute.attach_gpu`. |
| BPYS-687 | Добавлена функция `cloudapi.compute.detach_gpu`. |
| BPYS-686 | Добавлена функция `cloudapi.compute.boot_disk_set`. |
| BPYS-677 | Добавлена функция `cloudapi.account.get_resource_consumption`. |
| BPYS-688 | Добавлена функция `cloudapi.compute.detach_pci_device`. |
| BPYS-689 | Добавлена функция `cloudapi.compute.disable`. |
| BPYS-690 | Добавлена функция `cloudapi.compute.disk_migrate`. |
| BPYS-694 | Добавлена функция `cloudapi.compute.disk_switch_to_replication`. |
| BPYS-695 | Добавлена функция `cloudapi.compute.enable`. |
| BPYS-697 | Добавлена функция `cloudapi.compute.move_to_rg`. |
| BPYS-698 | Добавлена функция `cloudapi.compute.restore`. |
| BPYS-699 | Добавлена функция `cloudapi.compute.change_mac`. |
| BPYS-658 | Добавлена проверка совместимости с API и соответствующий параметр `ignore_api_compatibility` в конструктор класса `Dynamix`. |
| BPYS-708 | Добавлена функция `cloudapi.k8s.worker_add`. |
| BPYS-692 | Добавлен тип исключения `dynamix_sdk.exceptions.RequestException`. В конструкторы классов `Dynamix`, `DECS3OAuth`, `BVSAuth` добавлен параметр `wrap_request_exceptions`, позволяющий заменить исключения библиотеки requests на новый тип исключения, который кроме оригинального исключения содержит название функции SDK и переданные в неё параметры. |
| BPYS-693 | В конструкторы классов `Dynamix`, `DECS3OAuth`, `BVSAuth` добавлен параметр `f_decorators`, позволяющий задать список декораторов, которые будут применяться к каждой вызываемой функции SDK. |
| BPYS-709 | Добавлена функция `cloudapi.pcidevice.list`. |
| BPYS-711 | Добавлена функция `cloudapi.rg.get_resource_consumption`. |
| BPYS-713 | Добавлена функция `cloudapi.sep.list_available_sep_and_pools`. |
| BPYS-722 | Добавлена функция `cloudapi.user.set_data`. |
| BPYS-716 | Добавлена функция `cloudapi.vgpu.list`. |
| BPYS-724 | Добавлена функция `cloudbroker.account.get`. |
| BPYS-726 | Добавлена функция `cloudbroker.account.add_user`. |
| BPYS-696 | Добавлена функция `cloudapi.compute.list_deleted`. |
| BPYS-712 | Добавлена функция `cloudapi.rg.list_deleted`. |
| BPYS-714 | Добавлена функция `cloudapi.user.brief`. |
| BPYS-725 | Добавлена функция `cloudbroker.account.list`. |
| BPYS-727 | Добавлена функция `cloudbroker.account.add_zone`. |
| BPYS-734 | Добавлена функция `cloudbroker.account.delete_accounts`. |
| BPYS-735 | Добавлена функция `cloudbroker.account.delete_user`. |
| BPYS-736 | Добавлена функция `cloudbroker.account.disable`. |
| BPYS-737 | Добавлена функция `cloudbroker.account.disable_accounts`. |
| BPYS-738 | Добавлена функция `cloudbroker.account.enable`. |
| BPYS-728 | Добавлена функция `cloudbroker.account.delete`. |
| BPYS-715 | Добавлена функция `cloudapi.user.get_resource_consumption`. |
| BPYS-739 | Добавлена функция `cloudbroker.account.enable_accounts`. |
| BPYS-741 | Добавлена функция `cloudbroker.account.get_resource_consumption`. |
| BPYS-745 | Добавлена функция `cloudbroker.account.list_deleted`. |
| BPYS-746 | Добавлена функция `cloudbroker.account.restore`. |
| BPYS-747 | Добавлена функция `cloudbroker.account.remove_zone`. |
## Удалено ## Удалено
### Функциональный интерфейс
| Идентификатор<br>задачи | Описание | | Идентификатор<br>задачи | Описание |
| --- | --- | | --- | --- |
| BPYS-322 | Функция `cloudapi.k8ci.list`: удален параметр `worker_node_driver`. |
| BPYS-323 | Функция `cloudapi.k8ci.list`: удален параметр `master_node_driver`. |
| BPYS-331 | Функция `cloudapi.kvmx86.create_blank`: удален параметр `driver`. |
| BPYS-329 | Функция `cloudapi.kvmx86.create`: удален параметр `driver`. |
| BPYS-326 | Функция `cloudapi.k8ci.list_deleted`: удален параметр `worker_node_driver`. |
| BPYS-327 | Функция `cloudapi.k8ci.list_deleted`: удален параметр `master_node_driver`. |
| BPYS-359 | Функция `cloudapi.account.get`: удален атрибут `CloudapiAccountGetResultModel.quotas.public_ip_count` в связи с переименованием в `ext_ip_count`. |
| BPYS-359 | Функция `cloudapi.account.update`: удален параметр `public_ip_count_quota` в связи с переименованием в `ext_ip_count_quota`. |
| BPYS-359 | Функция `cloudapi.rg.create`: удален параметр `public_ip_count_quota` в связи с переименованием в `ext_ip_count_quota`. |
| BPYS-359 | Функция `cloudapi.rg.get`: удален атрибут `CloudapiRgGetResultModel.quotas.public_ip_count` в связи с переименованием в `ext_ip_count`. |
| BPYS-359 | Функция `cloudapi.rg.list`: удален атрибут `CloudapiRgListResultModel.data.quotas.public_ip_count` в связи с переименованием в `ext_ip_count`. |
| BPYS-359 | Функция `cloudapi.rg.update`: удален параметр `public_ip_count_quota` в связи с переименованием в `ext_ip_count_quota`. |
| BPYS-359 | Функция `cloudbroker.account.create`: удален параметр `public_ip_count_quota` в связи с переименованием в `ext_ip_count_quota`. |
| BPYS-318 | Функция `cloudapi.image.create`: удален параметр `drivers`. |
| BPYS-372 | Функция `cloudapi.disks.create`: удален параметр `iops`. |
| BPYS-516 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.virtual_image_id`. |
| BPYS-517 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.virtual_image_name`. |
| BPYS-519 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.image_id`. |
| BPYS-520 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.virtual_image_id`. |
| BPYS-569 | Функция `cloudapi.storage_policy.get`: удален атрибут `CloudapiStoragePolicyGetResultModel.sep_pools.name`. |
| BPYS-569 | Функция `cloudapi.storage_policy.list`: удален атрибут `CloudapiStoragePolicyListResultModel.data.sep_pools.name`. |
| BPYS-569 | Функция `cloudbroker.storage_policy.add_pool`: удален атрибут `CloudbrokerStoragePolicyAddPoolResultModel.sep_pools.name`. |
| BPYS-569 | Функция `cloudbroker.storage_policy.delete_pool`: удален атрибут `CloudbrokerStoragePolicyDeletePoolResultModel.sep_pools.name`. |
| BPYS-569 | Функция `cloudbroker.storage_policy.get`: удален атрибут `CloudbrokerStoragePolicyGetResultModel.sep_pools.name`. |
| BPYS-569 | Функция `cloudbroker.storage_policy.list`: удален атрибут `CloudbrokerStoragePolicyListResultModel.data.sep_pools.name`. |
| BPYS-569 | Функция `cloudbroker.storage_policy.update`: удален атрибут `CloudbrokerStoragePolicyUpdateResultModel.sep_pools.name`. |
| BPYS-497 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.interfaces.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.interfaces.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.compute.net_attach`: удален атрибут `CloudapiComputeNetAttachResultModel.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.extnet.get`: удален атрибут `CloudapiExtnetGetResultModel.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.flipgroup.create`: удален атрибут `CloudapiFlipgroupCreateResultModel.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.flipgroup.list`: удален атрибут `CloudapiFlipgroupListResultModel.data.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfs.dhcp.config.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-497 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfs.gw.config.ext_net_mask` в связи с переименованием в `ext_net_prefix`. |
| BPYS-497 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfs.nat.config.net_mask` в связи с переименованием в `net_prefix`. |
| BPYS-579 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.disks.bus_number` в связи с переименованием в `bus_num`. |
| BPYS-579 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.interfaces.bus_number` в связи с переименованием в `bus_num`. |
| BPYS-579 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.interfaces.bus_number` в связи с переименованием в `bus_num`. |
| BPYS-579 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.bus_number` в связи с переименованием в `bus_num`. |
| BPYS-578 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.disks.pci_slot` в связи с переименованием в `pci_slot_num`. |
| BPYS-578 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.interfaces.pci_slot` в связи с переименованием в `pci_slot_num`. |
| BPYS-578 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.interfaces.pci_slot` в связи с переименованием в `pci_slot_num`. |
| BPYS-578 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfdev.interfaces.pci_slot` в связи с переименованием в `pci_slot_num`. |
| BPYS-603 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.vgpus` в связи с переименованием в `vgpu_ids`. |
| BPYS-604 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.migration_job` в связи с переименованием в `migration_job_id`. |
| BPYS-604 | Функция `cloudapi.compute.list`: удален атрибут `CloudapiComputeListResultModel.data.migration_job` в связи с переименованием в `migration_job_id`. |
| BPYS-651 | Удалена функция `cloudapi.user.get_audit`. |
| BPYS-642 | Функция `cloudapi.compute.get`: удален атрибут `CloudapiComputeGetResultModel.os_users.pub_key` в связи с переименованием в `ssh_public_key`. |
| BPYS-642 | Функция `cloudbroker.compute.stop_migration_in`: удален параметр `os_users.pub_key` в связи с переименованием в `ssh_public_key`. |
| BPYS-668 | Функция `cloudapi.bservice.create`: удален параметр `ssh_key` в связи с переименованием в `ssh_public_key`. |
| BPYS-668 | Функция `cloudapi.bservice.get`: удален атрибут `CloudapiBserviceGetResultModel.ssh_key` в связи с переименованием в `ssh_public_key`. |
| BPYS-668 | Функция `cloudapi.vins.get`: удален атрибут `CloudapiVinsGetResultModel.vnfdev.config.mgmt.ssh_key` в связи с переименованием в `ssh_public_key`. |
| BPYS-667 | Функция `cloudapi.bservice.create`: удален параметр `ssh_user` в связи с переименованием в `ssh_user_name`. |
| BPYS-667 | Функция `cloudapi.bservice.get`: удален атрибут `CloudapiBserviceGetResultModel.ssh_user` в связи с переименованием в `ssh_user_name`. |
| BPYS-667 | Функция `cloudapi.bservice.list`: удален атрибут `CloudapiBserviceListResultModel.data.ssh_user` в связи с переименованием в `ssh_user_name`. |
| BPYS-667 | Функция `cloudapi.bservice.list_delete`: удален атрибут `CloudapiBserviceListDeleteResultModel.data.ssh_user` в связи с переименованием в `ssh_user_name`. |
| BPYS-723 | Удалена функция `cloudapi.compute.disk_resize`: в связи с тем, что аналогичный функционал доступен через функцию `cloudapi.disks.resize2`. |
## Исправлено ## Исправлено
### Функциональный интерфейс
| Идентификатор<br>задачи | Описание | | Идентификатор<br>задачи | Описание |
| --- | --- | | --- | --- |
| BPYS-358 | Функция `cloudapi.k8s.get`: в некоторых случаях вызов функции завершался ошибкой валидации полей `k8sGroups.masters.detailedInfo.0.externalip` и `k8sGroups.workers.0.detailedInfo.0.externalip`. |
| BPYS-357 | Функция `cloudapi.k8s.list`: был неверно аннотирован тип элементов списка `data.acl`. |
| BPYS-357 | Функция `cloudapi.k8s.list_deleted`: был неверно аннотирован тип элементов списка `data.acl`. |
| BPYS-551 | Функция `cloudapi.lb.create`: при передаче корректного значения в параметр `sysctl_params` выполнение функции завершалось ошибкой валидации типа параметра. |
| BPYS-602 | Функция `cloudapi.compute.list`: выполнение функции завершалось ошибкой валидации при наличии элементов в списке `CloudapiComputeListResultModel.data.vgpus`. |
| BPYS-649 | Функция `cloudapi.account.update`: отсутствовало значение по умолчанию у параметра `send_access_emails`. |
| BPYS-654 | Функция `cloudapi.image.get`: отсутствовало значение `unknown` в перечисляемом типе `ImageType` у атрибута `CloudapiImageGetResultModel.type`, что приводило к ошибке валидации. |
| BPYS-654 | Функция `cloudapi.image.list`: отсутствовало значение `unknown` в перечисляемом типе `ImageType` у параметра `type` и атрибута `CloudapiImageListResultModel.data.type`, что приводило к ошибке валидации. |
| BPYS-654 | Функция `cloudapi.image.get`: было лишнее значение `other` в перечисляемом типе `ImageType` у атрибута `CloudapiImageGetResultModel.type`, что приводило к ошибке валидации. |
| BPYS-654 | Функция `cloudapi.image.list`: было лишнее значение `other` в перечисляемом типе `ImageType` у параметра `type` и атрибута `CloudapiImageListResultModel.data.type`, что приводило к ошибке валидации. |
| BPYS-670 | Функция `cloudapi.bservice.group_get`: вызов функции завершался ошибкой валидации поля `computes.0.chipset`. | | BPYS-670 | Функция `cloudapi.bservice.group_get`: вызов функции завершался ошибкой валидации поля `computes.0.chipset`. |

@ -15,6 +15,7 @@
- [Ошибки и исключения (exceptions)](#ошибки-и-исключения-exceptions) - [Ошибки и исключения (exceptions)](#ошибки-и-исключения-exceptions)
- [Ошибки валидации данных](#ошибки-валидации-данных) - [Ошибки валидации данных](#ошибки-валидации-данных)
- [Ошибки HTTP](#ошибки-http) - [Ошибки HTTP](#ошибки-http)
- [Ошибка несовместимости c API](#ошибка-несовместимости-с-api)
- [Доступный функционал](#доступный-функционал) - [Доступный функционал](#доступный-функционал)
- [Способы авторизации](#способы-авторизации) - [Способы авторизации](#способы-авторизации)
- [Функции API](#функции-api) - [Функции API](#функции-api)
@ -34,6 +35,7 @@
| Версия платформы | Версия SDK | | Версия платформы | Версия SDK |
| --- | --- | | --- | --- |
| 4.4.0 | 1.3.x |
| 4.4.0 build 963 | 1.2.x | | 4.4.0 build 963 | 1.2.x |
| 4.3.0 | 1.1.x | | 4.3.0 | 1.1.x |
| 4.2.0 | 1.0.x | | 4.2.0 | 1.0.x |
@ -119,6 +121,24 @@ dx = Dynamix(
</details> </details>
<details><summary>Задание декораторов для всех вызываемых функций</summary>
```python
from dynamix_sdk import Dynamix
Dynamix(
...,
f_decorators=[decorator_1, decorator_2],
)
```
Декораторы будут применяться к вызываемым функциям SDK в обратном порядке, то есть сначала будет применяться декоратор <code>decorator_2</code>, а потом <code>decorator_1</code>.
**Важно:** декораторы должны соответствовать аннотации параметра, то есть оставлять без изменений параметры и тип возвращаемого значения функции, иначе применение декораторов приведёт к некорректной работе SDK.
</details>
<details><summary>Настройка повторных попыток при 503</summary> <details><summary>Настройка повторных попыток при 503</summary>
По умолчанию SDK при получении кода ответа 503 производит 10 повторных попыток с интервалом 5 секунд. Данное поведение можно скорректировать: По умолчанию SDK при получении кода ответа 503 производит 10 повторных попыток с интервалом 5 секунд. Данное поведение можно скорректировать:
@ -186,6 +206,24 @@ BVSAuth(
</details> </details>
<details><summary>Игнорирование проверки совместимости с API</summary>
**Важно:** игнорирование проверки совместимости с API может вызвать непредвиденные ошибки в работе SDK, поэтому использование данного функционала допустимо только принимая на себя всю ответственность за возможные последствия.
При игнорирование выводится только сообщение с предупреждением о несовместимости.
```python
from dynamix_sdk import Dynamix
Dynamix(
...,
ignore_api_compatibility=True,
)
```
</details>
### Функциональный интерфейс ### Функциональный интерфейс
Функциональный интерфейс предоставляет функции, соответствующие функциям API платформы. Функциональный интерфейс предоставляет функции, соответствующие функциям API платформы.
@ -477,6 +515,24 @@ except RequestException as e:
Подробную информацию об исключениях библиотеки **Requests** можно получить в [соответствующем разделе официальной документации Requests](https://requests.readthedocs.io/en/latest/user/quickstart/#errors-and-exceptions). Подробную информацию об исключениях библиотеки **Requests** можно получить в [соответствующем разделе официальной документации Requests](https://requests.readthedocs.io/en/latest/user/quickstart/#errors-and-exceptions).
<details><summary>Использование исключения SDK</summary>
Для возможности получать дополнительную информацию о функциях SDK при ошибках HTTP-запросов, в SDK есть возможность оборачивать все исключения <code>requests.exceptions.RequestException</code> в исключение <code>dynamix_sdk.exceptions.RequestException</code>:
```python
class RequestException(Exception):
orig_exception: requests.exceptions.RequestException
func_name: str
func_kwargs: None | dict = None
```
Чтобы включить использование исключения <code>dynamix_sdk.exceptions.RequestException</code>, необходимо передать в конструкторы классов <code>Dynamix</code>, <code>DECS3OAuth</code>, <code>BVSAuth</code> параметр <code>wrap_request_exceptions=True</code>
</details>
#### Ошибка несовместимости с API
SDK производит проверку совместимости с API.
При несовместимости будет вызвано исключение `exceptions.IncompatibleAPIError`.
## Доступный функционал ## Доступный функционал
### Способы авторизации ### Способы авторизации
@ -499,6 +555,7 @@ except RequestException as e:
- /cloudapi/account/disable - /cloudapi/account/disable
- /cloudapi/account/enable - /cloudapi/account/enable
- /cloudapi/account/get - /cloudapi/account/get
- /cloudapi/account/getResourceConsumption
- /cloudapi/account/list - /cloudapi/account/list
- /cloudapi/account/listDeleted - /cloudapi/account/listDeleted
- /cloudapi/account/restore - /cloudapi/account/restore
@ -510,6 +567,7 @@ except RequestException as e:
<details><summary>audit</summary> <details><summary>audit</summary>
- /cloudapi/audit/get - /cloudapi/audit/get
- /cloudapi/audit/list
</details> </details>
@ -534,7 +592,12 @@ except RequestException as e:
- /cloudapi/bservice/groupUpdateVins - /cloudapi/bservice/groupUpdateVins
- /cloudapi/bservice/list - /cloudapi/bservice/list
- /cloudapi/bservice/listDeleted - /cloudapi/bservice/listDeleted
- /cloudapi/bservice/migrateToZone
- /cloudapi/bservice/restore - /cloudapi/bservice/restore
- /cloudapi/bservice/snapshotCreate
- /cloudapi/bservice/snapshotDelete
- /cloudapi/bservice/snapshotList
- /cloudapi/bservice/snapshotRollback
- /cloudapi/bservice/start - /cloudapi/bservice/start
- /cloudapi/bservice/stop - /cloudapi/bservice/stop
@ -542,6 +605,7 @@ except RequestException as e:
<details><summary>compute</summary> <details><summary>compute</summary>
- /cloudapi/compute/abort_shared_snapshot_merge
- /cloudapi/compute/affinityLabelRemove - /cloudapi/compute/affinityLabelRemove
- /cloudapi/compute/affinityLabelSet - /cloudapi/compute/affinityLabelSet
- /cloudapi/compute/affinityRelations - /cloudapi/compute/affinityRelations
@ -551,19 +615,41 @@ except RequestException as e:
- /cloudapi/compute/antiAffinityRuleAdd - /cloudapi/compute/antiAffinityRuleAdd
- /cloudapi/compute/antiAffinityRuleRemove - /cloudapi/compute/antiAffinityRuleRemove
- /cloudapi/compute/antiAffinityRulesClear - /cloudapi/compute/antiAffinityRulesClear
- /cloudapi/compute/attachGpu
- /cloudapi/compute/attachPciDevice
- /cloudapi/compute/bootDiskSet
- /cloudapi/compute/cdEject - /cloudapi/compute/cdEject
- /cloudapi/compute/cdInsert - /cloudapi/compute/cdInsert
- /cloudapi/compute/changeMac
- /cloudapi/compute/change_mtu
- /cloudapi/compute/change_security_groups
- /cloudapi/compute/changeIp - /cloudapi/compute/changeIp
- /cloudapi/compute/changeLinkState
- /cloudapi/compute/clone - /cloudapi/compute/clone
- /cloudapi/compute/clone_abort
- /cloudapi/compute/createTemplate
- /cloudapi/compute/delete - /cloudapi/compute/delete
- /cloudapi/compute/deleteCustomFields - /cloudapi/compute/deleteCustomFields
- /cloudapi/compute/detachGpu
- /cloudapi/compute/detachPciDevice
- /cloudapi/compute/disable
- /cloudapi/compute/diskAdd - /cloudapi/compute/diskAdd
- /cloudapi/compute/diskAttach - /cloudapi/compute/diskAttach
- /cloudapi/compute/diskDel - /cloudapi/compute/diskDel
- /cloudapi/compute/diskDetach - /cloudapi/compute/diskDetach
- /cloudapi/compute/diskResize - /cloudapi/compute/diskMigrate
- /cloudapi/compute/diskSwitchToReplication
- /cloudapi/compute/enable
- /cloudapi/compute/get - /cloudapi/compute/get
- /cloudapi/compute/getConsoleUrl
- /cloudapi/compute/guest_agent_disable
- /cloudapi/compute/guest_agent_enable
- /cloudapi/compute/guest_agent_execute
- /cloudapi/compute/guest_agent_feature_update
- /cloudapi/compute/list - /cloudapi/compute/list
- /cloudapi/compute/listDeleted
- /cloudapi/compute/migrateToZone
- /cloudapi/compute/moveToRg
- /cloudapi/compute/netAttach - /cloudapi/compute/netAttach
- /cloudapi/compute/netDetach - /cloudapi/compute/netDetach
- /cloudapi/compute/pause - /cloudapi/compute/pause
@ -571,9 +657,12 @@ except RequestException as e:
- /cloudapi/compute/pfwDel - /cloudapi/compute/pfwDel
- /cloudapi/compute/pfwList - /cloudapi/compute/pfwList
- /cloudapi/compute/pinToStack - /cloudapi/compute/pinToStack
- /cloudapi/compute/powerCycle
- /cloudapi/compute/reboot - /cloudapi/compute/reboot
- /cloudapi/compute/redeploy - /cloudapi/compute/redeploy
- /cloudapi/compute/reset
- /cloudapi/compute/resize - /cloudapi/compute/resize
- /cloudapi/compute/restore
- /cloudapi/compute/resume - /cloudapi/compute/resume
- /cloudapi/compute/setCustomFields - /cloudapi/compute/setCustomFields
- /cloudapi/compute/snapshotCreate - /cloudapi/compute/snapshotCreate
@ -594,6 +683,7 @@ except RequestException as e:
<details><summary>disks</summary> <details><summary>disks</summary>
- /cloudapi/disks/change_disk_storage_policy
- /cloudapi/disks/create - /cloudapi/disks/create
- /cloudapi/disks/delete - /cloudapi/disks/delete
- /cloudapi/disks/deleteDisks - /cloudapi/disks/deleteDisks
@ -642,6 +732,7 @@ except RequestException as e:
<details><summary>image</summary> <details><summary>image</summary>
- /cloudapi/image/change_storage_policy
- /cloudapi/image/create - /cloudapi/image/create
- /cloudapi/image/createVirtual - /cloudapi/image/createVirtual
- /cloudapi/image/delete - /cloudapi/image/delete
@ -664,11 +755,24 @@ except RequestException as e:
- /cloudapi/k8s/create - /cloudapi/k8s/create
- /cloudapi/k8s/delete - /cloudapi/k8s/delete
- /cloudapi/k8s/deleteMasterFromGroup
- /cloudapi/k8s/deleteWorkerFromGroup
- /cloudapi/k8s/disable
- /cloudapi/k8s/enable
- /cloudapi/k8s/get - /cloudapi/k8s/get
- /cloudapi/k8s/getConfig - /cloudapi/k8s/getConfig
- /cloudapi/k8s/getNodeAnnotations
- /cloudapi/k8s/getNodeLabels
- /cloudapi/k8s/getNodeTaints
- /cloudapi/k8s/list - /cloudapi/k8s/list
- /cloudapi/k8s/listDeleted - /cloudapi/k8s/listDeleted
- /cloudapi/k8s/migrateToZone
- /cloudapi/k8s/restore - /cloudapi/k8s/restore
- /cloudapi/k8s/start
- /cloudapi/k8s/stop
- /cloudapi/k8s/update
- /cloudapi/k8s/updateWorkerNodesMetaData
- /cloudapi/k8s/workerAdd
- /cloudapi/k8s/workerReset - /cloudapi/k8s/workerReset
- /cloudapi/k8s/workerRestart - /cloudapi/k8s/workerRestart
- /cloudapi/k8s/workersGroupAdd - /cloudapi/k8s/workersGroupAdd
@ -692,6 +796,7 @@ except RequestException as e:
- /cloudapi/lb/backendServerDelete - /cloudapi/lb/backendServerDelete
- /cloudapi/lb/backendServerUpdate - /cloudapi/lb/backendServerUpdate
- /cloudapi/lb/backendUpdate - /cloudapi/lb/backendUpdate
- /cloudapi/lb/configReset
- /cloudapi/lb/create - /cloudapi/lb/create
- /cloudapi/lb/delete - /cloudapi/lb/delete
- /cloudapi/lb/disable - /cloudapi/lb/disable
@ -705,6 +810,13 @@ except RequestException as e:
- /cloudapi/lb/list - /cloudapi/lb/list
- /cloudapi/lb/listDeleted - /cloudapi/lb/listDeleted
- /cloudapi/lb/makeHighlyAvailable - /cloudapi/lb/makeHighlyAvailable
- /cloudapi/lb/migrateToZone
- /cloudapi/lb/restart
- /cloudapi/lb/restore
- /cloudapi/lb/start
- /cloudapi/lb/stop
- /cloudapi/lb/update
- /cloudapi/lb/updateSysctlParams
</details> </details>
@ -715,16 +827,26 @@ except RequestException as e:
</details> </details>
<details><summary>pcidevice</summary>
- /cloudapi/pcidevice/list
</details>
<details><summary>rg</summary> <details><summary>rg</summary>
- /cloudapi/rg/accessGrant - /cloudapi/rg/accessGrant
- /cloudapi/rg/accessRevoke - /cloudapi/rg/accessRevoke
- /cloudapi/rg/add_storage_policy
- /cloudapi/rg/create - /cloudapi/rg/create
- /cloudapi/rg/del_storage_policy
- /cloudapi/rg/delete - /cloudapi/rg/delete
- /cloudapi/rg/disable - /cloudapi/rg/disable
- /cloudapi/rg/enable - /cloudapi/rg/enable
- /cloudapi/rg/get - /cloudapi/rg/get
- /cloudapi/rg/getResourceConsumption
- /cloudapi/rg/list - /cloudapi/rg/list
- /cloudapi/rg/listDeleted
- /cloudapi/rg/removeDefNet - /cloudapi/rg/removeDefNet
- /cloudapi/rg/restore - /cloudapi/rg/restore
- /cloudapi/rg/setDefNet - /cloudapi/rg/setDefNet
@ -732,6 +854,24 @@ except RequestException as e:
</details> </details>
<details><summary>security_group</summary>
- /cloudapi/security_group/get
- /cloudapi/security_group/create
- /cloudapi/security_group/create_rule
- /cloudapi/security_group/delete
- /cloudapi/security_group/delete_rule
- /cloudapi/security_group/list
- /cloudapi/security_group/update
</details>
<details><summary>sep</summary>
- /cloudapi/sep/listAvailableSepAndPools
</details>
<details><summary>stack</summary> <details><summary>stack</summary>
- /cloudapi/stack/get - /cloudapi/stack/get
@ -739,6 +879,13 @@ except RequestException as e:
</details> </details>
<details><summary>storage_policy</summary>
- /cloudapi/storage_policy/get
- /cloudapi/storage_policy/list
</details>
<details><summary>tasks</summary> <details><summary>tasks</summary>
- /cloudapi/tasks/get - /cloudapi/tasks/get
@ -746,11 +893,33 @@ except RequestException as e:
</details> </details>
<details><summary>trunk</summary>
- /cloudapi/trunk/get
- /cloudapi/trunk/list
</details>
<details><summary>user</summary> <details><summary>user</summary>
- /cloudapi/user/apiList - /cloudapi/user/apiList
- /cloudapi/user/brief
- /cloudapi/user/get - /cloudapi/user/get
- /cloudapi/user/getAudit - /cloudapi/user/getResourceConsumption
- /cloudapi/user/setData
</details>
<details><summary>vfpool</summary>
- /cloudapi/vfpool/get
- /cloudapi/vfpool/list
</details>
<details><summary>vgpu</summary>
- /cloudapi/vgpu/list
</details> </details>
@ -760,13 +929,21 @@ except RequestException as e:
- /cloudapi/vins/createInRG - /cloudapi/vins/createInRG
- /cloudapi/vins/delete - /cloudapi/vins/delete
- /cloudapi/vins/disable - /cloudapi/vins/disable
- /cloudapi/vins/dnsApply
- /cloudapi/vins/enable - /cloudapi/vins/enable
- /cloudapi/vins/extNetConnect
- /cloudapi/vins/extNetDisconnect
- /cloudapi/vins/extNetList
- /cloudapi/vins/get - /cloudapi/vins/get
- /cloudapi/vins/ipList - /cloudapi/vins/ipList
- /cloudapi/vins/ipRelease - /cloudapi/vins/ipRelease
- /cloudapi/vins/ipReserve - /cloudapi/vins/ipReserve
- /cloudapi/vins/list - /cloudapi/vins/list
- /cloudapi/vins/listDeleted - /cloudapi/vins/listDeleted
- /cloudapi/vins/migrateToZone
- /cloudapi/vins/natRuleAdd
- /cloudapi/vins/natRuleDel
- /cloudapi/vins/natRuleList
- /cloudapi/vins/restore - /cloudapi/vins/restore
- /cloudapi/vins/staticRouteAdd - /cloudapi/vins/staticRouteAdd
- /cloudapi/vins/staticRouteDel - /cloudapi/vins/staticRouteDel
@ -776,16 +953,142 @@ except RequestException as e:
</details> </details>
<details><summary>zone</summary>
- /cloudapi/zone/get
- /cloudapi/zone/list
</details>
#### Cloudbroker #### Cloudbroker
<details><summary>account</summary> <details><summary>account</summary>
- /cloudbroker/account/add_storage_policy
- /cloudbroker/account/addUser
- /cloudbroker/account/addZone
- /cloudbroker/account/create - /cloudbroker/account/create
- /cloudbroker/account/del_storage_policy
- /cloudbroker/account/delete
- /cloudbroker/account/deleteAccounts
- /cloudbroker/account/deleteUser
- /cloudbroker/account/disable
- /cloudbroker/account/disableAccounts
- /cloudbroker/account/enable
- /cloudbroker/account/enableAccounts
- /cloudbroker/account/get
- /cloudbroker/account/getResourceConsumption
- /cloudbroker/account/list
- /cloudbroker/account/listDeleted
- /cloudbroker/account/removeZone
- /cloudbroker/account/restore
</details>
<details><summary>audit</summary>
- /cloudbroker/audit/list
</details>
<details><summary>compute</summary>
- /cloudbroker/compute/change_security_groups
- /cloudbroker/compute/clone
- /cloudbroker/compute/clone_abort
- /cloudbroker/compute/migrate_storage_list
- /cloudbroker/compute/start_migration_in
- /cloudbroker/compute/start_migration_out
- /cloudbroker/compute/stop_migration_in
- /cloudbroker/compute/stop_migration_out
</details>
<details><summary>disks</summary>
- /cloudbroker/disks/migrate
- /cloudbroker/disks/migrate_abort
- /cloudbroker/disks/migrate_status
</details>
<details><summary>image</summary>
- /cloudbroker/image/change_storage_policy
</details>
<details><summary>node</summary>
- cloudbroker/node/add_ssh_identity
- cloudbroker/node/get_ssh_identity
- cloudbroker/node/update_description
</details>
<details><summary>rg</summary>
- /cloudbroker/rg/add_storage_policy
- /cloudbroker/rg/del_storage_policy
</details>
<details><summary>security_group</summary>
- /cloudbroker/security_group/create
- /cloudbroker/security_group/create_rule
- /cloudbroker/security_group/delete
- /cloudbroker/security_group/delete_rule
- /cloudbroker/security_group/get
- /cloudbroker/security_group/list
- /cloudbroker/security_group/update
</details>
<details><summary>storage_policy</summary>
- /cloudbroker/storage_policy/add_pool
- /cloudbroker/storage_policy/create
- /cloudbroker/storage_policy/delete
- /cloudbroker/storage_policy/delete_pool
- /cloudbroker/storage_policy/disable
- /cloudbroker/storage_policy/enable
- /cloudbroker/storage_policy/get
- /cloudbroker/storage_policy/list
- /cloudbroker/storage_policy/update
</details>
<details><summary>user</summary>
- /cloudbroker/user/block
- /cloudbroker/user/create
- /cloudbroker/user/get
- /cloudbroker/user/list
- /cloudbroker/user/unblock
</details>
<details><summary>vins</summary>
- /cloudbroker/vins/update
</details>
<details><summary>vnfdev</summary>
- /cloudbroker/vnfdev/migrate_abort
</details> </details>
#### System #### System
<details><summary>info</summary>
- /system/info/version
</details>
<details><summary>usermanager</summary> <details><summary>usermanager</summary>
- /system/usermanager/whoami - /system/usermanager/whoami

@ -5,7 +5,7 @@ authors = [
{name = "Vladislav Nesterov"}, {name = "Vladislav Nesterov"},
{name = "Stanislav Karimov"}, {name = "Stanislav Karimov"},
] ]
version = "1.2.2" version = "1.3.0"
readme = "README.md" readme = "README.md"
@ -13,7 +13,7 @@ requires-python = ">=3.12"
dependencies = [ dependencies = [
"requests>=2.32.3", "requests>=2.32.3",
"pydantic>=2.10.5", "pydantic==2.10.5",
"pyyaml>=6.0.2", "pyyaml>=6.0.2",
] ]

@ -1,3 +1,5 @@
from enum import Enum
from dynamix_sdk.utils import ( from dynamix_sdk.utils import (
AutoNameEnum as _AutoNameEnum, AutoNameEnum as _AutoNameEnum,
enum_auto as _enum_auto, enum_auto as _enum_auto,
@ -169,6 +171,8 @@ class VMTechStatus(str, _AutoNameEnum):
DOWN = _enum_auto() DOWN = _enum_auto()
MERGE = _enum_auto() MERGE = _enum_auto()
MIGRATING = _enum_auto() MIGRATING = _enum_auto()
MIGRATING_IN = _enum_auto()
MIGRATING_OUT = _enum_auto()
PAUSED = _enum_auto() PAUSED = _enum_auto()
PAUSING = _enum_auto() PAUSING = _enum_auto()
ROLLBACK = _enum_auto() ROLLBACK = _enum_auto()
@ -516,3 +520,101 @@ class DPDKNetStatus(str, _AutoNameEnum):
DESTROYED = _enum_auto() DESTROYED = _enum_auto()
DISABLED = _enum_auto() DISABLED = _enum_auto()
ENABLED = _enum_auto() ENABLED = _enum_auto()
class VFPoolStatus(str, _AutoNameEnum):
CREATED = _enum_auto()
DESTROYED = _enum_auto()
DISABLED = _enum_auto()
ENABLED = _enum_auto()
class LinkState(str, _AutoNameEnum):
on = _enum_auto()
off = _enum_auto()
class ZoneStatus(str, _AutoNameEnum):
CREATED = _enum_auto()
DESTROYED = _enum_auto()
class TrafficDirection(str, _AutoNameEnum):
INBOUND = 'inbound'
OUTBOUND = 'outbound'
class SGRuleEthertype(str, _AutoNameEnum):
IPV4 = 'IPv4'
IPV6 = 'IPv6'
class SGRuleProtocol(str, _AutoNameEnum):
ICMP = 'icmp'
TCP = 'tcp'
UDP = 'udp'
class TrunkStatus(str, _AutoNameEnum):
CREATED = _enum_auto()
DESTROYED = _enum_auto()
DESTROYING = _enum_auto()
DISABLED = _enum_auto()
ENABLED = _enum_auto()
ENABLING = _enum_auto()
MODELED = _enum_auto()
class StoragePolicyStatus(str, _AutoNameEnum):
DISABLED = _enum_auto()
ENABLED = _enum_auto()
class JobStatus(str, _AutoNameEnum):
ABORTED = _enum_auto()
CLEANUPED = _enum_auto()
ERROR = _enum_auto()
OK = _enum_auto()
PROCESSING = _enum_auto()
SCHEDULED = _enum_auto()
class PGPUProcessorType(str, _AutoNameEnum):
NVIDIA = _enum_auto()
DUMMY = _enum_auto()
class PGPUMode(str, _AutoNameEnum):
PASSTHROUGH = _enum_auto()
class VGPUStatus(str, _AutoNameEnum):
ALLOCATED = _enum_auto()
ALLOCATING = _enum_auto()
CLAIMED = _enum_auto()
CLAIMING = _enum_auto()
CREATED = _enum_auto()
DEALLOCATED = _enum_auto()
DEALLOCATING = _enum_auto()
DESTROYED = _enum_auto()
ERROR = _enum_auto()
class NetMapSourceType(str, _AutoNameEnum):
NETWORK = 'network'
BRIDGE = 'bridge'
class DiskMigrateJobType(int, Enum):
PULL = 1
COPY = 2
COMMIT = 3
class PCIDeviceStatus(str, _AutoNameEnum):
CLAIMED = _enum_auto()
CLAIMING = _enum_auto()
DESTROYED = _enum_auto()
DISABLED = _enum_auto()
ENABLED = _enum_auto()
ERROR = _enum_auto()

@ -5,6 +5,7 @@ from . import enums as _enums
class DiskAPIParamsNM(_base.BaseAPIParamsNestedModel): class DiskAPIParamsNM(_base.BaseAPIParamsNestedModel):
name: str name: str
size_gb: int size_gb: int
storage_policy_id: int
description: None | str = None description: None | str = None
image_id: None | int = None image_id: None | int = None
@ -13,9 +14,12 @@ class DiskAPIParamsNM(_base.BaseAPIParamsNestedModel):
class InterfaceAPIParamsNM(_base.BaseAPIParamsNestedModel): class InterfaceAPIParamsNM(_base.BaseAPIParamsNestedModel):
enabled: bool = True
net_id: int net_id: int
net_type: _enums.NetType net_type: _enums.NetType
sdn_logical_port_id: str sdn_logical_port_id: str
security_group_ids: None | list[int] = None
security_group_mode: bool = False
ip_addr: None | str = None ip_addr: None | str = None
mac: None | str = None mac: None | str = None
@ -26,3 +30,26 @@ class RouteAPIParamsNM(_base.BaseAPIParamsNestedModel):
dst_net_ip: str dst_net_ip: str
dst_net_mask: str dst_net_mask: str
gateway: str gateway: str
class StoragePolicyQuotasAPIParamsNM(_base.BaseAPIParamsNestedModel):
id: int
storage_size_gb: int
class SEPPoolsAPIParamsNM(_base.BaseAPIParamsNestedModel):
pool_names: list[str]
sep_id: int
class OSUserAPIParamsNM(_base.BaseAPIParamsNestedModel):
guid: str
login: str
password: str
ssh_public_key: str
class NetMapConfigAPIParamsNM(_base.BaseAPIParamsNestedModel):
target_dev: str
source_type: _enums.NetMapSourceType
source_value: str

@ -6,7 +6,7 @@ from . import enums as _enums
class AccessAPIResultNM(_base.BaseAPIResultNestedModel): class AccessAPIResultNM(_base.BaseAPIResultNestedModel):
explicit: bool | str # BDX-8471 explicit: bool
guid: str guid: str
access_type: _enums.AccessType access_type: _enums.AccessType
status: str status: str
@ -50,7 +50,7 @@ class LibvirtSettingsAPIResultNM(_base.BaseAPIResultNestedModel):
class InterfaceForComputeListAPIResultNM(_base.BaseAPIResultNestedModel): class InterfaceForComputeListAPIResultNM(_base.BaseAPIResultNestedModel):
bus_number: int bus_num: int
conn_id: int conn_id: int
conn_type: str conn_type: str
default_gw: str default_gw: str
@ -64,11 +64,13 @@ class InterfaceForComputeListAPIResultNM(_base.BaseAPIResultNestedModel):
mtu: int mtu: int
name: str name: str
net_id: int net_id: int
net_mask: int net_prefix: int
net_type: _enums.NetType net_type: _enums.NetType
node_id: int node_id: int
pci_slot: int pci_slot_num: int
sdn_logical_port_id: str sdn_logical_port_id: str
security_group_ids: list[int]
security_group_mode: bool
target: str target: str
trunk_vlan_ids: str | None = None trunk_vlan_ids: str | None = None
type: str type: str
@ -76,10 +78,11 @@ class InterfaceForComputeListAPIResultNM(_base.BaseAPIResultNestedModel):
class InterfaceForComputeGetAPIResultNM(_base.BaseAPIResultNestedModel): class InterfaceForComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
bus_number: int bus_num: int
conn_id: int conn_id: int
conn_type: str conn_type: str
default_gw: str default_gw: str
security_group_mode: bool
enabled: bool enabled: bool
flip_group_id: int flip_group_id: int
guid: str guid: str
@ -90,12 +93,13 @@ class InterfaceForComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
mtu: int mtu: int
name: str name: str
net_id: int net_id: int
net_mask: int net_prefix: int
net_type: _enums.NetType net_type: _enums.NetType
node_id: int node_id: int
pci_slot: int pci_slot_num: int
sdn_logical_port_id: str sdn_logical_port_id: str
qos: QOSAPIResultNM qos: QOSAPIResultNM
security_group_ids: list[int]
target: str target: str
trunk_vlan_ids: str | None = None trunk_vlan_ids: str | None = None
type: str type: str
@ -103,7 +107,7 @@ class InterfaceForComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
class VNFDevInterfaceAPIResultNM(_base.BaseAPIResultNestedModel): class VNFDevInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
bus_number: int bus_num: int
conn_id: int conn_id: int
conn_type: str conn_type: str
default_gw: str default_gw: str
@ -117,12 +121,14 @@ class VNFDevInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
mtu: int mtu: int
name: str name: str
net_id: int net_id: int
net_mask: int net_prefix: int
net_type: _EmptyStr | _enums.NetType net_type: _EmptyStr | _enums.NetType
node_id: int node_id: int
pci_slot: int pci_slot_num: int
qos: QOSAPIResultNM qos: QOSAPIResultNM
sdn_logical_port_id: str sdn_logical_port_id: str
security_group_ids: list[int]
security_group_mode: bool
target: str target: str
type: str type: str
vnf_ids: list[int] vnf_ids: list[int]
@ -190,13 +196,14 @@ class DiskForCAComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int account_id: int
acl: dict acl: dict
boot_partition: int boot_partition: int
bus_number: int bus_num: int
created_by: str created_by: str
created_timestamp: int created_timestamp: int
deleted_by: str deleted_by: str
deleted_timestamp: int deleted_timestamp: int
description: str description: str
destruction_timestamp: int destruction_timestamp: int
device_name: str
disk_path: str disk_path: str
grid_id: int grid_id: int
guid: int guid: int
@ -212,7 +219,7 @@ class DiskForCAComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
params: str params: str
parent_id: int parent_id: int
password: str password: str
pci_slot: int pci_slot_num: int
present_to: dict[str, int] present_to: dict[str, int]
purge_timestamp: int purge_timestamp: int
reality_device_number: int reality_device_number: int
@ -228,7 +235,9 @@ class DiskForCAComputeGetAPIResultNM(_base.BaseAPIResultNestedModel):
size_used: float size_used: float
snapshots: list[SnapshotAPIResultNM] snapshots: list[SnapshotAPIResultNM]
status: _enums.DiskStatus status: _enums.DiskStatus
storage_policy_id: int
tech_status: _enums.DiskTechStatus tech_status: _enums.DiskTechStatus
to_clean: bool
type: _enums.DiskType type: _enums.DiskType
updated_by: str updated_by: str
updated_by: str updated_by: str
@ -291,7 +300,9 @@ class DiskForListAndListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
size_used: float size_used: float
snapshots: list[SnapshotAPIResultNM] snapshots: list[SnapshotAPIResultNM]
status: _enums.DiskStatus status: _enums.DiskStatus
storage_policy_id: int
tech_status: _enums.DiskTechStatus tech_status: _enums.DiskTechStatus
to_clean: bool
type: _enums.DiskType type: _enums.DiskType
updated_by: str updated_by: str
vm_id: int | None vm_id: int | None
@ -386,14 +397,20 @@ class DiskForListUnattachedAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)
class StoragePolicyQuotasAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
storage_size_gb: int
class TenantQuotasAPIResultNM(_base.BaseAPIResultNestedModel): class TenantQuotasAPIResultNM(_base.BaseAPIResultNestedModel):
cpu_count: int cpu_count: int
disk_size_gb: int disk_size_gb: int
ext_traffic: int ext_traffic: int
gpu_count: int gpu_count: int
public_ip_count: int ext_ip_count: int
ram_size_mb: float | int ram_size_mb: float | int
storage_size_gb: int storage_size_gb: int
storage_policies: list[StoragePolicyQuotasAPIResultNM]
class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel): class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
@ -421,6 +438,7 @@ class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
sdn_access_group_id: str sdn_access_group_id: str
secret: str secret: str
status: _enums.ResourceGroupStatus status: _enums.ResourceGroupStatus
storage_policy_ids: list[int]
uniq_pools: list[str] uniq_pools: list[str]
updated_by: str updated_by: str
updated_timestamp: int updated_timestamp: int
@ -442,7 +460,7 @@ class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)
class AccountAPIResultNM(_base.BaseAPIResultNestedModel): class AccountForCAAPIResultNM(_base.BaseAPIResultNestedModel):
acl: list[AccessAPIResultNM] acl: list[AccessAPIResultNM]
created_timestamp: int created_timestamp: int
deleted_timestamp: int deleted_timestamp: int
@ -452,6 +470,7 @@ class AccountAPIResultNM(_base.BaseAPIResultNestedModel):
status: _enums.AccountStatus status: _enums.AccountStatus
updated_timestamp: int updated_timestamp: int
vm_features: list[_enums.VMFeature] vm_features: list[_enums.VMFeature]
zone_ids: list[int]
@property @property
def created_datetime(self): def created_datetime(self):
@ -478,6 +497,40 @@ class GuestAgentAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.last_update_timestamp) return self._get_datetime_from_timestamp(self.last_update_timestamp)
class VGPUAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
bus_num: int
created_timestamp: int
deleted_timestamp: int
grid_id: int
guid: int
id: int
last_claimed_by: int
last_update_timestamp: int
pci_slot_num: int
pgpu_id: int
pgpu_mode: _enums.PGPUMode
pgpu_processor_type: _enums.PGPUProcessorType
profile_id: int | None
ram_size_mb: int
reference_id: str
rg_id: int
status: _enums.VGPUStatus
vm_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 last_update_datetime(self):
return self._get_datetime_from_timestamp(self.last_update_timestamp)
class VMAPIResultNM(_base.BaseAPIResultNestedModel): class VMAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int account_id: int
account_name: str account_name: str
@ -489,6 +542,7 @@ class VMAPIResultNM(_base.BaseAPIResultNestedModel):
arch: str arch: str
auto_start: bool auto_start: bool
boot_disk_size_gb: int boot_disk_size_gb: int
boot_image_id: int
boot_loader_type: _enums.BootLoaderType boot_loader_type: _enums.BootLoaderType
boot_mode: _enums.BootMode boot_mode: _enums.BootMode
boot_order: list[_enums.BootDevice] boot_order: list[_enums.BootDevice]
@ -512,19 +566,19 @@ class VMAPIResultNM(_base.BaseAPIResultNestedModel):
hot_resize: bool hot_resize: bool
hp_backed: bool hp_backed: bool
id: int id: int
image_id: int
interfaces: list[InterfaceForComputeListAPIResultNM] interfaces: list[InterfaceForComputeListAPIResultNM]
live_migration_job_id: int live_migration_job_id: int
lock_status: _enums.LockStatus lock_status: _enums.LockStatus
manager_id: int manager_id: int
manager_type: str manager_type: str
migration_job: int migration_job_id: int
milestones: int milestones: int
name: str name: str
need_reboot: bool need_reboot: bool
network_interface_naming: _enums.NetIfaceNamingTemplate network_interface_naming: _enums.NetIfaceNamingTemplate
numa_affinity: _enums.NumaAffinity numa_affinity: _enums.NumaAffinity
numa_node_id: int numa_node_id: int
os_version: str
pinned_to_stack: bool pinned_to_stack: bool
preferred_cpu_cores: list[int] preferred_cpu_cores: list[int]
ram_size_mb: int ram_size_mb: int
@ -534,8 +588,8 @@ class VMAPIResultNM(_base.BaseAPIResultNestedModel):
rg_id: int rg_id: int
rg_name: str rg_name: str
snapshot_sets: list[SnapshotSetAPIResultNM] snapshot_sets: list[SnapshotSetAPIResultNM]
stateless_sep_id: int stateless_sep_id: int | None = None
stateless_sep_type: str stateless_sep_type: str | None = None
status: _enums.VMStatus status: _enums.VMStatus
tags: dict tags: dict
tech_status: _enums.VMTechStatus tech_status: _enums.VMTechStatus
@ -543,9 +597,8 @@ class VMAPIResultNM(_base.BaseAPIResultNestedModel):
updated_by: str updated_by: str
updated_timestamp: int updated_timestamp: int
user_managed: bool user_managed: bool
vgpus: list[dict[str, _typing.Any]] vgpu_ids: list[int]
vins_count: int vins_count: int
virtual_image_id: int
vm_ci_id: int vm_ci_id: int
guest_agent: GuestAgentAPIResultNM guest_agent: GuestAgentAPIResultNM
zone_id: int zone_id: int
@ -585,6 +638,7 @@ class ImageForListAPIResultNM(_base.BaseAPIResultNestedModel):
sep_pool_name: str sep_pool_name: str
size_gb: int size_gb: int
status: _enums.ImageStatus status: _enums.ImageStatus
storage_policy_id: int
type: _enums.ImageType type: _enums.ImageType
virtual: bool | None = None virtual: bool | None = None
@ -714,7 +768,7 @@ class DHCPVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
ip_pool_start: str ip_pool_start: str
lease_time: int lease_time: int
net_ip: str net_ip: str
net_mask: int net_prefix: int
reservations: list[DHCPReservationAPIResultNM] reservations: list[DHCPReservationAPIResultNM]
@ -722,7 +776,7 @@ class GWVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
default_gw: str default_gw: str
ext_net_id: int ext_net_id: int
ext_net_ip: str ext_net_ip: str
ext_net_mask: int ext_net_prefix: int
qos: _typing.Any qos: _typing.Any
@ -735,10 +789,12 @@ class NATRuleAPIResultNM(_base.BaseAPIResultNestedModel):
public_port_start: int public_port_start: int
vm_id: int vm_id: int
vm_name: None | str = None
class NATVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel): class NATVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
net_ip: str net_ip: str
net_mask: int net_prefix: int
rules: list[NATRuleAPIResultNM] rules: list[NATRuleAPIResultNM]
@ -823,7 +879,7 @@ class VNFSAPIResultNM(_base.BaseAPIResultNestedModel):
class VNFDevMGMTConfigAPIResultNM(_base.BaseAPIResultNestedModel): class VNFDevMGMTConfigAPIResultNM(_base.BaseAPIResultNestedModel):
ip_addr: str ip_addr: str
password: str password: str
ssh_key: str ssh_public_key: str
user: str user: str
@ -850,6 +906,7 @@ class VNFDevAPIResultNM(_base.BaseAPIResultNestedModel):
guid: int guid: int
id: int id: int
interfaces: list[VNFDevInterfaceAPIResultNM] interfaces: list[VNFDevInterfaceAPIResultNM]
live_migration_job_id: int
lock_status: _enums.LockStatus lock_status: _enums.LockStatus
milestones: int milestones: int
name: str name: str
@ -912,7 +969,7 @@ class BServiceAPIResultNM(_base.BaseAPIResultNestedModel):
parent_service_type: str parent_service_type: str
rg_id: int rg_id: int
rg_name: str rg_name: str
ssh_user: str ssh_user_name: str
status: _enums.BServiceStatus status: _enums.BServiceStatus
tech_status: _enums.BServiceTechStatus tech_status: _enums.BServiceTechStatus
updated_by: str updated_by: str
@ -942,7 +999,7 @@ class OSUserAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str guid: str
login: str login: str
password: str password: str
pub_key: str ssh_public_key: str
class BServiceGroupVMAPIResultNM(_base.BaseAPIResultNestedModel): class BServiceGroupVMAPIResultNM(_base.BaseAPIResultNestedModel):
@ -975,7 +1032,7 @@ class FlipGroupForListAPIResultNM(_base.BaseAPIResultNestedModel):
milestones: int milestones: int
name: str name: str
net_id: int net_id: int
net_mask: int net_prefix: int
net_type: _enums.FlipGroupNetType net_type: _enums.FlipGroupNetType
status: _enums.FlipGroupStatus status: _enums.FlipGroupStatus
@ -1083,7 +1140,7 @@ class LBAPIResultNM(_base.BaseAPIResultNestedModel):
class SEPPoolAPIResultNM(_base.BaseAPIResultNestedModel): class SEPPoolAPIResultNM(_base.BaseAPIResultNestedModel):
name: str name: str
types: list[_enums.PoolDiskType] types: list[_enums.PoolDiskType]
system: str system: str | bool
class SEPAPIResultNM(_base.BaseAPIResultNestedModel): class SEPAPIResultNM(_base.BaseAPIResultNestedModel):
@ -1143,18 +1200,6 @@ class TaskAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)
class UserAuditAPIResultNM(_base.BaseAPIResultNestedModel):
request_timestamp: int
api_url_path: str
execution_time_sec: int | None
status_code: int | None
guid: str
@property
def request_datetime(self):
return self._get_datetime_from_timestamp(self.request_timestamp)
class K8CIForListAPIResultNM(_base.BaseAPIResultNestedModel): class K8CIForListAPIResultNM(_base.BaseAPIResultNestedModel):
created_timestamp: int created_timestamp: int
description: str description: str
@ -1180,6 +1225,7 @@ class NetworkIDsAPIResultNM(_base.BaseAPIResultNestedModel):
class K8sVMAPIResultNM(_base.BaseAPIResultNestedModel): class K8sVMAPIResultNM(_base.BaseAPIResultNestedModel):
ext_ip: str | None = None
id: int id: int
name: str name: str
status: _enums.VMStatus status: _enums.VMStatus
@ -1229,10 +1275,10 @@ class K8sServiceAccountAPIResultNM(_base.BaseAPIResultNestedModel):
user_name: str user_name: str
class K8sListAPIResultNM(_base.BaseAPIResultNestedModel): class K8sAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int account_id: int
account_name: str account_name: str
acl: list[K8sACLAPIResultNM] acl: list[_typing.Any]
bservice_id: int bservice_id: int
k8ci_id: int k8ci_id: int
config: dict config: dict
@ -1273,36 +1319,359 @@ class K8sListAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)
class K8sListDeletedAPIResultNM(_base.BaseAPIResultNestedModel): 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]
security_group_mode: bool
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)
class VirtualFunctionAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
id: int
vm_id: int
claimed: bool
class VFPoolNodeInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
name: str
vfs: list[VirtualFunctionAPIResultNM]
class VFPoolNodeAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
id: int
interfaces: list[VFPoolNodeInterfaceAPIResultNM]
class VFPoolAPIResultNM(_base.BaseAPIResultNestedModel):
account_ids: list[int]
created_timestamp: int
description: str
grid_id: int
guid: int
id: int
name: str
rg_ids: list[int]
status: _enums.VFPoolStatus
updated_timestamp: int
nodes: list[VFPoolNodeAPIResultNM]
@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)
class ZoneForListAPIResultNM(_base.BaseAPIResultNestedModel):
created_timestamp: int
deletable: bool
description: str
grid_id: int
guid: int
id: int
name: str
node_ids: list[int]
status: _enums.ZoneStatus
updated_timestamp: 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)
class SecurityGroupRuleAPIResultNM(_base.BaseAPIResultNestedModel):
ethertype: _enums.SGRuleEthertype
id: int
port_range_max: int | None
port_range_min: int | None
protocol: _enums.SGRuleProtocol | None
remote_group_id: int | None = None
remote_ip_prefix: str | None
traffic_direction: _enums.TrafficDirection
class TrunkAPIResultNM(_base.BaseAPIResultNestedModel):
account_ids: list[int] | None
created_by: str
created_timestamp: int
deleted_by: str | None
deleted_timestamp: int | None
description: str
guid: int
id: int
mac: str
name: str
native_vlan_id: int | None
ovs_bridge: str
status: _enums.TrunkStatus
updated_by: str | None
updated_timestamp: int | None
vlan_ids: str
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
if self.deleted_timestamp is None:
return None
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property
def updated_datetime(self):
if self.updated_timestamp is None:
return None
return self._get_datetime_from_timestamp(self.updated_timestamp)
class SEPPoolsAPIResultNM(_base.BaseAPIResultNestedModel):
pool_names: list[str]
sep_id: int
sep_name: str | None = None
class TenantIDsAPIResultNM(_base.BaseAPIResultNestedModel):
account_ids: list[int]
rg_ids: list[int]
class StoragePolicyAPIResultNM(_base.BaseAPIResultNestedModel):
sep_pools: list[SEPPoolsAPIResultNM]
description: str
guid: int
id: int
iops_limit: int
name: str
status: _enums.StoragePolicyStatus
usage: TenantIDsAPIResultNM
class VINSExtNetAPIResultNM(_base.BaseAPIResultNestedModel):
default_gw: str
id: int
ip_addr: str
net_prefix: int
status: _enums.ExtNetStatus
tech_status: _enums.VNFDevTechStatus
class SecurityGroupAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
created_by: str
created_timestamp: int
description: str
id: int
name: str
rules: list[SecurityGroupRuleAPIResultNM]
updated_by: str | None
updated_timestamp: int | None
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def updated_datetime(self):
if self.updated_timestamp is None:
return None
return self._get_datetime_from_timestamp(self.updated_timestamp)
class BootLoaderMetaisoAPIResultNM(_base.BaseAPIResultNestedModel):
device_name: str
path: str
class MigrateStorageJobAPIResultNM(_base.BaseAPIResultNestedModel):
completed: bool
domain_name: str
id: int
log: list[str]
source_stack_id: int
status: _enums.JobStatus
target_stack_id: int
class AuditAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int | None = None
api_url_path: str
async_request_task_id: str | None = None
args: str
bservice_id: int | None = None
client_ip_addr: str
correlation_id: str
execution_time_sec: float | None
flip_group_id: int | None = None
guid: str
k8s_id: int | None = None
kwargs: str
lb_id: int | None = None
node_ids: list[int] | None = None
request_datetime_iso8601: str
request_timestamp: float
response_timestamp: float | None
result: str | None
rg_id: int | None = None
sep_id: int | None = None
status_code: int | None
user_name: str
vins_id: int | None = None
vm_id: int | None = None
@property
def request_datetime(self):
return self._get_datetime_from_timestamp(self.request_timestamp)
@property
def response_datetime(self):
if self.response_timestamp is None:
return None
return self._get_datetime_from_timestamp(self.response_timestamp)
class UserAPIResultNM(_base.BaseAPIResultNestedModel):
active: bool
api_access_groups: dict[str, str]
auth_key: str
auth_keys: list[_typing.Any]
blocked: bool | None = None
data: str
description: str
domain_name: str | None
emails: list[str]
grid_id: int
groups: list[str]
guid: str
id: str
last_check_timestamp: int
mobile: list[_typing.Any]
password: str
protected: bool | None = None
roles: list[_typing.Any]
service_account: bool
xmpp: list[_typing.Any]
@property
def last_check_datetime(self):
return self._get_datetime_from_timestamp(self.last_check_timestamp)
class StorageCountersAPIResultNM(_base.BaseAPIResultNestedModel):
storage_size_gb_by_real_usage: float
storage_size_gb_by_disk_max: float
class StoragePolicyCountersAPIResultNM(_base.BaseAPIResultNestedModel):
storage_size_gb_by_real_usage: float
storage_size_gb_by_disk_max: float
sep_pools: dict[str, dict[str, StorageCountersAPIResultNM]]
storage_size_quota_gb: int | None = None
class ResourceCountersAPIResultNM(_base.BaseAPIResultNestedModel):
cpu_count: int
ram_size_mb: int
storage_size_gb_by_real_usage: int | float
storage_size_gb_by_disk_max: int
ext_ip_count: int
ext_traffic: int
gpu_count: int
sep_pools: dict[str, dict[str, StorageCountersAPIResultNM]]
storage_policies: dict[str, StoragePolicyCountersAPIResultNM]
class TenantQuotasForResourceConsumptionAPIResultNM(
_base.BaseAPIResultNestedModel,
):
cpu_count: int
disk_size_gb: int
ext_traffic: int
gpu_count: int
ext_ip_count: int
ram_size_mb: float | int
storage_size_gb: int
class PCIDeviceAPIResultNM(_base.BaseAPIResultNestedModel):
vm_id: int
description: str
guid: int
hw_path: str
id: int
name: str
rg_id: int
stack_id: int
status: _enums.PCIDeviceStatus
system_name: str
class AvailableSEPPoolsAPIResultNM(_base.BaseAPIResultNestedModel):
sep_id: int
sep_name: str
sep_type: _enums.SEPType
pools: list[SEPPoolAPIResultNM]
class ResourceGroupForListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
account_acl: AccessAPIResultNM
account_id: int account_id: int
account_name: str account_name: str
acl: list[K8sACLAPIResultNM] acl: list[AccessAPIResultNM]
bservice_id: int vm_features: list[_enums.VMFeature]
k8ci_id: int cpu_allocation_parameter: str
config: dict cpu_allocation_ratio: int
created_by: str created_by: str
created_timestamp: int created_timestamp: int
default_net_id: int
default_net_type: _enums.RGDefaultNetType
deleted_by: str deleted_by: str
deleted_timestamp: int deleted_timestamp: int
description: str description: str
ext_net_id: int
grid_id: int grid_id: int
guid: int guid: int
id: int id: int
lb_id: int lock_status: _enums.LockStatus
milestones: int milestones: int
name: str name: str
network_plugin: _enums.K8sNetworkPlugin quotas: TenantQuotasAPIResultNM
rg_id: int resource_types: list[_enums.RGResourceType]
rg_name: str sdn_access_group_id: str
service_account: K8sServiceAccountAPIResultNM secret: str
status: _enums.K8sStatus status: _enums.ResourceGroupStatus
tech_status: _enums.K8sTechStatus storage_policy_ids: list[int]
uniq_pools: list[str]
updated_by: str updated_by: str
updated_timestamp: int updated_timestamp: int
vins_id: int vins_ids: list[int]
worker_groups: list[WorkerGroupAPIResultNM] vm_ids: list[int]
zone_id: int
@property @property
def created_datetime(self): def created_datetime(self):
@ -1317,25 +1686,55 @@ class K8sListDeletedAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)
class DPDKNetAPIResultNM(_base.BaseAPIResultNestedModel): class TenantStatusCountersAPIResultNM(_base.BaseAPIResultNestedModel):
account_ids: list[int] disabled: int
enabled: int
class VMStatusCountersAPIResultNM(_base.BaseAPIResultNestedModel):
started: int
stopped: int
class AccountForCBAPIResultNM(_base.BaseAPIResultNestedModel):
acc_lvl_vins_ids: list[int]
acl: list[AccessAPIResultNM]
company_url: str
company: str
cpu_allocation_parameter: str
cpu_allocation_ratio: int
created_by: str
created_timestamp: int created_timestamp: int
dc_location: str
deactivation_timestamp: int
default_zone_id: int
deleted_by: str
deleted_timestamp: int
description: str description: str
grid_id: int display_name: str
guid: int guid: int
id: int id: int
name: str name: str
ovs_bridge: str quotas: TenantQuotasAPIResultNM
rg_ids: list[int] resource_types: list[_enums.AccountResourceType]
status: _enums.DPDKNetStatus send_access_emails: bool
status: _enums.AccountStatus
storage_policy_ids: list[int]
uniq_pools: list[str]
updated_timestamp: int updated_timestamp: int
vlan_id: int version: int
vm_ids: list[int] vm_features: list[_enums.VMFeature]
zone_ids: list[int]
zones: list[int]
@property @property
def created_datetime(self): def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp) return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property @property
def updated_datetime(self): def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp) return self._get_datetime_from_timestamp(self.updated_timestamp)

@ -13,11 +13,19 @@ from .k8s import *
from .kvmx86 import * from .kvmx86 import *
from .lb import * from .lb import *
from .locations import * from .locations import *
from .pcidevice import *
from .rg import * from .rg import *
from .security_group import *
from .sep import *
from .stack import * from .stack import *
from .storage_policy import *
from .tasks import * from .tasks import *
from .trunk import *
from .user import * from .user import *
from .vfpool import *
from .vgpu import *
from .vins import * from .vins import *
from .zone import *
class CloudapiAPI(_base.BaseAPI): class CloudapiAPI(_base.BaseAPI):
@ -35,8 +43,16 @@ class CloudapiAPI(_base.BaseAPI):
kvmx86: CloudapiKvmx86API kvmx86: CloudapiKvmx86API
lb: CloudapiLbAPI lb: CloudapiLbAPI
locations: CloudapiLocationsAPI locations: CloudapiLocationsAPI
pcidevice: CloudapiPcideviceAPI
rg: CloudapiRgAPI rg: CloudapiRgAPI
security_group: CloudapiSecurityGroupAPI
sep: CloudapiSepAPI
stack: CloudapiStackAPI stack: CloudapiStackAPI
storage_policy: CloudapiStoragePolicyAPI
tasks: CloudapiTasksAPI tasks: CloudapiTasksAPI
trunk: CloudapiTrunkAPI
user: CloudapiUserAPI user: CloudapiUserAPI
vfpool: CloudapiVfpoolAPI
vgpu: CloudapiVgpuAPI
vins: CloudapiVinsAPI vins: CloudapiVinsAPI
zone: CloudapiZoneAPI

@ -5,6 +5,7 @@ from .delete_user import *
from .disable import * from .disable import *
from .enable import * from .enable import *
from .get import * from .get import *
from .get_resource_consumption import *
from .list import * from .list import *
from .list_deleted import * from .list_deleted import *
from .restore import * from .restore import *
@ -20,6 +21,7 @@ class CloudapiAccountAPI(
CloudapiAccountDisableProtocol, CloudapiAccountDisableProtocol,
CloudapiAccountEnableProtocol, CloudapiAccountEnableProtocol,
CloudapiAccountGetProtocol, CloudapiAccountGetProtocol,
CloudapiAccountGetResourceConsumptionProtocol,
CloudapiAccountListDeletedProtocol, CloudapiAccountListDeletedProtocol,
CloudapiAccountListProtocol, CloudapiAccountListProtocol,
CloudapiAccountRestoreProtocol, CloudapiAccountRestoreProtocol,

@ -25,6 +25,7 @@ class CloudapiAccountGetResultModel(_base.BaseAPIResultModel):
resource_types: list[_nested.AccountResourceType] resource_types: list[_nested.AccountResourceType]
send_access_emails: bool send_access_emails: bool
status: _nested.AccountStatus status: _nested.AccountStatus
storage_policy_ids: list[int]
uniq_pools: list[str] uniq_pools: list[str]
updated_timestamp: int updated_timestamp: int
version: int version: int

@ -0,0 +1,21 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiAccountGetResourceConsumptionResultModel(
_base.BaseAPIResultModel,
):
id: int
consumed: _nested.ResourceCountersAPIResultNM
reserved: _nested.ResourceCountersAPIResultNM
quotas: _nested.TenantQuotasForResourceConsumptionAPIResultNM
class CloudapiAccountGetResourceConsumptionProtocol(
_base.BasePostAPIFunctionProtocol,
):
def get_resource_consumption(
self,
*,
account_id: int,
) -> CloudapiAccountGetResourceConsumptionResultModel: ...

@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiAccountListResultModel(_base.BaseAPIResultModel): class CloudapiAccountListResultModel(_base.BaseAPIResultModel):
data: list[_nested.AccountAPIResultNM] data: list[_nested.AccountForCAAPIResultNM]
entry_count: int entry_count: int
@ -14,6 +14,7 @@ class CloudapiAccountListProtocol(_base.BasePostAPIFunctionProtocol):
access_type: None | _nested.AccessType = None, access_type: None | _nested.AccessType = None,
id: None | int = None, id: None | int = None,
name: None | str = None, name: None | str = None,
zone_id: None | int = None,
page_number: None | int = None, page_number: None | int = None,
page_size: None | int = None, page_size: None | int = None,
sort_by: None | str = None, sort_by: None | str = None,

@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiAccountListDeletedResultModel(_base.BaseAPIResultModel): class CloudapiAccountListDeletedResultModel(_base.BaseAPIResultModel):
data: list[_nested.AccountAPIResultNM] data: list[_nested.AccountForCAAPIResultNM]
entry_count: int entry_count: int

@ -14,9 +14,9 @@ class CloudapiAccountUpdateProtocol(_base.BasePostAPIFunctionProtocol):
ext_traffic_quota: None | int = None, ext_traffic_quota: None | int = None,
gpu_count_quota: None | int = None, gpu_count_quota: None | int = None,
name: None | str = None, name: None | str = None,
public_ip_count_quota: None | int = None, ext_ip_count_quota: None | int = None,
ram_size_quota_mb: None | int = None, ram_size_quota_mb: None | int = None,
send_access_emails: None | bool = None, send_access_emails: bool = False,
storage_size_quota_gb: None | int = None, storage_size_quota_gb: None | int = None,
uniq_pools: None | list[str] = None, uniq_pools: None | list[str] = None,
description: str | None = None, description: str | None = None,

@ -1,9 +1,11 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
from .get import * from .get import *
from .list import *
class CloudapiAuditAPI( class CloudapiAuditAPI(
_base.BaseAPI, _base.BaseAPI,
CloudapiAuditGetProtocol, CloudapiAuditGetProtocol,
CloudapiAuditListProtocol,
): ):
pass pass

@ -1,27 +1,12 @@
import dynamix_sdk.api._nested as _nested
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
class CloudapiAuditGetResultModel(_base.BaseAPIResultModel): class CloudapiAuditGetResultModel(
args: str _base.BaseAPIResultModel,
api_url_path: str _nested.AuditAPIResultNM,
guid: str ):
kwargs: str pass
client_ip_addr: str
execution_time_sec: float
result: str
status_code: int
request_timestamp: float
response_timestamp: float
user_name: str
request_datetime_iso8601: str
@property
def request_datetime(self):
return self._get_datetime_from_timestamp(self.request_timestamp)
@property
def response_datetime(self):
return self._get_datetime_from_timestamp(self.response_timestamp)
class CloudapiAuditGetProtocol(_base.BasePostAPIFunctionProtocol): class CloudapiAuditGetProtocol(_base.BasePostAPIFunctionProtocol):

@ -0,0 +1,35 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiAuditListResultModel(_base.BaseAPIResultModel):
data: list[_nested.AuditAPIResultNM]
entry_count: int
class CloudapiAuditListProtocol(_base.BasePostAPIFunctionProtocol):
def list(
self,
*,
account_id: int | None = None,
api_url_path: str | None = None,
bservice_id: int | None = None,
exclude_audit_lines: bool = False,
flip_group_id: int | None = None,
request_id: str | None = None,
k8s_id: int | None = None,
lb_id: int | None = None,
max_status_code: int | None = None,
min_status_code: int | None = None,
page_number: int = 1,
page_size: int = 100,
request_timestamp_end: int | None = None,
request_timestamp_start: int | None = None,
rg_id: int | None = None,
sep_id: int | None = None,
sort_by: str | None = None,
user_name: str | None = None,
vins_id: int | None = None,
vm_id: int | None = None,
) -> CloudapiAuditListResultModel:
...

@ -18,7 +18,12 @@ from .group_update_extnet import *
from .group_update_vins import * from .group_update_vins import *
from .list import * from .list import *
from .list_deleted import * from .list_deleted import *
from .migrate_to_zone import *
from .restore import * from .restore import *
from .snapshot_create import *
from .snapshot_delete import *
from .snapshot_list import *
from .snapshot_rollback import *
from .start import * from .start import *
from .stop import * from .stop import *
@ -44,7 +49,12 @@ class CloudapiBserviceAPI(
CloudapiBserviceGroupUpdateVinsProtocol, CloudapiBserviceGroupUpdateVinsProtocol,
CloudapiBserviceListDeletedProtocol, CloudapiBserviceListDeletedProtocol,
CloudapiBserviceListProtocol, CloudapiBserviceListProtocol,
CloudapiBserviceMigrateToZoneProtocol,
CloudapiBserviceRestoreProtocol, CloudapiBserviceRestoreProtocol,
CloudapiBserviceSnapshotCreateProtocol,
CloudapiBserviceSnapshotDeleteProtocol,
CloudapiBserviceSnapshotListProtocol,
CloudapiBserviceSnapshotRollbackProtocol,
CloudapiBserviceStartProtocol, CloudapiBserviceStartProtocol,
CloudapiBserviceStopProtocol, CloudapiBserviceStopProtocol,
): ):

@ -11,8 +11,8 @@ class CloudapiBserviceCreateProtocol(_base.BasePostAPIFunctionProtocol):
*, *,
name: str, name: str,
rg_id: int, rg_id: int,
ssh_user: str | None = None, ssh_user_name: str | None = None,
ssh_key: str | None = None, ssh_public_key: str | None = None,
zone_id: int | None = None, zone_id: int | None = None,
) -> CloudapiBserviceCreateResultInt: ) -> CloudapiBserviceCreateResultInt:
... ...

@ -24,8 +24,8 @@ class CloudapiBserviceGetResultModel(_base.BaseAPIResultModel):
rg_id: int rg_id: int
rg_name: str rg_name: str
snapshots: list[_nested.BServiceSnapshotAPIResultNM] snapshots: list[_nested.BServiceSnapshotAPIResultNM]
ssh_key: str ssh_public_key: str
ssh_user: str ssh_user_name: str
status: _nested.BServiceStatus status: _nested.BServiceStatus
tech_status: _nested.BServiceTechStatus tech_status: _nested.BServiceTechStatus
updated_by: str updated_by: str

@ -14,10 +14,11 @@ class CloudapiBserviceGroupAddProtocol(_base.BasePostAPIFunctionProtocol):
vm_count: int, vm_count: int,
cpu_count: int, cpu_count: int,
boot_disk_size_gb: int, boot_disk_size_gb: int,
driver: _nested.Driver,
image_id: int, image_id: int,
driver: _nested.Driver,
name: str, name: str,
ram_size_mb: int, ram_size_mb: int,
storage_policy_id: int | None = None,
ci_user_data: str | None = None, ci_user_data: str | None = None,
extnet_ids: list[int] | None = None, extnet_ids: list[int] | None = None,
role: str | None = None, role: str | None = None,

@ -15,6 +15,7 @@ class CloudapiBserviceListProtocol(_base.BasePostAPIFunctionProtocol):
account_name: str | None = None, account_name: str | None = None,
id: int | None = None, id: int | None = None,
name: str | None = None, name: str | None = None,
zone_id: int | None = None,
page_number: int | None = None, page_number: int | None = None,
page_size: int | None = None, page_size: int | None = None,
rg_id: int | None = None, rg_id: int | None = None,

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiBserviceMigrateToZoneResultBool(_base.BaseAPIResultBool):
pass
class CloudapiBserviceMigrateToZoneProtocol(_base.BasePostAPIFunctionProtocol):
def migrate_to_zone(
self,
*,
bservice_id: int,
zone_id: int,
) -> CloudapiBserviceMigrateToZoneResultBool:
...

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiBserviceSnapshotCreateResultBool(_base.BaseAPIResultBool):
pass
class CloudapiBserviceSnapshotCreateProtocol(
_base.BasePostAPIFunctionProtocol,
):
def snapshot_create(
self,
*,
bservice_id: int,
label: str,
) -> CloudapiBserviceSnapshotCreateResultBool:
...

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiBserviceSnapshotDeleteResultBool(_base.BaseAPIResultBool):
pass
class CloudapiBserviceSnapshotDeleteProtocol(
_base.BasePostAPIFunctionProtocol,
):
def snapshot_delete(
self,
*,
bservice_id: int,
label: str,
) -> CloudapiBserviceSnapshotDeleteResultBool:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiBserviceSnapshotListResultModel(_base.BaseAPIResultModel):
data: list[_nested.BServiceSnapshotAPIResultNM]
entry_count: int
class CloudapiBserviceSnapshotListProtocol(_base.BasePostAPIFunctionProtocol):
def snapshot_list(
self,
*,
bservice_id: int,
) -> CloudapiBserviceSnapshotListResultModel:
...

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiBserviceSnapshotRollbackResultBool(_base.BaseAPIResultBool):
pass
class CloudapiBserviceSnapshotRollbackProtocol(
_base.BasePostAPIFunctionProtocol,
):
def snapshot_rollback(
self,
*,
bservice_id: int,
label: str,
) -> CloudapiBserviceSnapshotRollbackResultBool:
...

@ -1,4 +1,5 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
from .abort_shared_snapshot_merge import *
from .affinity_label_remove import * from .affinity_label_remove import *
from .affinity_label_set import * from .affinity_label_set import *
from .affinity_relations import * from .affinity_relations import *
@ -8,19 +9,41 @@ from .affinity_rules_clear import *
from .anti_affinity_rule_add import * from .anti_affinity_rule_add import *
from .anti_affinity_rule_remove import * from .anti_affinity_rule_remove import *
from .anti_affinity_rules_clear import * from .anti_affinity_rules_clear import *
from .attach_gpu import *
from .attach_pci_device import *
from .boot_disk_set import *
from .cd_eject import * from .cd_eject import *
from .cd_insert import * from .cd_insert import *
from .change_ip import * from .change_ip import *
from .change_link_state import *
from .change_mac import *
from .change_mtu import *
from .change_security_groups import *
from .clone import * from .clone import *
from .clone_abort import *
from .create_template import *
from .delete import * from .delete import *
from .delete_custom_fields import * from .delete_custom_fields import *
from .detach_gpu import *
from .detach_pci_device import *
from .disable import *
from .disk_add import * from .disk_add import *
from .disk_attach import * from .disk_attach import *
from .disk_migrate import *
from .disk_del import * from .disk_del import *
from .disk_detach import * from .disk_detach import *
from .disk_resize import * from .disk_switch_to_replication import *
from .enable import *
from .get import * from .get import *
from .get_console_url import *
from .guest_agent_disable import *
from .guest_agent_enable import *
from .guest_agent_execute import *
from .guest_agent_feature_update import *
from .list import * from .list import *
from .list_deleted import *
from .migrate_to_zone import *
from .move_to_rg import *
from .net_attach import * from .net_attach import *
from .net_detach import * from .net_detach import *
from .pause import * from .pause import *
@ -28,9 +51,12 @@ from .pfw_add import *
from .pfw_del import * from .pfw_del import *
from .pfw_list import * from .pfw_list import *
from .pin_to_stack import * from .pin_to_stack import *
from .power_cycle import *
from .reboot import * from .reboot import *
from .redeploy import * from .redeploy import *
from .reset import *
from .resize import * from .resize import *
from .restore import *
from .resume import * from .resume import *
from .set_custom_fields import * from .set_custom_fields import *
from .snapshot_create import * from .snapshot_create import *
@ -50,6 +76,7 @@ from .user_update import *
class CloudapiComputeAPI( class CloudapiComputeAPI(
_base.BaseAPI, _base.BaseAPI,
CloudapiComputeAbortSharedSnapshotMergeProtocol,
CloudapiComputeAffinityLabelRemoveProtocol, CloudapiComputeAffinityLabelRemoveProtocol,
CloudapiComputeAffinityLabelSetProtocol, CloudapiComputeAffinityLabelSetProtocol,
CloudapiComputeAffinityRelationsProtocol, CloudapiComputeAffinityRelationsProtocol,
@ -59,19 +86,41 @@ class CloudapiComputeAPI(
CloudapiComputeAntiAffinityRuleAddProtocol, CloudapiComputeAntiAffinityRuleAddProtocol,
CloudapiComputeAntiAffinityRuleRemoveProtocol, CloudapiComputeAntiAffinityRuleRemoveProtocol,
CloudapiComputeAntiAffinityRulesClearProtocol, CloudapiComputeAntiAffinityRulesClearProtocol,
CloudapiComputeAttachGpuProtocol,
CloudapiComputeAttachPciDeviceProtocol,
CloudapiComputeBootDiskSetProtocol,
CloudapiComputeCdEjectProtocol, CloudapiComputeCdEjectProtocol,
CloudapiComputeCdInsertProtocol, CloudapiComputeCdInsertProtocol,
CloudapiComputeChangeIpProtocol, CloudapiComputeChangeIpProtocol,
CloudapiComputeChangeLinkStateProtocol,
CloudapiComputeChangeMacProtocol,
CloudapiComputeChangeMtuProtocol,
CloudapiComputeChangeSecurityGroupsProtocol,
CloudapiComputeCloneAbortProtocol,
CloudapiComputeCloneProtocol, CloudapiComputeCloneProtocol,
CloudapiComputeCreateTemplateProtocol,
CloudapiComputeDeleteCustomFieldsProtocol, CloudapiComputeDeleteCustomFieldsProtocol,
CloudapiComputeDeleteProtocol, CloudapiComputeDeleteProtocol,
CloudapiComputeDetachGpuProtocol,
CloudapiComputeDetachPciDeviceProtocol,
CloudapiComputeDisableProtocol,
CloudapiComputeDiskAddProtocol, CloudapiComputeDiskAddProtocol,
CloudapiComputeDiskAttachProtocol, CloudapiComputeDiskAttachProtocol,
CloudapiComputeDiskDelProtocol, CloudapiComputeDiskDelProtocol,
CloudapiComputeDiskDetachProtocol, CloudapiComputeDiskDetachProtocol,
CloudapiComputeDiskResizeProtocol, CloudapiComputeDiskMigrateProtocol,
CloudapiComputeDiskSwitchToReplicationProtocol,
CloudapiComputeEnableProtocol,
CloudapiComputeGetConsoleUrlProtocol,
CloudapiComputeGetProtocol, CloudapiComputeGetProtocol,
CloudapiComputeGuestAgentDisableProtocol,
CloudapiComputeGuestAgentEnableProtocol,
CloudapiComputeGuestAgentExecuteProtocol,
CloudapiComputeGuestAgentFeatureUpdateProtocol,
CloudapiComputeListProtocol, CloudapiComputeListProtocol,
CloudapiComputeListDeletedProtocol,
CloudapiComputeMigrateToZoneProtocol,
CloudapiComputeMoveToRgProtocol,
CloudapiComputeNetAttachProtocol, CloudapiComputeNetAttachProtocol,
CloudapiComputeNetDetachProtocol, CloudapiComputeNetDetachProtocol,
CloudapiComputePauseProtocol, CloudapiComputePauseProtocol,
@ -79,9 +128,12 @@ class CloudapiComputeAPI(
CloudapiComputePfwDelProtocol, CloudapiComputePfwDelProtocol,
CloudapiComputePfwListProtocol, CloudapiComputePfwListProtocol,
CloudapiComputePinToStackProtocol, CloudapiComputePinToStackProtocol,
CloudapiComputePowerCycleProtocol,
CloudapiComputeRebootProtocol, CloudapiComputeRebootProtocol,
CloudapiComputeRedeployProtocol, CloudapiComputeRedeployProtocol,
CloudapiComputeResetProtocol,
CloudapiComputeResizeProtocol, CloudapiComputeResizeProtocol,
CloudapiComputeRestoreProtocol,
CloudapiComputeResumeProtocol, CloudapiComputeResumeProtocol,
CloudapiComputeSetCustomFieldsProtocol, CloudapiComputeSetCustomFieldsProtocol,
CloudapiComputeSnapshotCreateProtocol, CloudapiComputeSnapshotCreateProtocol,

@ -0,0 +1,19 @@
import dynamix_sdk.base as _base
class CloudapiComputeAbortSharedSnapshotMergeResultBool(
_base.BaseAPIResultBool,
):
pass
class CloudapiComputeAbortSharedSnapshotMergeProtocol(
_base.BasePostAPIFunctionProtocol
):
def abort_shared_snapshot_merge(
self,
*,
vm_id: int,
label: str,
) -> CloudapiComputeAbortSharedSnapshotMergeResultBool:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiComputeAttachGpuResultInt(_base.BaseAPIResultInt):
pass
class CloudapiComputeAttachGpuProtocol(_base.BasePostAPIFunctionProtocol):
def attach_gpu(
self,
*,
vm_id: int,
vgpu_id: int,
) -> CloudapiComputeAttachGpuResultInt:
...

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiComputeAttachPciDeviceResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeAttachPciDeviceProtocol(
_base.BasePostAPIFunctionProtocol,
):
def attach_pci_device(
self,
*,
vm_id: int,
pci_device_id: int,
) -> CloudapiComputeAttachPciDeviceResultBool:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiComputeBootDiskSetResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeBootDiskSetProtocol(_base.BasePostAPIFunctionProtocol):
def boot_disk_set(
self,
*,
vm_id: int,
disk_id: int,
) -> CloudapiComputeBootDiskSetResultBool:
...

@ -0,0 +1,19 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiComputeChangeLinkStateResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeChangeLinkStateProtocol(
_base.BasePostAPIFunctionProtocol
):
def change_link_state(
self,
*,
interface: str,
state: _nested.LinkState,
vm_id: int,
) -> CloudapiComputeChangeLinkStateResultBool:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
class CloudapiComputeChangeMacResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeChangeMacProtocol(_base.BasePostAPIFunctionProtocol):
def change_mac(
self,
*,
vm_id: int,
current_mac: str,
new_mac: str,
) -> CloudapiComputeChangeMacResultBool:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiComputeChangeMtuResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeChangeMtuProtocol(
_base.BasePostAPIFunctionProtocol
):
def change_mtu(
self,
*,
vm_id: int,
interface: str,
mtu: int,
) -> CloudapiComputeChangeMtuResultBool:
...

@ -0,0 +1,19 @@
import dynamix_sdk.base as _base
class CloudapiComputeChangeSecurityGroupsResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeChangeSecurityGroupsProtocol(
_base.BasePostAPIFunctionProtocol
):
def change_security_groups(
self,
*,
vm_id: int,
interface: str,
security_group_ids: list[int] | None = None,
security_group_mode: bool | None = None,
) -> CloudapiComputeChangeSecurityGroupsResultBool:
...

@ -1,7 +1,7 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
class CloudapiComputeCloneResultInt(_base.BaseAPIResultInt): class CloudapiComputeCloneResultStr(_base.BaseAPIResultStr):
pass pass
@ -12,7 +12,10 @@ class CloudapiComputeCloneProtocol(_base.BasePostAPIFunctionProtocol):
vm_id: int, vm_id: int,
name: str, name: str,
force: bool = False, force: bool = False,
storage_policy_id: int,
snapshot_timestamp: int | None = None, snapshot_timestamp: int | None = None,
snapshot_name: str | None = None, snapshot_name: str | None = None,
) -> CloudapiComputeCloneResultInt: sep_pool_name: str | None = None,
sep_id: int | None = None,
) -> CloudapiComputeCloneResultStr:
... ...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiComputeCloneAbortResultBool(
_base.BaseAPIResultBool,
):
pass
class CloudapiComputeCloneAbortProtocol(
_base.BasePostAPIFunctionProtocol
):
def clone_abort(
self,
*,
vm_id: int,
) -> CloudapiComputeCloneAbortResultBool:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiComputeCreateTemplateResultStr(_base.BaseAPIResultStr):
pass
class CloudapiComputeCreateTemplateProtocol(_base.BasePostAPIFunctionProtocol):
def create_template(
self,
*,
vm_id: int,
name: str
) -> CloudapiComputeCreateTemplateResultStr:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiComputeDetachGpuResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeDetachGpuProtocol(_base.BasePostAPIFunctionProtocol):
def detach_gpu(
self,
*,
vm_id: int,
vgpu_id: int | None = None,
) -> CloudapiComputeDetachGpuResultBool:
...

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiComputeDetachPciDeviceResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeDetachPciDeviceProtocol(
_base.BasePostAPIFunctionProtocol,
):
def detach_pci_device(
self,
*,
vm_id: int,
pci_device_id: int,
) -> CloudapiComputeDetachPciDeviceResultBool:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
class CloudapiComputeDisableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeDisableProtocol(
_base.BasePostAPIFunctionProtocol
):
def disable(
self,
*,
vm_id: int,
) -> CloudapiComputeDisableResultBool:
...

@ -13,11 +13,13 @@ class CloudapiComputeDiskAddProtocol(_base.BasePostAPIFunctionProtocol):
vm_id: int, vm_id: int,
name: str, name: str,
disk_size_gb: int, disk_size_gb: int,
storage_policy_id: int,
disk_type: _nested.DiskType = _nested.DiskType.D, disk_type: _nested.DiskType = _nested.DiskType.D,
sep_id: int | None = None, sep_id: int | None = None,
sep_pool_name: str | None = None, sep_pool_name: str | None = None,
description: str | None = None, description: str | None = None,
image_id: int | None = None, image_id: int | None = None,
pci_slot_num_hex: str | None = None,
bus_num_hex: str | None = None,
) -> CloudapiComputeDiskAddResultInt: ) -> CloudapiComputeDiskAddResultInt:
... ...

@ -13,5 +13,7 @@ class CloudapiComputeDiskAttachProtocol(_base.BasePostAPIFunctionProtocol):
vm_id: int, vm_id: int,
disk_id: int, disk_id: int,
disk_type: _nested.DiskType = _nested.DiskType.D, disk_type: _nested.DiskType = _nested.DiskType.D,
pci_slot_num_hex: str | None = None,
bus_num_hex: str | None = None,
) -> CloudapiComputeDiskAttachResultBool: ) -> CloudapiComputeDiskAttachResultBool:
... ...

@ -0,0 +1,19 @@
import dynamix_sdk.base as _base
class CloudapiComputeDiskMigrateResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeDiskMigrateProtocol(
_base.BasePostAPIFunctionProtocol
):
def disk_migrate(
self,
*,
vm_id: int,
disk_id: int,
target_disk_id: int,
mode: int = 1,
) -> CloudapiComputeDiskMigrateResultBool:
...

@ -1,16 +0,0 @@
import dynamix_sdk.base as _base
class CloudapiComputeDiskResizeResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeDiskResizeProtocol(_base.BasePostAPIFunctionProtocol):
def disk_resize(
self,
*,
vm_id: int,
disk_id: int,
disk_size_gb: int,
) -> CloudapiComputeDiskResizeResultBool:
...

@ -0,0 +1,20 @@
import dynamix_sdk.base as _base
class CloudapiComputeDiskSwitchToReplicationResultBool(
_base.BaseAPIResultBool,
):
pass
class CloudapiComputeDiskSwitchToReplicationProtocol(
_base.BasePostAPIFunctionProtocol,
):
def disk_switch_to_replication(
self,
*,
vm_id: int,
disk_id: int,
stop_replication: bool = False,
) -> CloudapiComputeDiskSwitchToReplicationResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiComputeEnableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeEnableProtocol(_base.BasePostAPIFunctionProtocol):
def enable(
self,
*,
vm_id: int,
) -> CloudapiComputeEnableResultBool:
...

@ -1,5 +1,3 @@
import typing as _typing
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested import dynamix_sdk.api._nested as _nested
@ -15,6 +13,8 @@ class CloudapiComputeGetResultModel(_base.BaseAPIResultModel):
arch: str arch: str
auto_start: bool auto_start: bool
boot_disk_size_gb: int boot_disk_size_gb: int
boot_image_id: int
boot_loader_metaiso: _nested.BootLoaderMetaisoAPIResultNM | None
boot_loader_type: _nested.BootLoaderType boot_loader_type: _nested.BootLoaderType
boot_mode: _nested.BootMode boot_mode: _nested.BootMode
boot_order: list[_nested.BootDevice] boot_order: list[_nested.BootDevice]
@ -39,14 +39,14 @@ class CloudapiComputeGetResultModel(_base.BaseAPIResultModel):
hot_resize: bool hot_resize: bool
hp_backed: bool hp_backed: bool
id: int id: int
image_id: int image_id: None | int
image_name: None | str image_name: None | str
interfaces: list[_nested.InterfaceForComputeGetAPIResultNM] interfaces: list[_nested.InterfaceForComputeGetAPIResultNM]
live_migration_job_id: int live_migration_job_id: int
lock_status: _nested.LockStatus lock_status: _nested.LockStatus
manager_id: int manager_id: int
manager_type: str manager_type: str
migration_job: int migration_job_id: int
milestones: int milestones: int
name: str name: str
need_reboot: bool need_reboot: bool
@ -54,6 +54,7 @@ class CloudapiComputeGetResultModel(_base.BaseAPIResultModel):
numa_affinity: _nested.NumaAffinity numa_affinity: _nested.NumaAffinity
numa_node_id: int numa_node_id: int
os_users: list[_nested.OSUserAPIResultNM] os_users: list[_nested.OSUserAPIResultNM]
os_version: str
pinned_to_stack: bool pinned_to_stack: bool
preferred_cpu_cores: list[int] preferred_cpu_cores: list[int]
ram_size_mb: int ram_size_mb: int
@ -63,17 +64,15 @@ class CloudapiComputeGetResultModel(_base.BaseAPIResultModel):
rg_id: int rg_id: int
rg_name: str rg_name: str
snapshot_sets: list[_nested.SnapshotSetAPIResultNM] snapshot_sets: list[_nested.SnapshotSetAPIResultNM]
stateless_sep_id: int stateless_sep_id: int | None = None
stateless_sep_type: str stateless_sep_type: str | None = None
status: _nested.VMStatus status: _nested.VMStatus
tags: dict tags: dict
tech_status: _nested.VMTechStatus tech_status: _nested.VMTechStatus
updated_by: str updated_by: str
updated_timestamp: int updated_timestamp: int
user_managed: bool user_managed: bool
vgpus: list[dict[str, _typing.Any]] vgpus: list[_nested.VGPUAPIResultNM]
virtual_image_id: int
virtual_image_name: None | str
vm_ci_id: int vm_ci_id: int
vnc_password: str vnc_password: str
guest_agent: _nested.GuestAgentAPIResultNM guest_agent: _nested.GuestAgentAPIResultNM

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiComputeGetConsoleUrlResultStr(_base.BaseAPIResultStr):
pass
class CloudapiComputeGetConsoleUrlProtocol(_base.BasePostAPIFunctionProtocol):
def get_console_url(
self,
*,
vm_id: int,
) -> CloudapiComputeGetConsoleUrlResultStr:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
class CloudapiComputeGuestAgentDisableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeGuestAgentDisableProtocol(
_base.BasePostAPIFunctionProtocol
):
def guest_agent_disable(
self,
*,
vm_id: int,
) -> CloudapiComputeGuestAgentDisableResultBool:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
class CloudapiComputeGuestAgentEnableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeGuestAgentEnableProtocol(
_base.BasePostAPIFunctionProtocol
):
def guest_agent_enable(
self,
*,
vm_id: int,
) -> CloudapiComputeGuestAgentEnableResultBool:
...

@ -0,0 +1,21 @@
import typing as _typing
import dynamix_sdk.base as _base
class CloudapiComputeGuestAgentExecuteResultModel(
_base.BaseAPIResultModel,
):
exec_result: dict
class CloudapiComputeGuestAgentExecuteProtocol(
_base.BasePostAPIFunctionProtocol
):
def guest_agent_execute(
self,
*,
vm_id: int,
cmd: str,
args: dict[str, _typing.Any],
) -> CloudapiComputeGuestAgentExecuteResultModel:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiComputeGuestAgentFeatureUpdateResultBool(
_base.BaseAPIResultBool,
):
pass
class CloudapiComputeGuestAgentFeatureUpdateProtocol(
_base.BasePostAPIFunctionProtocol
):
def guest_agent_feature_update(
self,
*,
vm_id: int,
) -> CloudapiComputeGuestAgentFeatureUpdateResultBool:
...

@ -18,6 +18,7 @@ class CloudapiComputeListProtocol(_base.BasePostAPIFunctionProtocol):
include_deleted: bool = False, include_deleted: bool = False,
ip_addr: str | None = None, ip_addr: str | None = None,
name: str | None = None, name: str | None = None,
zone_id: int | None = None,
page_number: int | None = None, page_number: int | None = None,
page_size: int | None = None, page_size: int | None = None,
rg_id: int | None = None, rg_id: int | None = None,

@ -0,0 +1,27 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiComputeListDeletedResultModel(_base.BaseAPIResultModel):
data: list[_nested.VMAPIResultNM]
entry_count: int
class CloudapiComputeListDeletedProtocol(_base.BasePostAPIFunctionProtocol):
def list_deleted(
self,
*,
id: int | None = None,
name: str | None = None,
account_id: int | None = None,
rg_name: str | None = None,
rg_id: int | None = None,
tech_status: _nested.VMTechStatus | None = None,
ip_addr: str | None = None,
ext_net_name: str | None = None,
ext_net_id: int | None = None,
page_number: int | None = None,
page_size: int | None = None,
sort_by: str | None = None,
) -> CloudapiComputeListDeletedResultModel:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiComputeMigrateToZoneResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeMigrateToZoneProtocol(_base.BasePostAPIFunctionProtocol):
def migrate_to_zone(
self,
*,
vm_id: int,
zone_id: int,
) -> CloudapiComputeMigrateToZoneResultBool:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiComputeMoveToRgResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeMoveToRgProtocol(_base.BasePostAPIFunctionProtocol):
def move_to_rg(
self,
*,
vm_id: int,
rg_id: int,
new_vm_name: str | None = None,
auto_start: bool = False,
force_stop: bool = False,
) -> CloudapiComputeMoveToRgResultBool:
...

@ -16,6 +16,9 @@ class CloudapiComputeNetAttachProtocol(_base.BasePostAPIFunctionProtocol):
vm_id: int, vm_id: int,
net_type: _nested.NetType, net_type: _nested.NetType,
net_id: int, net_id: int,
security_group_ids: None | list[int] = None,
security_group_mode: bool = False,
enabled: bool = True,
ip_addr: None | str = None, ip_addr: None | str = None,
mtu: None | int = None, mtu: None | int = None,
mac: None | str = None, mac: None | str = None,

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiComputePowerCycleResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputePowerCycleProtocol(_base.BasePostAPIFunctionProtocol):
def power_cycle(
self,
*,
vm_id: int,
) -> CloudapiComputePowerCycleResultBool:
...

@ -11,6 +11,7 @@ class CloudapiComputeRedeployProtocol(_base.BasePostAPIFunctionProtocol):
self, self,
*, *,
vm_id: int, vm_id: int,
storage_policy_id: int,
start: bool = False, start: bool = False,
boot_disk_size_gb: int | None = None, boot_disk_size_gb: int | None = None,
data_disks_change_mode: _nested.DataDisksChangeMode = ( data_disks_change_mode: _nested.DataDisksChangeMode = (
@ -18,5 +19,6 @@ class CloudapiComputeRedeployProtocol(_base.BasePostAPIFunctionProtocol):
), ),
force_stop: bool = False, force_stop: bool = False,
image_id: int | None = None, image_id: int | None = None,
os_version: str | None = None,
) -> CloudapiComputeRedeployResultBool: ) -> CloudapiComputeRedeployResultBool:
... ...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiComputeResetResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeResetProtocol(_base.BasePostAPIFunctionProtocol):
def reset(
self,
*,
vm_id: int,
) -> CloudapiComputeResetResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiComputeRestoreResultBool(_base.BaseAPIResultBool):
pass
class CloudapiComputeRestoreProtocol(_base.BasePostAPIFunctionProtocol):
def restore(
self,
*,
vm_id: int,
) -> CloudapiComputeRestoreResultBool:
...

@ -23,5 +23,6 @@ class CloudapiComputeUpdateProtocol(_base.BasePostAPIFunctionProtocol):
boot_mode: _nested.BootMode | None = None, boot_mode: _nested.BootMode | None = None,
network_interface_naming: _nested.NetIfaceNamingTemplate | None = None, network_interface_naming: _nested.NetIfaceNamingTemplate | None = None,
hot_resize: bool | None = None, hot_resize: bool | None = None,
os_version: str | None = None,
) -> CloudapiComputeUpdateResultBool: ) -> CloudapiComputeUpdateResultBool:
... ...

@ -1,4 +1,5 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
from .change_disk_storage_policy import *
from .create import * from .create import *
from .delete import * from .delete import *
from .delete_disks import * from .delete_disks import *
@ -19,6 +20,7 @@ from .unshare import *
class CloudapiDisksAPI( class CloudapiDisksAPI(
_base.BaseAPI, _base.BaseAPI,
CloudapiDisksChangeDiskStoragePolicyProtocol,
CloudapiDisksCreateProtocol, CloudapiDisksCreateProtocol,
CloudapiDisksDeleteDisksProtocol, CloudapiDisksDeleteDisksProtocol,
CloudapiDisksDeleteProtocol, CloudapiDisksDeleteProtocol,

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiDisksChangeDiskStoragePolicyResultBool(_base.BaseAPIResultBool):
pass
class CloudapiDisksChangeDiskStoragePolicyProtocol(
_base.BasePostAPIFunctionProtocol,
):
def change_disk_storage_policy(
self,
*,
disk_id: int,
storage_policy_id: int,
) -> CloudapiDisksChangeDiskStoragePolicyResultBool:
...

@ -12,7 +12,7 @@ class CloudapiDisksCreateProtocol(_base.BasePostAPIFunctionProtocol):
account_id: int, account_id: int,
name: str, name: str,
size_gb: int, size_gb: int,
iops: int = 2000, storage_policy_id: int,
description: str | None = None, description: str | None = None,
sep_id: int | None = None, sep_id: int | None = None,
sep_pool_name: str | None = None, sep_pool_name: str | None = None,

@ -33,12 +33,13 @@ class CloudapiDisksGetResultModel(_base.BaseAPIResultModel):
sep_type: _nested.SEPType sep_type: _nested.SEPType
shared: bool shared: bool
size_available: float size_available: float
size_available: float
size_max_gb: int size_max_gb: int
size_used: float size_used: float
snapshots: list[_nested.SnapshotAPIResultNM] snapshots: list[_nested.SnapshotAPIResultNM]
status: _nested.DiskStatus status: _nested.DiskStatus
storage_policy_id: int
tech_status: _nested.DiskTechStatus tech_status: _nested.DiskTechStatus
to_clean: bool
type: _nested.DiskType type: _nested.DiskType
updated_by: str updated_by: str
vm_id: int | None vm_id: int | None

@ -23,6 +23,7 @@ class CloudapiDisksListProtocol(_base.BasePostAPIFunctionProtocol):
shared: bool | None = None, shared: bool | None = None,
sort_by: str | None = None, sort_by: str | None = None,
status: _nested.DiskStatus | None = None, status: _nested.DiskStatus | None = None,
storage_policy_id: int | None = None,
type: _nested.DiskType | None = None, type: _nested.DiskType | None = None,
) -> CloudapiDisksListResultModel: ) -> CloudapiDisksListResultModel:
... ...

@ -19,6 +19,7 @@ class CloudapiDisksListUnattachedProtocol(_base.BasePostAPIFunctionProtocol):
page_size: int | None = None, page_size: int | None = None,
sep_id: int | None = None, sep_id: int | None = None,
sep_pool_name: str | None = None, sep_pool_name: str | None = None,
storage_policy_id: int | None = None,
sort_by: str | None = None, sort_by: str | None = None,
status: _nested.DiskStatus | None = None, status: _nested.DiskStatus | None = None,
type: _nested.DiskType | None = None, type: _nested.DiskType | None = None,

@ -20,7 +20,7 @@ class CloudapiExtnetGetResultModel(_base.BaseAPIResultModel):
mtu: int mtu: int
name: str name: str
net_ip: str net_ip: str
net_mask: int net_prefix: int
network_ids: _nested.NetworkIDsAPIResultNM network_ids: _nested.NetworkIDsAPIResultNM
ntp_servers: list[str] ntp_servers: list[str]
ovs_bridge: str ovs_bridge: str
@ -29,6 +29,7 @@ class CloudapiExtnetGetResultModel(_base.BaseAPIResultModel):
primary_vnfdev_id: int primary_vnfdev_id: int
redundant: bool redundant: bool
secondary_vnfdev_id: int secondary_vnfdev_id: int
security_group_mode: bool
shared_with: list[int] shared_with: list[int]
status: _nested.ExtNetStatus status: _nested.ExtNetStatus
vlan_id: int vlan_id: int

@ -16,6 +16,7 @@ class CloudapiExtnetListProtocol(_base.BasePostAPIFunctionProtocol):
name: str | None = None, name: str | None = None,
net_ip: str | None = None, net_ip: str | None = None,
ovs_bridge: str | None = None, ovs_bridge: str | None = None,
zone_id: int | None = None,
page_number: int | None = None, page_number: int | None = None,
page_size: int | None = None, page_size: int | None = None,
sort_by: str | None = None, sort_by: str | None = None,

@ -7,7 +7,7 @@ class CloudapiFlipgroupCreateResultModel(_base.BaseAPIResultModel):
id: int id: int
ip_addr: str ip_addr: str
name: str name: str
net_mask: int net_prefix: int
class CloudapiFlipgroupCreateProtocol(_base.BasePostAPIFunctionProtocol): class CloudapiFlipgroupCreateProtocol(_base.BasePostAPIFunctionProtocol):

@ -1,4 +1,5 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
from .change_storage_policy import *
from .create import * from .create import *
from .create_virtual import * from .create_virtual import *
from .delete import * from .delete import *
@ -10,6 +11,7 @@ from .rename import *
class CloudapiImageAPI( class CloudapiImageAPI(
_base.BaseAPI, _base.BaseAPI,
CloudapiImageChangeStoragePolicyProtocol,
CloudapiImageCreateProtocol, CloudapiImageCreateProtocol,
CloudapiImageCreateVirtualProtocol, CloudapiImageCreateVirtualProtocol,
CloudapiImageDeleteProtocol, CloudapiImageDeleteProtocol,

@ -0,0 +1,17 @@
import dynamix_sdk.base as _base
class CloudapiImageChangeStoragePolicyResultBool(_base.BaseAPIResultBool):
pass
class CloudapiImageChangeStoragePolicyProtocol(
_base.BasePostAPIFunctionProtocol,
):
def change_storage_policy(
self,
*,
image_id: int,
storage_policy_id: int,
) -> CloudapiImageChangeStoragePolicyResultBool:
...

@ -12,10 +12,10 @@ class CloudapiImageCreateProtocol(_base.BasePostAPIFunctionProtocol):
*, *,
account_id: int, account_id: int,
boot_mode: _nested.BootMode, boot_mode: _nested.BootMode,
drivers: list[_nested.Driver],
boot_loader_type: _nested.BootLoaderType, boot_loader_type: _nested.BootLoaderType,
name: str, name: str,
download_url: str, download_url: str,
storage_policy_id: int,
hot_resize: bool = False, hot_resize: bool = False,
network_interface_naming: _nested.NetIfaceNamingTemplate = ( network_interface_naming: _nested.NetIfaceNamingTemplate = (
_nested.NetIfaceNamingTemplate.ens _nested.NetIfaceNamingTemplate.ens

@ -11,5 +11,6 @@ class CloudapiImageCreateVirtualProtocol(_base.BasePostAPIFunctionProtocol):
*, *,
name: str, name: str,
target_image_id: int, target_image_id: int,
account_id: int | None = None,
) -> CloudapiImageCreateVirtualResultInt: ) -> CloudapiImageCreateVirtualResultInt:
... ...

@ -36,11 +36,13 @@ class CloudapiImageGetResultModel(_base.BaseAPIResultModel):
rescue_cd: bool rescue_cd: bool
sep_id: int sep_id: int
sep_pool_name: str sep_pool_name: str
storage_policy_id: int
shared_with: list[int] shared_with: list[int]
size_gb: int size_gb: int
snapshot_id: str = '' snapshot_id: str = ''
status: _nested.ImageStatus status: _nested.ImageStatus
tech_status: _nested.ImageTechStatus tech_status: _nested.ImageTechStatus
to_clean: bool
type: _nested.ImageType type: _nested.ImageType
unc_path: str unc_path: str
version: str version: str

@ -26,5 +26,6 @@ class CloudapiImageListProtocol(_base.BasePostAPIFunctionProtocol):
sort_by: str | None = None, sort_by: str | None = None,
status: _nested.ImageStatus | None = None, status: _nested.ImageStatus | None = None,
type: _nested.ImageType | None = None, type: _nested.ImageType | None = None,
storage_policy_id: int | None = None,
) -> CloudapiImageListResultModel: ) -> CloudapiImageListResultModel:
... ...

@ -13,13 +13,11 @@ class CloudapiK8ciListProtocol(_base.BasePostAPIFunctionProtocol):
*, *,
id: int | None = None, id: int | None = None,
include_disabled: bool = False, include_disabled: bool = False,
master_node_driver: _nested.Driver | None = None,
name: str | None = None, name: str | None = None,
network_plugin: _nested.K8sNetworkPlugin | None = None, network_plugin: _nested.K8sNetworkPlugin | None = None,
page_number: int | None = None, page_number: int | None = None,
page_size: int | None = None, page_size: int | None = None,
sort_by: str | None = None, sort_by: str | None = None,
status: _nested.K8CIStatus | None = None, status: _nested.K8CIStatus | None = None,
worker_node_driver: _nested.Driver | None = None,
) -> CloudapiK8ciListResultModel: ) -> CloudapiK8ciListResultModel:
... ...

@ -12,12 +12,10 @@ class CloudapiK8ciListDeletedProtocol(_base.BasePostAPIFunctionProtocol):
self, self,
*, *,
id: None | int = None, id: None | int = None,
master_node_driver: _nested.Driver | None = None,
name: str | None = None, name: str | None = None,
network_plugin: _nested.K8sNetworkPlugin | None = None, network_plugin: _nested.K8sNetworkPlugin | None = None,
page_number: int | None = None, page_number: int | None = None,
page_size: int | None = None, page_size: int | None = None,
sort_by: str | None = None, sort_by: str | None = None,
worker_node_driver: _nested.Driver | None = None,
) -> CloudapiK8ciListDeletedResultModel: ) -> CloudapiK8ciListDeletedResultModel:
... ...

@ -1,11 +1,24 @@
import dynamix_sdk.base as _base import dynamix_sdk.base as _base
from .create import * from .create import *
from .delete import * from .delete import *
from .delete_master_from_group import *
from .delete_worker_from_group import *
from .disable import *
from .enable import *
from .get import * from .get import *
from .get_config import * from .get_config import *
from .get_node_annotations import *
from .get_node_labels import *
from .get_node_taints import *
from .list import * from .list import *
from .list_deleted import * from .list_deleted import *
from .migrate_to_zone import *
from .restore import * from .restore import *
from .start import *
from .stop import *
from .update import *
from .update_worker_nodes_meta_data import *
from .worker_add import *
from .worker_reset import * from .worker_reset import *
from .worker_restart import * from .worker_restart import *
from .workers_group_add import * from .workers_group_add import *
@ -16,12 +29,25 @@ from .workers_group_get_by_name import *
class CloudapiK8sAPI( class CloudapiK8sAPI(
_base.BaseAPI, _base.BaseAPI,
CloudapiK8sCreateProtocol, CloudapiK8sCreateProtocol,
CloudapiK8sDeleteMasterFromGroupProtocol,
CloudapiK8sDeleteProtocol, CloudapiK8sDeleteProtocol,
CloudapiK8sDeleteWorkerFromGroupProtocol,
CloudapiK8sDisableProtocol,
CloudapiK8sEnableProtocol,
CloudapiK8sGetConfigProtocol, CloudapiK8sGetConfigProtocol,
CloudapiK8sGetNodeAnnotationsProtocol,
CloudapiK8sGetNodeLabelsProtocol,
CloudapiK8sGetNodeTaintsProtocol,
CloudapiK8sGetProtocol, CloudapiK8sGetProtocol,
CloudapiK8sListDeletedProtocol, CloudapiK8sListDeletedProtocol,
CloudapiK8sListProtocol, CloudapiK8sListProtocol,
CloudapiK8sMigrateToZoneProtocol,
CloudapiK8sRestoreProtocol, CloudapiK8sRestoreProtocol,
CloudapiK8sStartProtocol,
CloudapiK8sStopProtocol,
CloudapiK8sUpdateProtocol,
CloudapiK8sUpdateWorkerNodesMetaDataProtocol,
CloudapiK8sWorkerAddProtocol,
CloudapiK8sWorkerResetProtocol, CloudapiK8sWorkerResetProtocol,
CloudapiK8sWorkerRestartProtocol, CloudapiK8sWorkerRestartProtocol,
CloudapiK8sWorkersGroupAddProtocol, CloudapiK8sWorkersGroupAddProtocol,

@ -15,6 +15,7 @@ class CloudapiK8sCreateProtocol(_base.BasePostAPIFunctionProtocol):
k8ci_id: int, k8ci_id: int,
worker_group_name: str, worker_group_name: str,
network_plugin: _nested.K8sNetworkPlugin, network_plugin: _nested.K8sNetworkPlugin,
storage_policy_id: int,
master_node_sep_id: int | None = None, master_node_sep_id: int | None = None,
master_node_sep_pool_name: str | None = None, master_node_sep_pool_name: str | None = None,
worker_node_sep_id: int | None = None, worker_node_sep_id: int | None = None,
@ -44,7 +45,7 @@ class CloudapiK8sCreateProtocol(_base.BasePostAPIFunctionProtocol):
ci_user_data: str | None = None, ci_user_data: str | None = None,
additional_sans: list[str] | None = None, additional_sans: list[str] | None = None,
chipset: _nested.Chipset = _nested.Chipset.i440fx, chipset: _nested.Chipset = _nested.Chipset.i440fx,
lb_sysctl_params: list[dict] | None = None, lb_sysctl_params: list[dict[str, str]] | None = None,
zone_id: int | None = None, zone_id: int | None = None,
) -> CloudapiK8sCreateResultStr: ) -> CloudapiK8sCreateResultStr:
... ...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiK8sDeleteMasterFromGroupResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sDeleteMasterFromGroupProtocol(
_base.BasePostAPIFunctionProtocol,
):
def delete_master_from_group(
self,
*,
k8s_id: int,
master_group_id: int,
master_node_ids: list[int],
) -> CloudapiK8sDeleteMasterFromGroupResultBool:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiK8sDeleteWorkerFromGroupResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sDeleteWorkerFromGroupProtocol(
_base.BasePostAPIFunctionProtocol,
):
def delete_worker_from_group(
self,
*,
k8s_id: int,
worker_group_id: int,
worker_node_id: int,
) -> CloudapiK8sDeleteWorkerFromGroupResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiK8sDisableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sDisableProtocol(_base.BasePostAPIFunctionProtocol):
def disable(
self,
*,
k8s_id: int,
) -> CloudapiK8sDisableResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiK8sEnableResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sEnableProtocol(_base.BasePostAPIFunctionProtocol):
def enable(
self,
*,
k8s_id: int,
) -> CloudapiK8sEnableResultBool:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiK8sGetNodeAnnotationsResultStr(_base.BaseAPIResultStr):
pass
class CloudapiK8sGetNodeAnnotationsProtocol(_base.BasePostAPIFunctionProtocol):
def get_node_annotations(
self,
*,
k8s_id: int,
node_id: int,
) -> CloudapiK8sGetNodeAnnotationsResultStr:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiK8sGetNodeLabelsResultStr(_base.BaseAPIResultStr):
pass
class CloudapiK8sGetNodeLabelsProtocol(_base.BasePostAPIFunctionProtocol):
def get_node_labels(
self,
*,
k8s_id: int,
node_id: int,
) -> CloudapiK8sGetNodeLabelsResultStr:
...

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiK8sGetNodeTaintsResultStr(_base.BaseAPIResultStr):
pass
class CloudapiK8sGetNodeTaintsProtocol(_base.BasePostAPIFunctionProtocol):
def get_node_taints(
self,
*,
k8s_id: int,
node_id: int,
) -> CloudapiK8sGetNodeTaintsResultStr:
...

@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiK8sListResultModel(_base.BaseAPIResultModel): class CloudapiK8sListResultModel(_base.BaseAPIResultModel):
data: list[_nested.K8sListAPIResultNM] data: list[_nested.K8sAPIResultNM]
entry_count: int entry_count: int
@ -22,6 +22,7 @@ class CloudapiK8sListProtocol(_base.BasePostAPIFunctionProtocol):
rg_id: int | None = None, rg_id: int | None = None,
sort_by: str | None = None, sort_by: str | None = None,
status: _nested.K8sStatus | None = None, status: _nested.K8sStatus | None = None,
zone_id: int | None = None,
tech_status: _nested.K8sTechStatus | None = None, tech_status: _nested.K8sTechStatus | None = None,
) -> CloudapiK8sListResultModel: ) -> CloudapiK8sListResultModel:
... ...

@ -3,7 +3,7 @@ import dynamix_sdk.api._nested as _nested
class CloudapiK8sListDeletedResultModel(_base.BaseAPIResultModel): class CloudapiK8sListDeletedResultModel(_base.BaseAPIResultModel):
data: list[_nested.K8sListDeletedAPIResultNM] data: list[_nested.K8sAPIResultNM]
entry_count: int entry_count: int

@ -0,0 +1,15 @@
import dynamix_sdk.base as _base
class CloudapiK8sMigrateToZoneResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sMigrateToZoneProtocol(_base.BasePostAPIFunctionProtocol):
def migrate_to_zone(
self,
*,
k8s_id: int,
zone_id: int,
) -> CloudapiK8sMigrateToZoneResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiK8sStartResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sStartProtocol(_base.BasePostAPIFunctionProtocol):
def start(
self,
*,
k8s_id: int,
) -> CloudapiK8sStartResultBool:
...

@ -0,0 +1,14 @@
import dynamix_sdk.base as _base
class CloudapiK8sStopResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sStopProtocol(_base.BasePostAPIFunctionProtocol):
def stop(
self,
*,
k8s_id: int,
) -> CloudapiK8sStopResultBool:
...

@ -0,0 +1,16 @@
import dynamix_sdk.base as _base
class CloudapiK8sUpdateResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sUpdateProtocol(_base.BasePostAPIFunctionProtocol):
def update(
self,
*,
k8s_id: int,
description: str | None = None,
name: str | None = None,
) -> CloudapiK8sUpdateResultBool:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
class CloudapiK8sUpdateWorkerNodesMetaDataResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sUpdateWorkerNodesMetaDataProtocol(
_base.BasePostAPIFunctionProtocol,
):
def update_worker_nodes_meta_data(
self,
*,
k8s_id: int,
worker_group_id: int,
ci_user_data: str,
) -> CloudapiK8sUpdateWorkerNodesMetaDataResultBool:
...

@ -0,0 +1,18 @@
import dynamix_sdk.base as _base
import dynamix_sdk.api._nested as _nested
class CloudapiK8sWorkerAddResultBool(_base.BaseAPIResultBool):
pass
class CloudapiK8sWorkerAddProtocol(_base.BasePostAPIFunctionProtocol):
def worker_add(
self,
*,
k8s_id: int,
worker_group_id: int,
node_count: int = 1,
chipset: _nested.Chipset = _nested.Chipset.i440fx,
) -> CloudapiK8sWorkerAddResultBool:
...

@ -12,6 +12,7 @@ class CloudapiK8sWorkersGroupAddProtocol(_base.BasePostAPIFunctionProtocol):
*, *,
k8s_id: int, k8s_id: int,
name: str, name: str,
storage_policy_id: int,
sep_id: int | None = None, sep_id: int | None = None,
sep_pool_name: str | None = None, sep_pool_name: str | None = None,
labels: list[str] | None = None, labels: list[str] | None = None,

@ -14,6 +14,7 @@ class CloudapiKvmx86CreateProtocol(_base.BasePostAPIFunctionProtocol):
name: str, name: str,
ram_size_mb: int, ram_size_mb: int,
rg_id: int, rg_id: int,
storage_policy_id: int,
boot_disk_size_gb: None | int = None, boot_disk_size_gb: None | int = None,
chipset: _nested.Chipset = _nested.Chipset.i440fx, chipset: _nested.Chipset = _nested.Chipset.i440fx,
ci_user_data: None | dict = None, ci_user_data: None | dict = None,
@ -21,7 +22,6 @@ class CloudapiKvmx86CreateProtocol(_base.BasePostAPIFunctionProtocol):
custom_fields: None | str = None, custom_fields: None | str = None,
data_disks: None | list[_nested.DiskAPIParamsNM] = None, data_disks: None | list[_nested.DiskAPIParamsNM] = None,
description: None | str = None, description: None | str = None,
driver: _nested.Driver = _nested.Driver.KVM_X86,
hp_backed: bool = False, hp_backed: bool = False,
image_id: None | int = None, image_id: None | int = None,
interfaces: None | list[_nested.InterfaceAPIParamsNM] = None, interfaces: None | list[_nested.InterfaceAPIParamsNM] = None,
@ -34,5 +34,6 @@ class CloudapiKvmx86CreateProtocol(_base.BasePostAPIFunctionProtocol):
system_name: None | str = None, system_name: None | str = None,
without_boot_disk: bool = False, without_boot_disk: bool = False,
zone_id: None | int = None, zone_id: None | int = None,
os_version: None | str = None,
) -> CloudapiKvmx86CreateResultInt: ) -> CloudapiKvmx86CreateResultInt:
... ...

@ -14,11 +14,11 @@ class CloudapiKvmx86CreateBlankProtocol(_base.BasePostAPIFunctionProtocol):
name: str, name: str,
ram_size_mb: int, ram_size_mb: int,
rg_id: int, rg_id: int,
storage_policy_id: int,
boot_disk_size_gb: None | int = None, boot_disk_size_gb: None | int = None,
chipset: _nested.Chipset = _nested.Chipset.i440fx, chipset: _nested.Chipset = _nested.Chipset.i440fx,
data_disks: None | list[_nested.DiskAPIParamsNM] = None, data_disks: None | list[_nested.DiskAPIParamsNM] = None,
description: None | str = None, description: None | str = None,
driver: _nested.Driver = _nested.Driver.KVM_X86,
interfaces: None | list[_nested.InterfaceAPIParamsNM] = None, interfaces: None | list[_nested.InterfaceAPIParamsNM] = None,
preferred_cpu_cores: None | list[int] = None, preferred_cpu_cores: None | list[int] = None,
sep_id: None | int = None, sep_id: None | int = None,
@ -33,5 +33,6 @@ class CloudapiKvmx86CreateBlankProtocol(_base.BasePostAPIFunctionProtocol):
), ),
hot_resize: bool = False, hot_resize: bool = False,
zone_id: None | int = None, zone_id: None | int = None,
os_version: None | str = None,
) -> CloudapiKvmx86CreateBlankResultInt: ) -> CloudapiKvmx86CreateBlankResultInt:
... ...

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save