This commit is contained in:
2025-06-06 08:20:45 +03:00
parent 346ffd4255
commit caf367262c
205 changed files with 6115 additions and 200 deletions

View File

@@ -1,16 +1,20 @@
import typing as _typing
import dynamix_sdk.base as _base
from dynamix_sdk.utils import EmptyStr as _EmptyStr
from . import enums as _enums
class AccessAPIResultNM(_base.BaseAPIResultNestedModel):
explicit: bool
explicit: bool | str # BDX-8471
guid: str
access_type: _enums.AccessType
status: str
type: str
user_group_id: str
can_be_deleted: None | bool = None
class AffinityRuleAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
@@ -28,9 +32,11 @@ class QOSAPIResultNM(_base.BaseAPIResultNestedModel):
ingress_rate: int
class VMACLAPIResultNM(_base.BaseAPIResultNestedModel):
class VMACLForComputeGetAPIResultNM( # BDX-8459
_base.BaseAPIResultNestedModel
):
account: list[AccessAPIResultNM]
compute: list[AccessAPIResultNM]
vm: list[AccessAPIResultNM]
rg: list[AccessAPIResultNM]
@@ -60,7 +66,6 @@ class BaseInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
net_id: int
net_mask: int
net_type: _enums.NetType
node_id: int
pci_slot: int
target: str
@@ -68,15 +73,17 @@ class BaseInterfaceAPIResultNM(_base.BaseAPIResultNestedModel):
vnf_ids: list[int]
class InterfaceAPIResultNM(BaseInterfaceAPIResultNM):
class InterfaceForComputeListAPIResultNM(BaseInterfaceAPIResultNM):
net_type: _enums.NetType
class InterfaceForComputeGetAPIResultNM(InterfaceForComputeListAPIResultNM):
qos: QOSAPIResultNM
class OSUserAPIResultNM(_base.BaseAPIResultNestedModel):
login: str
password: str
pub_key: str
guid: str
class VNFDevInterfaceAPIResultNM(BaseInterfaceAPIResultNM):
net_type: _EmptyStr | _enums.NetType
qos: QOSAPIResultNM
class SnapshotSetAPIResultNM(_base.BaseAPIResultNestedModel):
@@ -133,50 +140,42 @@ class ReplicationAPIResultNM(_base.BaseAPIResultNestedModel):
volume_id: str
class BaseDiskAPIResultNM(_base.BaseAPIResultNestedModel):
class BaseDiskForCAComputeAPIResultNM(_base.BaseAPIResultNestedModel):
bus_number: int
id: int
pci_slot: int
class DiskAPIResultNM(BaseDiskAPIResultNM):
class BaseDiskAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
acl: dict
boot_partition: int
created_timestamp: int
deleted_timestamp: int
description: str
destruction_timestamp: int
disk_path: str
grid_id: int
guid: int
id: int
image_id: int
images: list
image_ids: list[int]
io_tune: IOTuneAPIResultNM
iqn: str
login: str
milestones: int
name: str
order: int
params: str
parent_id: int
password: str
present_to: list[int]
purge_timestamp: int
reality_device_number: int
replication_dict: dict
replication: ReplicationAPIResultNM | dict
res_id: str
role: str
sep_id: int
sep_pool_name: str
shareable: bool
size_max: int
shared: bool
size_max_gb: int
size_used: float
snapshots: list[SnapshotAPIResultNM]
status: _enums.DiskStatus
tech_status: _enums.DiskTechStatus
type: _enums.DiskType
updated_timestamp: int = 0
@property
@@ -191,35 +190,80 @@ class DiskAPIResultNM(BaseDiskAPIResultNM):
def destruction_datetime(self):
return self._get_datetime_from_timestamp(self.destruction_timestamp)
@property
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
@property
def purge_datetime(self):
return self._get_datetime_from_timestamp(self.purge_timestamp)
@property
def replication(self):
if self.replication_dict:
return ReplicationAPIResultNM(**self.replication_dict)
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class BaseDiskForCADisksAPIResultNM(BaseDiskAPIResultNM):
res_name: str
account_name: str
updated_by: _typing.Any = ''
class DiskForCAComputeGetAPIResultNM(
BaseDiskForCAComputeAPIResultNM,
BaseDiskAPIResultNM,
):
boot_partition: int
disk_path: str
guid: int
iqn: str
login: str
milestones: int
password: str
reality_device_number: int
updated_by: _typing.Any = ''
class DiskForListAndListDeletedAPIResultNM(
BaseDiskForCADisksAPIResultNM,
BaseDiskAPIResultNM,
):
vms: dict[str, str]
device_name: str
vm_id: int | None
vm_name: str | None
sep_type: _enums.SEPType
class DiskForListUnattachedAPIResultNM(
BaseDiskForCADisksAPIResultNM,
BaseDiskAPIResultNM,
):
boot_partition: int
disk_path: str
guid: int
iqn: str
login: str
milestones: int
password: str
pci_slot: int
purge_attempt_count: int
reality_device_number: int
reference_id: str
vm_id: int
class TenantQuotasAPIResultNM(_base.BaseAPIResultNestedModel):
cpu: int
disk_size: int
cpu_count: int
disk_size_gb: int
ext_traffic: int
gpu: int
public_ip: int
ram: float | int
storage: int
gpu_count: int
public_ip_count: int
ram_size_mb: float | int
storage_size_gb: int
class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
acl: list[AccessAPIResultNM]
compute_features: list[_enums.ComputeFeature]
vm_features: list[_enums.VMFeature]
cpu_allocation_parameter: str
cpu_allocation_ratio: int
created_by: str
@@ -261,6 +305,29 @@ class ResourceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class AccountAPIResultNM(_base.BaseAPIResultNestedModel):
acl: list[AccessAPIResultNM]
vm_features: list[_enums.VMFeature]
created_timestamp: int
deleted_timestamp: int
id: int
name: str
status: _enums.AccountStatus
updated_timestamp: int
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
@@ -270,14 +337,14 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
anti_affinity_rules: list[AffinityRuleAPIResultNM]
arch: str
auto_start: bool
boot_disk_size: int
boot_disk_size_gb: int
boot_order: list[_enums.BootDevice]
cd_image_id: int
cdrom_image_id: int
chipset: _enums.Chipset
clone_ids: list[int]
clone_reference: int
compute_ci_id: int
cpu: int
vm_ci_id: int
cpu_count: int
cpu_pin: bool
created_by: str
created_timestamp: int
@@ -287,7 +354,7 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
description: str
devices: dict
driver: _enums.Driver
gpu_ids: list[int]
vgpus: list[dict[str, _typing.Any]]
grid_id: int
guid: int
hp_backed: bool
@@ -304,7 +371,7 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
numa_node_id: int
pinned: bool
preferred_cpu_cores: list[int]
ram: int
ram_size_mb: int
reference_id: str
registered: bool
res_name: str
@@ -336,8 +403,536 @@ class BaseVMAPIResultNM(_base.BaseAPIResultNestedModel):
class VMAPIResultNM(BaseVMAPIResultNM):
acl: list # BDX-7995
disks: list[BaseDiskAPIResultNM]
interfaces: list[BaseInterfaceAPIResultNM]
acl: list[_typing.Any] # BDX-7995
disks: list[BaseDiskForCAComputeAPIResultNM]
interfaces: list[InterfaceForComputeListAPIResultNM]
total_disks_size: int
vins_count: int
class VMCountsAPIResultNM(_base.BaseAPIResultNestedModel):
started: int
stopped: int
class BaseImageAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
arch: str
boot_mode: _enums.BootMode | _EmptyStr | None
bootable: bool
description: str
drivers: list[_enums.Driver]
hot_resize: bool
id: int
link_to: int
name: str
network_interface_naming: _enums.NetIfaceNamingTemplate
os_user_name: str | None
sep_id: int
sep_pool_name: str
size_gb: int
status: _enums.ImageStatus
type: _enums.ImageType
@property
def boot_loader_type(self):
if self.type in _enums.BootLoaderType._member_names_:
return _enums.BootLoaderType[self.type]
class ImageForListAPIResultNM(BaseImageAPIResultNM):
cdrom: bool
virtual: bool
class ImageHistoryRecordAPIResultNM(_base.BaseAPIResultNestedModel):
guid: str
id: int
timestamp: int
@property
def datetime(self):
return self._get_datetime_from_timestamp(self.timestamp)
class VINSVMAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
name: str
class BaseVINSAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
created_by: str
created_timestamp: int
deleted_by: str
deleted_timestamp: int
id: int
name: str
net_ip: str
rg_id: int
rg_name: str
status: _enums.VINSStatus
updated_by: str
updated_timestamp: int
vxlan_id: int
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class VINSForListAPIResultNM(BaseVINSAPIResultNM):
ext_net_id: int
ext_net_ip: str
free_ip_count: int
class VINSForListDeletedAPIResultNM(BaseVINSAPIResultNM):
ext_net_ip: str
primary_vnfdev_id: int
class VNFHostDeviceAPIResultNM(_base.BaseAPIResultNestedModel):
device_id: int
iface01_name: str
iface02_name: str
class VNFHostDevicesAPIResultNM(_base.BaseAPIResultNestedModel):
primary: VNFHostDeviceAPIResultNM
class RouteAPIResultNM(_base.BaseAPIResultNestedModel):
dst_net_ip: str
dst_net_mask: str
gateway: str
guid: str
id: int
vm_ids: list[int]
class BaseVNFAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
created_timestamp: int
devices: VNFHostDevicesAPIResultNM
grid_id: int
guid: int
id: int
lock_status: _enums.LockStatus
milestones: int
owner_id: int
owner_type: _enums.NetType
pure_virtual: bool
routes: list[RouteAPIResultNM]
status: _enums.VNFDevStatus
tech_status: _enums.VNFDevTechStatus
type: _enums.VNFType
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
class DHCPReservationAPIResultNM(_base.BaseAPIResultNestedModel):
ip_addr: str
mac: str
type: _enums.DHCPReservationType
vm_id: int
account_id: None | int = None
client_type: None | str = None
description: None | str = None
domain_name: None | str = None
hostname: None | str = None
class DHCPVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
default_gw: str
dns_servers: list[str]
ip_pool_end: str
ip_pool_start: str
lease_time: int
net_ip: str
net_mask: int
reservations: list[DHCPReservationAPIResultNM]
class GWVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
default_gw: str
ext_net_id: int
ext_net_ip: str
ext_net_mask: int
qos: _typing.Any
class NATRuleAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
local_ip: str
local_port: int
protocol: _enums.NATRuleProtocol
public_port_end: int
public_port_start: int
vm_id: int
class NATVNFConfigAPIResultNM(_base.BaseAPIResultNestedModel):
net_ip: str
net_mask: int
rules: list[NATRuleAPIResultNM]
class DHCPVNFAPIResultNM(BaseVNFAPIResultNM):
config: DHCPVNFConfigAPIResultNM
class GWVNFAPIResultNM(BaseVNFAPIResultNM):
config: GWVNFConfigAPIResultNM
class NATVNFAPIResultNM(BaseVNFAPIResultNM):
config: NATVNFConfigAPIResultNM
class VNFSAPIResultNM(_base.BaseAPIResultNestedModel):
dhcp: None | DHCPVNFAPIResultNM = None
gw: None | GWVNFAPIResultNM = None
nat: None | NATVNFAPIResultNM = None
class VNFDevMGMTConfigAPIResultNM(_base.BaseAPIResultNestedModel):
ip_addr: str
password: str
ssh_key: str
user: str
class VNFDevResourcesConfigAPIResultNM(_base.BaseAPIResultNestedModel):
cpu_count: int
ram_size_mb: int
stack_id: int
uuid: str
class VNFDevConfigAPIResultNM(_base.BaseAPIResultNestedModel):
mgmt: VNFDevMGMTConfigAPIResultNM
resources: VNFDevResourcesConfigAPIResultNM
class VNFDevAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
capabilities: list[_enums.VNFType]
config: VNFDevConfigAPIResultNM
config_saved: bool
custom_pre_cfg: bool
description: str
grid_id: int
guid: int
id: int
interfaces: list[VNFDevInterfaceAPIResultNM]
lock_status: _enums.LockStatus
milestones: int
name: str
status: _enums.VNFDevStatus
tech_status: _enums.VNFDevTechStatus
type: _enums.VNFDevType
vins_ids: list[int]
vnc_password: str
class BServiceGroupAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
name: str
status: _enums.BServiceGroupStatus
tech_status: _enums.BServiceGroupTechStatus
consistency: bool
vm_count: int
class BServiceVMAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
name: str
bsgroup_id: int
arch: str
account_id: int
rg_id: int
status: _enums.VMStatus
tech_status: _enums.VMTechStatus
stack_id: int
bsgroup_name: str
bsgroup_role: str
class BServiceSnapshotAPIResultNM(_base.BaseAPIResultNestedModel):
timestamp: int
label: str
valid: bool
guid: str
@property
def datetime(self):
return self._get_datetime_from_timestamp(self.timestamp)
class BaseBServiceAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
account_name: str
base_domain: str
created_by: str
created_timestamp: int
deleted_by: str
deleted_timestamp: int
grid_id: int
guid: int
id: int
name: str
parent_service_id: int
parent_service_type: str
rg_id: int
rg_name: str
ssh_user: str
status: _enums.BServiceStatus
tech_status: _enums.BServiceTechStatus
updated_by: str
updated_timestamp: int
user_managed: bool
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class BServiceForListAPIResultNM(BaseBServiceAPIResultNM):
group_ids: list[int]
class BServiceGroupOSUserAPIResultNM(_base.BaseAPIResultNestedModel):
login: str
password: str
class OSUserAPIResultNM(BServiceGroupOSUserAPIResultNM):
pub_key: str
guid: str
class BServiceGroupVMAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
name: str
os_users: list[BServiceGroupOSUserAPIResultNM]
ip_addresses: list[str]
class ExtNetForListAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
ip_cidr: str
name: str
status: _enums.ExtNetStatus
class BaseFlipGroupAPIResultNM(_base.BaseAPIResultNestedModel):
account_id: int
client_ids: list[int]
client_type: _enums.FlipGroupClientType
conn_id: int
conn_type: str
default_gw: str
description: str
grid_id: int
guid: int
id: int
ip_addr: str
milestones: int
name: str
net_id: int
net_type: _enums.FlipGroupNetType
status: _enums.FlipGroupStatus
class FlipGroupForListAPIResultNM(BaseFlipGroupAPIResultNM):
net_mask: int
class LBNodeAPIResultNM(_base.BaseAPIResultNestedModel):
backend_ip_addr: str
frontend_ip_addr: str
guid: str
mgmt_ip: str
net_id: int
vm_id: int
class LBServerSettingsAPIResultNM(_base.BaseAPIResultNestedModel):
downinter: int
fall: int
guid: str
inter: int
maxconn: int
maxqueue: int
rise: int
slowstart: int
weight: int
class LBServerAPIResultNM(_base.BaseAPIResultNestedModel):
check: _enums.LBServerCheck
guid: str
ip_addr: str
name: str
port: int
server_settings: LBServerSettingsAPIResultNM
class LBBackendAPIResultNM(_base.BaseAPIResultNestedModel):
algorithm: _enums.LBBackendAlgorithm
guid: str
name: str
server_default_settings: LBServerSettingsAPIResultNM
servers: list[LBServerAPIResultNM]
class LBFrontendBindingAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
ip_addr: str
port: int
guid: str
class LBFrontendAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
backend_name: str
bindings: list[LBFrontendBindingAPIResultNM]
guid: str
class LBAPIResultNM(_base.BaseAPIResultNestedModel):
acl: list[_typing.Any]
backend_ha_ip_addr: str
backends: list[LBBackendAPIResultNM]
created_by: str
created_timestamp: int
deleted_by: str
deleted_timestamp: int
description: str
dp_api_user: str
ext_net_id: int
frontend_ha_ip_addr: str
frontends: list[LBFrontendAPIResultNM]
grid_id: int
guid: int
ha_mode: bool
id: int
manager_id: int
manager_type: str
milestones: int
name: str
part_of_k8s: bool
primary_node: LBNodeAPIResultNM
rg_id: int
rg_name: str
secondary_node: LBNodeAPIResultNM
status: _enums.LBStatus
sysctl_params: dict[str, str]
tech_status: _enums.LBTechStatus
updated_by: str
updated_timestamp: int
user_managed: bool
vins_id: int
@property
def created_datetime(self):
return self._get_datetime_from_timestamp(self.created_timestamp)
@property
def deleted_datetime(self):
return self._get_datetime_from_timestamp(self.deleted_timestamp)
@property
def updated_datetime(self):
return self._get_datetime_from_timestamp(self.updated_timestamp)
class SEPPoolAPIResultNM(_base.BaseAPIResultNestedModel):
name: str
types: list[_enums.PoolDiskType]
system: str
class SEPAPIResultNM(_base.BaseAPIResultNestedModel):
sep_id: int
sep_name: str
pools: list[SEPPoolAPIResultNM]
class StackAPIResultNM(_base.BaseAPIResultNestedModel):
id: int
name: str
status: _enums.PhysicalNodeStatus
type: str
class LocationAPIResultNM(_base.BaseAPIResultNestedModel):
auth_broker: list[_enums.AuthBroker]
flag: str
grid_id: int
guid: int
id: int
location_code: str
name: str
class AffinityRelationsAPIResultNM(_base.BaseAPIResultNestedModel):
same_node: list[int]
same_node_soft: list[int]
other_node: list[int]
other_node_soft: list[int]
other_node_indirect: list[int]
other_node_indirect_soft: list[int]
class VMACLForComputeUserListAPIResultNM( # BDX-8459
_base.BaseAPIResultNestedModel
):
account: list[AccessAPIResultNM]
vm: list[AccessAPIResultNM]
rg: list[AccessAPIResultNM]
class TaskAPIResultNM(_base.BaseAPIResultNestedModel):
audit_guid: str
guid: None | str = None # BDX-8474
completed: bool
created_timestamp: int
error: str
log: list[str]
result: _typing.Any
stage: str
status: str
updated_by: None | str = None
updated_timestamp: None | 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)