From 09cf10c425268e079c7fa61c1638b37e046ee98b Mon Sep 17 00:00:00 2001 From: ucloud-bot Date: Mon, 12 Jan 2026 10:42:11 +0000 Subject: [PATCH] sdk: rolling update for 0.11.83 --- ucloud/services/uhost/client.py | 149 +++++++++++++----------- ucloud/services/uhost/schemas/apis.py | 98 +++++++++------- ucloud/services/uhost/schemas/models.py | 118 +++++++++---------- ucloud/version.py | 2 +- 4 files changed, 198 insertions(+), 169 deletions(-) diff --git a/ucloud/services/uhost/client.py b/ucloud/services/uhost/client.py index 65e1b5b..2cab87c 100644 --- a/ucloud/services/uhost/client.py +++ b/ucloud/services/uhost/client.py @@ -169,7 +169,7 @@ def create_uhost_instance( - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 `_ - **Region** (str) - (Config) 地域。 参见 `地域和可用区列表 `_ - **ImageId** (str) - (Required) 镜像ID。 请通过 `DescribeImage `_ 获取 - - **LoginMode** (str) - (Required) 主机登陆模式。密码(默认选项): Password,密钥:KeyPair。 + - **LoginMode** (str) - (Required) 主机登陆模式。密码(默认选项): Password,密钥:KeyPair,Password,自制镜像密码:ImagePasswd。 - **Zone** (str) - (Required) 可用区。参见 `可用区列表 `_ - **AlarmTemplateId** (int) - 告警模板id,如果传了告警模板id,且告警模板id正确,则绑定告警模板。绑定告警模板失败不会影响创建主机流程。 - **AutoDataDiskInit** (str) - 数据盘是否需要自动分区挂载。当镜像支持“Cloud-init”Feature时可填写此字段。取值 >“On” 自动挂载(默认值)> “Off” 不自动挂载。 @@ -179,11 +179,12 @@ def create_uhost_instance( - **Disks** (list) - 见 **CreateUHostInstanceParamDisks** 模型定义 - **Features** (dict) - 见 **CreateUHostInstanceParamFeatures** 模型定义 - **GPU** (int) - GPU卡核心数。仅GPU机型支持此字段(可选范围与MachineType+GpuType相关) - - **GpuType** (str) - GPU类型,枚举值["K80", "P40", "V100", "T4","T4A", "T4S","2080Ti","2080Ti-4C","1080Ti", "T4/4", "V100S",2080","2080TiS","2080TiPro","3090","4090","4090Pro","A100","A800"]。MachineType为G时必填 + - **GpuType** (str) - GPU类型,枚举值["K80", "P40", "V100", "T4","T4A", "T4S","2080Ti","2080Ti-4C","1080Ti", "T4/4", "V100S",2080","2080TiS","2080TiPro","3090","4090","4090Pro","4090_48G","A100","A800","H20"]。MachineType为G时必填 - **HostBinding** (bool) - 【私有专区属性】专区云主机开启宿住关联属性 - **HotplugFeature** (bool) - 热升级特性。True为开启,False为未开启,默认False。 - **IsolationGroup** (str) - 硬件隔离组id。可通过DescribeIsolationGroup获取。 - **KeyPairId** (str) - KeypairId 密钥对ID,LoginMode为KeyPair时此项必须。 + - **Labels** (list) - 见 **CreateUHostInstanceParamLabels** 模型定义 - **MachineType** (str) - 云主机机型(V2.0),在本字段和字段UHostType中,仅需要其中1个字段即可。枚举值["N", "C", "G", "O", "OM", "OMEM", "OPRO", "OPROG"]。参考 `云主机机型说明 `_ 。 - **MaxCount** (int) - 本次最大创建主机数量,取值范围是[1,100],默认值为1。- 库存数量不足时,按库存数量创建。- 配额不足时,返回错误。- 使用隔离组时,以隔离组可用数量为准。 - **Memory** (int) - 内存大小。单位:MB。范围 :[1024, 262144],取值为1024的倍数(可选范围参考控制台)。默认值:8192 @@ -213,21 +214,48 @@ def create_uhost_instance( **Request Model** - **CreateUHostInstanceParamSecGroupId** - - **Id** (str) - 安全组 ID。至多可以同时绑定5个安全组。 - - **Priority** (int) - 安全组优先级。取值范围[1, 5] - - **CreateUHostInstanceParamFeatures** - **UNI** (bool) - 弹性网卡特性。开启了弹性网卡权限位,此特性才生效,默认 false 未开启,true 开启。 + **CreateUHostInstanceParamDisksCustomBackup** + - **Day** (str) - Disks.N.BackupMode为"Custom"时,进行设置, 以5天级为基础进行倍数扩增,如5、10、15、20、25、30。 + - **Hour** (str) - Disks.N.BackupMode为"Custom"时,进行设置, 以24小时级为基础进行倍数扩增,如24、48、72、96。 + - **Journal** (str) - Disks.N.BackupMode为"Custom"时,进行设置, 以12小时秒级为基础进行倍数扩增,如12、24、36、48。 + + **CreateUHostInstanceParamNetworkInterfaceEIPGlobalSSH** - **Area** (str) - - **AreaCode** (str) - - **Port** (int) - + **CreateUHostInstanceParamDisks** + - **BackupMode** (str) - 指定快照备份策略。当Disks.N.BackupType为"SNAPSHOT"时此参数生效。枚举值:"Base":标准版,"Ultimate":旗舰版,"Custom":自定义备份链;默认值:"Base"。 + - **BackupType** (str) - 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > SNAPSHOT,快照 \\当前磁盘支持的备份模式参考 `磁盘类型 `_ ,默认值:NONE + - **CouponId** (str) - 云盘代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 + - **CustomBackup** (dict) - 见 **CreateUHostInstanceParamDisksCustomBackup** 模型定义 + - **Encrypted** (bool) - 【功能仅部分可用区开放,详询技术支持】磁盘是否加密。加密:true, 不加密: false加密必须传入对应的的KmsKeyId,默认值false + - **IsBoot** (str) - 是否是系统盘。枚举值:\\ > True,是系统盘 \\ > False,是数据盘(默认)。Disks数组中有且只能有一块盘是系统盘。 + - **KmsKeyId** (str) - 【功能仅部分可用区开放,详询技术支持】kms key id。选择加密盘时必填。 + - **Size** (int) - 磁盘大小,单位GB。请参考 `磁盘类型 `_ 。 + - **SnapshotId** (str) - 从快照创建盘时所用快照id,目前仅支持数据盘 + - **Type** (str) - 磁盘类型。请参考 `磁盘类型 `_ 。 + + + **CreateUHostInstanceParamSecGroupId** + - **Id** (str) - 安全组 ID。至多可以同时绑定5个安全组。 + - **Priority** (int) - 安全组优先级。取值范围[1, 5] + + + **CreateUHostInstanceParamVolumes** + + + **CreateUHostInstanceParamLabels** + - **Key** (str) - 用户资源标签的键值 + - **Value** (str) - 用户资源标签的值 + + **CreateUHostInstanceParamNetworkInterfaceEIP** - **Bandwidth** (int) - 【若绑定EIP,此参数必填】弹性IP的外网带宽, 单位为Mbps. 共享带宽模式下非必传, 非共享带宽模式必须指定非0Mbps带宽. 各地域非共享带宽的带宽范围如下: 流量计费[1-300],带宽计费[1-800] - **CouponId** (str) - 当前EIP代金券id。请通过DescribeCoupon接口查询,或登录用户中心查看。 @@ -244,23 +272,6 @@ def create_uhost_instance( - **EIP** (dict) - 见 **CreateUHostInstanceParamNetworkInterfaceEIP** 模型定义 - **CreateUHostInstanceParamDisksCustomBackup** - - - **CreateUHostInstanceParamDisks** - - **BackupType** (str) - 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > SNAPSHOT,快照 \\当前磁盘支持的备份模式参考 `磁盘类型 `_ ,默认值:NONE - - **CouponId** (str) - 云盘代金券id。不适用于系统盘/本地盘。请通过DescribeCoupon接口查询,或登录用户中心查看 - - **Encrypted** (bool) - 【功能仅部分可用区开放,详询技术支持】磁盘是否加密。加密:true, 不加密: false加密必须传入对应的的KmsKeyId,默认值false - - **IsBoot** (str) - 是否是系统盘。枚举值:\\ > True,是系统盘 \\ > False,是数据盘(默认)。Disks数组中有且只能有一块盘是系统盘。 - - **KmsKeyId** (str) - 【功能仅部分可用区开放,详询技术支持】kms key id。选择加密盘时必填。 - - **Size** (int) - 磁盘大小,单位GB。请参考 `磁盘类型 `_ 。 - - **SnapshotId** (str) - 从快照创建盘时所用快照id,目前仅支持数据盘 - - **Type** (str) - 磁盘类型。请参考 `磁盘类型 `_ 。 - - - **CreateUHostInstanceParamVolumes** - - """ # build request d = { @@ -391,9 +402,22 @@ def describe_available_instance_types( **Response Model** - **Performance** + **DataDiskInfo** + - **Features** (list) - 数据盘可支持的服务 + - **MaximalSize** (int) - MaximalSize为磁盘最大值 + - **MinimalSize** (int) - 磁盘最小值,如果没有该字段,最小值取基础镜像Size值即可(linux为20G,windows为40G)。 + - **Name** (str) - 数据盘类别,包含普通云盘|CLOUD_NORMAL、SSD云盘|CLOUD_SSD和RSSD云盘|CLOUD_RSSD。普通本地盘只包含普通本地盘|LOCAL_NORMAL一种。SSD本地盘只包含SSD本地盘|LOCAL_SSD一种。 + + + **GraphicsMemory** - **Rate** (int) - 交互展示参数,可忽略 - - **Value** (float) - 值,单位是TFlops + - **Value** (int) - 值,单位是GB + + + **CpuPlatforms** + - **Amd** (list) - 返回AMD的CPU平台信息,例如:AMD: ['Amd/Epyc2'] + - **Ampere** (list) - 返回Arm的CPU平台信息,例如:Ampere: ['Ampere/Altra'] + - **Intel** (list) - 返回Intel的CPU平台信息,例如:Intel: ['Intel/CascadeLake','Intel/CascadelakeR','Intel/IceLake'] **BootDiskInfo** @@ -403,28 +427,21 @@ def describe_available_instance_types( - **Name** (str) - 系统盘类别,包含普通云盘|CLOUD_NORMAL、SSD云盘|CLOUD_SSD和RSSD云盘|CLOUD_RSSD。普通本地盘只包含普通本地盘|LOCAL_NORMAL一种。SSD本地盘只包含SSD本地盘|LOCAL_SSD一种。 - **DataDiskInfo** - - **Features** (list) - 数据盘可支持的服务 - - **MaximalSize** (int) - MaximalSize为磁盘最大值 - - **MinimalSize** (int) - 磁盘最小值,如果没有该字段,最小值取基础镜像Size值即可(linux为20G,windows为40G)。 - - **Name** (str) - 数据盘类别,包含普通云盘|CLOUD_NORMAL、SSD云盘|CLOUD_SSD和RSSD云盘|CLOUD_RSSD。普通本地盘只包含普通本地盘|LOCAL_NORMAL一种。SSD本地盘只包含SSD本地盘|LOCAL_SSD一种。 - - **Disks** - **BootDisk** (list) - 见 **BootDiskInfo** 模型定义 - **DataDisk** (list) - 见 **DataDiskInfo** 模型定义 - **Name** (str) - 磁盘介质类别信息,磁盘主要分类如下:云盘|cloudDisk、普通本地盘|normalLocalDisk和SSD本地盘|ssdLocalDisk。 - **CpuPlatforms** - - **Amd** (list) - 返回AMD的CPU平台信息,例如:AMD: ['Amd/Epyc2'] - - **Ampere** (list) - 返回Arm的CPU平台信息,例如:Ampere: ['Ampere/Altra'] - - **Intel** (list) - 返回Intel的CPU平台信息,例如:Intel: ['Intel/CascadeLake','Intel/CascadelakeR','Intel/IceLake'] + **FeatureModes** + - **MinimalCpuPlatform** (list) - 这个特性必须是列出来的CPU平台及以上的CPU才支持 + - **Name** (str) - 模式|特性名称 + - **RelatedToImageFeature** (list) - 为镜像上支持这个特性的标签。例如DescribeImage返回的字段Features包含HotPlug,说明该镜像支持热升级。 - **GraphicsMemory** - - **Rate** (int) - 交互展示参数,可忽略 - - **Value** (int) - 值,单位是GB + **Features** + - **Modes** (list) - 见 **FeatureModes** 模型定义 + - **Name** (str) - 可支持的特性名称。目前支持的特性网络增强|NetCapability、热升级|Hotplug **Collection** @@ -433,22 +450,16 @@ def describe_available_instance_types( - **MinimalCpuPlatform** (list) - CPU和内存规格只能在列出来的CPU平台支持 + **Performance** + - **Rate** (int) - 交互展示参数,可忽略 + - **Value** (float) - 值,单位是TFlops + + **MachineSizes** - **Collection** (list) - 见 **Collection** 模型定义 - **Gpu** (int) - Gpu为GPU可支持的规格即GPU颗数,非GPU机型,Gpu为0 - **FeatureModes** - - **MinimalCpuPlatform** (list) - 这个特性必须是列出来的CPU平台及以上的CPU才支持 - - **Name** (str) - 模式|特性名称 - - **RelatedToImageFeature** (list) - 为镜像上支持这个特性的标签。例如DescribeImage返回的字段Features包含HotPlug,说明该镜像支持热升级。 - - - **Features** - - **Modes** (list) - 见 **FeatureModes** 模型定义 - - **Name** (str) - 可支持的特性名称。目前支持的特性网络增强|NetCapability、热升级|Hotplug - - **AvailableInstanceTypes** - **CpuPlatforms** (dict) - 见 **CpuPlatforms** 模型定义 - **Description** (str) - 机型描述 @@ -618,11 +629,6 @@ def describe_uhost_instance( **Response Model** - **UHostKeyPair** - - **KeyPairId** (str) - 密钥对ID - - **KeyPairState** (str) - 主机密钥对状态,Normal 正常,Deleted 删除 - - **UHostDiskSet** - **BackupType** (str) - 备份方案。若开通了数据方舟,则为DATAARK - **DiskId** (str) - 磁盘ID @@ -635,6 +641,21 @@ def describe_uhost_instance( - **Type** (str) - 【建议不再使用】磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + **UHostKeyPair** + - **KeyPairId** (str) - 密钥对ID + - **KeyPairState** (str) - 主机密钥对状态,Normal 正常,Deleted 删除 + + + **SpotAttribute** + - **RecycleTime** (int) - 回收时间 + + + **UDSetUDHostAttribute** + - **HostBinding** (bool) - 是否绑定私有专区宿主机 + - **UDHostId** (str) - 私有专区宿主机 + - **UDSetId** (str) - 私有专区 + + **UHostIPSet** - **Bandwidth** (int) - IP对应的带宽, 单位: Mb (内网IP不显示带宽信息) - **Default** (str) - 内网 Private 类型下,表示是否为默认网卡。true: 是默认网卡;其他值:不是。 @@ -649,16 +670,6 @@ def describe_uhost_instance( - **Weight** (int) - 当前EIP的权重。权重最大的为当前的出口IP。 - **SpotAttribute** - - **RecycleTime** (int) - 回收时间 - - - **UDSetUDHostAttribute** - - **HostBinding** (bool) - 是否绑定私有专区宿主机 - - **UDHostId** (str) - 私有专区宿主机 - - **UDSetId** (str) - 私有专区 - - **UHostInstanceSet** - **AutoRenew** (str) - 是否自动续费,自动续费:“Yes”,不自动续费:“No” - **BasicImageId** (str) - 基础镜像ID(指当前自定义镜像的来源镜像) @@ -915,9 +926,6 @@ def get_uhost_instance_price( **Request Model** - **GetUHostInstancePriceParamVolumes** - - **GetUHostInstancePriceParamDisks** - **BackupType** (str) - 磁盘备份方案。枚举值:\\ > NONE,无备份 \\ > DATAARK,数据方舟 \\ > SNAPSHOT,快照\\ 当前磁盘支持的备份模式参考 `磁盘类型 `_ - **IsBoot** (str) - 是否是系统盘。枚举值:\\ > True,是系统盘 \\ > False,是数据盘(默认)。Disks数组中有且只能有一块盘是系统盘。 @@ -925,6 +933,9 @@ def get_uhost_instance_price( - **Type** (str) - 磁盘类型。请参考 `磁盘类型 `_ 。 + **GetUHostInstancePriceParamVolumes** + + **Response Model** **PriceDetail** diff --git a/ucloud/services/uhost/schemas/apis.py b/ucloud/services/uhost/schemas/apis.py index 50ae1fc..184c6ce 100644 --- a/ucloud/services/uhost/schemas/apis.py +++ b/ucloud/services/uhost/schemas/apis.py @@ -142,20 +142,21 @@ class CreateIsolationGroupResponseSchema(schema.ResponseSchema): """ -class CreateUHostInstanceParamSecGroupIdSchema(schema.RequestSchema): - """CreateUHostInstanceParamSecGroupId -""" +class CreateUHostInstanceParamFeaturesSchema(schema.RequestSchema): + """CreateUHostInstanceParamFeatures -""" fields = { - "Id": fields.Str(required=False, dump_to="Id"), - "Priority": fields.Int(required=False, dump_to="Priority"), + "UNI": fields.Bool(required=False, dump_to="UNI"), } -class CreateUHostInstanceParamFeaturesSchema(schema.RequestSchema): - """CreateUHostInstanceParamFeatures -""" +class CreateUHostInstanceParamDisksCustomBackupSchema(schema.RequestSchema): + """CreateUHostInstanceParamDisksCustomBackup -""" fields = { - "UNI": fields.Bool(required=False, dump_to="UNI"), + "Day": fields.Str(required=False, dump_to="Day"), + "Hour": fields.Str(required=False, dump_to="Hour"), + "Journal": fields.Str(required=False, dump_to="Journal"), } @@ -171,6 +172,49 @@ class CreateUHostInstanceParamNetworkInterfaceEIPGlobalSSHSchema( } +class CreateUHostInstanceParamDisksSchema(schema.RequestSchema): + """CreateUHostInstanceParamDisks -""" + + fields = { + "BackupMode": fields.Str(required=False, dump_to="BackupMode"), + "BackupType": fields.Str(required=False, dump_to="BackupType"), + "CouponId": fields.Str(required=False, dump_to="CouponId"), + "CustomBackup": CreateUHostInstanceParamDisksCustomBackupSchema( + required=False, dump_to="CustomBackup" + ), + "Encrypted": fields.Bool(required=False, dump_to="Encrypted"), + "IsBoot": fields.Str(required=True, dump_to="IsBoot"), + "KmsKeyId": fields.Str(required=False, dump_to="KmsKeyId"), + "Size": fields.Int(required=True, dump_to="Size"), + "SnapshotId": fields.Str(required=False, dump_to="SnapshotId"), + "Type": fields.Str(required=True, dump_to="Type"), + } + + +class CreateUHostInstanceParamSecGroupIdSchema(schema.RequestSchema): + """CreateUHostInstanceParamSecGroupId -""" + + fields = { + "Id": fields.Str(required=False, dump_to="Id"), + "Priority": fields.Int(required=False, dump_to="Priority"), + } + + +class CreateUHostInstanceParamVolumesSchema(schema.RequestSchema): + """CreateUHostInstanceParamVolumes -""" + + fields = {} + + +class CreateUHostInstanceParamLabelsSchema(schema.RequestSchema): + """CreateUHostInstanceParamLabels -""" + + fields = { + "Key": fields.Str(required=False, dump_to="Key"), + "Value": fields.Str(required=False, dump_to="Value"), + } + + class CreateUHostInstanceParamNetworkInterfaceEIPSchema(schema.RequestSchema): """CreateUHostInstanceParamNetworkInterfaceEIP -""" @@ -215,33 +259,6 @@ class CreateUHostInstanceParamNetworkInterfaceSchema(schema.RequestSchema): } -class CreateUHostInstanceParamDisksCustomBackupSchema(schema.RequestSchema): - """CreateUHostInstanceParamDisksCustomBackup -""" - - fields = {} - - -class CreateUHostInstanceParamDisksSchema(schema.RequestSchema): - """CreateUHostInstanceParamDisks -""" - - fields = { - "BackupType": fields.Str(required=False, dump_to="BackupType"), - "CouponId": fields.Str(required=False, dump_to="CouponId"), - "Encrypted": fields.Bool(required=False, dump_to="Encrypted"), - "IsBoot": fields.Str(required=True, dump_to="IsBoot"), - "KmsKeyId": fields.Str(required=False, dump_to="KmsKeyId"), - "Size": fields.Int(required=True, dump_to="Size"), - "SnapshotId": fields.Str(required=False, dump_to="SnapshotId"), - "Type": fields.Str(required=True, dump_to="Type"), - } - - -class CreateUHostInstanceParamVolumesSchema(schema.RequestSchema): - """CreateUHostInstanceParamVolumes -""" - - fields = {} - - class CreateUHostInstanceRequestSchema(schema.RequestSchema): """CreateUHostInstance - 创建UHost实例。""" @@ -290,6 +307,7 @@ class CreateUHostInstanceRequestSchema(schema.RequestSchema): required=False, dump_to="KeyPair" ), # Deprecated, will be removed at 1.0 "KeyPairId": fields.Str(required=False, dump_to="KeyPairId"), + "Labels": fields.List(CreateUHostInstanceParamLabelsSchema()), "LoginMode": fields.Str(required=True, dump_to="LoginMode"), "MachineType": fields.Str(required=False, dump_to="MachineType"), "MaxCount": fields.Int(required=False, dump_to="MaxCount"), @@ -711,12 +729,6 @@ class GetAttachedDiskUpgradePriceResponseSchema(schema.ResponseSchema): """ -class GetUHostInstancePriceParamVolumesSchema(schema.RequestSchema): - """GetUHostInstancePriceParamVolumes -""" - - fields = {} - - class GetUHostInstancePriceParamDisksSchema(schema.RequestSchema): """GetUHostInstancePriceParamDisks -""" @@ -728,6 +740,12 @@ class GetUHostInstancePriceParamDisksSchema(schema.RequestSchema): } +class GetUHostInstancePriceParamVolumesSchema(schema.RequestSchema): + """GetUHostInstancePriceParamVolumes -""" + + fields = {} + + class GetUHostInstancePriceRequestSchema(schema.RequestSchema): """GetUHostInstancePrice - 根据UHost实例配置,获取UHost实例的价格。""" diff --git a/ucloud/services/uhost/schemas/models.py b/ucloud/services/uhost/schemas/models.py index 575c6ba..5ce3e6a 100644 --- a/ucloud/services/uhost/schemas/models.py +++ b/ucloud/services/uhost/schemas/models.py @@ -30,43 +30,24 @@ class KeyPairSchema(schema.ResponseSchema): } -class GraphicsMemorySchema(schema.ResponseSchema): - """GraphicsMemory - GPU的显存指标""" - - fields = { - "Rate": fields.Int(required=False, load_from="Rate"), - "Value": fields.Int(required=False, load_from="Value"), - } - - -class CpuPlatformsSchema(schema.ResponseSchema): - """CpuPlatforms - CPU平台信息""" - - fields = { - "Amd": fields.List(fields.Str()), - "Ampere": fields.List(fields.Str()), - "Intel": fields.List(fields.Str()), - } - - -class DataDiskInfoSchema(schema.ResponseSchema): - """DataDiskInfo - 数据盘信息""" +class BootDiskInfoSchema(schema.ResponseSchema): + """BootDiskInfo - 系统盘信息""" fields = { "Features": fields.List(fields.Str()), + "InstantResize": fields.Bool(required=False, load_from="InstantResize"), "MaximalSize": fields.Int(required=False, load_from="MaximalSize"), - "MinimalSize": fields.Int(required=False, load_from="MinimalSize"), "Name": fields.Str(required=False, load_from="Name"), } -class BootDiskInfoSchema(schema.ResponseSchema): - """BootDiskInfo - 系统盘信息""" +class DataDiskInfoSchema(schema.ResponseSchema): + """DataDiskInfo - 数据盘信息""" fields = { "Features": fields.List(fields.Str()), - "InstantResize": fields.Bool(required=False, load_from="InstantResize"), "MaximalSize": fields.Int(required=False, load_from="MaximalSize"), + "MinimalSize": fields.Int(required=False, load_from="MinimalSize"), "Name": fields.Str(required=False, load_from="Name"), } @@ -100,6 +81,34 @@ class FeaturesSchema(schema.ResponseSchema): } +class GraphicsMemorySchema(schema.ResponseSchema): + """GraphicsMemory - GPU的显存指标""" + + fields = { + "Rate": fields.Int(required=False, load_from="Rate"), + "Value": fields.Int(required=False, load_from="Value"), + } + + +class PerformanceSchema(schema.ResponseSchema): + """Performance - GPU的性能指标""" + + fields = { + "Rate": fields.Int(required=False, load_from="Rate"), + "Value": fields.Float(required=False, load_from="Value"), + } + + +class CpuPlatformsSchema(schema.ResponseSchema): + """CpuPlatforms - CPU平台信息""" + + fields = { + "Amd": fields.List(fields.Str()), + "Ampere": fields.List(fields.Str()), + "Intel": fields.List(fields.Str()), + } + + class CollectionSchema(schema.ResponseSchema): """Collection - CPU和内存可支持的规格""" @@ -119,15 +128,6 @@ class MachineSizesSchema(schema.ResponseSchema): } -class PerformanceSchema(schema.ResponseSchema): - """Performance - GPU的性能指标""" - - fields = { - "Rate": fields.Int(required=False, load_from="Rate"), - "Value": fields.Float(required=False, load_from="Value"), - } - - class AvailableInstanceTypesSchema(schema.ResponseSchema): """AvailableInstanceTypes - https://ushare.ucloudadmin.com/pages/viewpage.action?pageId=104662646""" @@ -137,7 +137,7 @@ class AvailableInstanceTypesSchema(schema.ResponseSchema): "Disks": fields.List(DisksSchema()), "Features": fields.List(FeaturesSchema()), "GraphicsMemory": GraphicsMemorySchema(), - "InstanceType": fields.Str(required=True, load_from="InstanceType"), + "InstanceType": fields.Str(required=False, load_from="InstanceType"), "MachineClass": fields.Str(required=False, load_from="MachineClass"), "MachineSizes": fields.List(MachineSizesSchema()), "Name": fields.Str(required=False, load_from="Name"), @@ -216,13 +216,27 @@ class IsolationGroupSchema(schema.ResponseSchema): } -class UDSetUDHostAttributeSchema(schema.ResponseSchema): - """UDSetUDHostAttribute - 私有专区对应的宿主机属性""" +class SpotAttributeSchema(schema.ResponseSchema): + """SpotAttribute - 竞价实例属性""" fields = { - "HostBinding": fields.Bool(required=False, load_from="HostBinding"), - "UDHostId": fields.Str(required=False, load_from="UDHostId"), - "UDSetId": fields.Str(required=False, load_from="UDSetId"), + "RecycleTime": fields.Int(required=False, load_from="RecycleTime"), + } + + +class UHostDiskSetSchema(schema.ResponseSchema): + """UHostDiskSet - DescribeUHostInstance""" + + fields = { + "BackupType": fields.Str(required=False, load_from="BackupType"), + "DiskId": fields.Str(required=False, load_from="DiskId"), + "DiskType": fields.Str(required=True, load_from="DiskType"), + "Drive": fields.Str(required=False, load_from="Drive"), + "Encrypted": fields.Str(required=False, load_from="Encrypted"), + "IsBoot": fields.Str(required=True, load_from="IsBoot"), + "Name": fields.Str(required=False, load_from="Name"), + "Size": fields.Int(required=False, load_from="Size"), + "Type": fields.Str(required=False, load_from="Type"), } @@ -246,19 +260,13 @@ class UHostIPSetSchema(schema.ResponseSchema): } -class UHostDiskSetSchema(schema.ResponseSchema): - """UHostDiskSet - DescribeUHostInstance""" +class UDSetUDHostAttributeSchema(schema.ResponseSchema): + """UDSetUDHostAttribute - 私有专区对应的宿主机属性""" fields = { - "BackupType": fields.Str(required=False, load_from="BackupType"), - "DiskId": fields.Str(required=False, load_from="DiskId"), - "DiskType": fields.Str(required=True, load_from="DiskType"), - "Drive": fields.Str(required=False, load_from="Drive"), - "Encrypted": fields.Str(required=False, load_from="Encrypted"), - "IsBoot": fields.Str(required=True, load_from="IsBoot"), - "Name": fields.Str(required=False, load_from="Name"), - "Size": fields.Int(required=False, load_from="Size"), - "Type": fields.Str(required=False, load_from="Type"), + "HostBinding": fields.Bool(required=False, load_from="HostBinding"), + "UDHostId": fields.Str(required=False, load_from="UDHostId"), + "UDSetId": fields.Str(required=False, load_from="UDSetId"), } @@ -271,14 +279,6 @@ class UHostKeyPairSchema(schema.ResponseSchema): } -class SpotAttributeSchema(schema.ResponseSchema): - """SpotAttribute - 竞价实例属性""" - - fields = { - "RecycleTime": fields.Int(required=False, load_from="RecycleTime"), - } - - class UHostInstanceSetSchema(schema.ResponseSchema): """UHostInstanceSet - DescribeUHostInstance""" diff --git a/ucloud/version.py b/ucloud/version.py index 9ee59be..d09e4d4 100644 --- a/ucloud/version.py +++ b/ucloud/version.py @@ -1 +1 @@ -version = "0.11.82" +version = "0.11.83"