ucloud-sdk-python3 0.11.81__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. ucloud/__init__.py +0 -0
  2. ucloud/client.py +469 -0
  3. ucloud/core/__init__.py +0 -0
  4. ucloud/core/auth/__init__.py +3 -0
  5. ucloud/core/auth/_cfg.py +72 -0
  6. ucloud/core/client/__init__.py +8 -0
  7. ucloud/core/client/_cfg.py +96 -0
  8. ucloud/core/client/_client.py +176 -0
  9. ucloud/core/exc/__init__.py +9 -0
  10. ucloud/core/exc/_exc.py +94 -0
  11. ucloud/core/transport/__init__.py +4 -0
  12. ucloud/core/transport/_requests.py +135 -0
  13. ucloud/core/transport/http.py +120 -0
  14. ucloud/core/transport/utils.py +40 -0
  15. ucloud/core/typesystem/__init__.py +0 -0
  16. ucloud/core/typesystem/abstract.py +60 -0
  17. ucloud/core/typesystem/encoder.py +33 -0
  18. ucloud/core/typesystem/fields.py +149 -0
  19. ucloud/core/typesystem/schema.py +97 -0
  20. ucloud/core/utils/__init__.py +0 -0
  21. ucloud/core/utils/compat.py +15 -0
  22. ucloud/core/utils/deco.py +31 -0
  23. ucloud/core/utils/log.py +29 -0
  24. ucloud/core/utils/middleware.py +63 -0
  25. ucloud/helpers/__init__.py +0 -0
  26. ucloud/helpers/utils.py +90 -0
  27. ucloud/helpers/wait.py +108 -0
  28. ucloud/services/__init__.py +0 -0
  29. ucloud/services/cube/__init__.py +0 -0
  30. ucloud/services/cube/client.py +618 -0
  31. ucloud/services/cube/schemas/__init__.py +0 -0
  32. ucloud/services/cube/schemas/apis.py +548 -0
  33. ucloud/services/cube/schemas/models.py +58 -0
  34. ucloud/services/iam/__init__.py +0 -0
  35. ucloud/services/iam/client.py +1078 -0
  36. ucloud/services/iam/schemas/__init__.py +0 -0
  37. ucloud/services/iam/schemas/apis.py +973 -0
  38. ucloud/services/iam/schemas/models.py +127 -0
  39. ucloud/services/ipsecvpn/__init__.py +0 -0
  40. ucloud/services/ipsecvpn/client.py +522 -0
  41. ucloud/services/ipsecvpn/schemas/__init__.py +0 -0
  42. ucloud/services/ipsecvpn/schemas/apis.py +455 -0
  43. ucloud/services/ipsecvpn/schemas/models.py +134 -0
  44. ucloud/services/ipv6gw/__init__.py +0 -0
  45. ucloud/services/ipv6gw/client.py +44 -0
  46. ucloud/services/ipv6gw/schemas/__init__.py +0 -0
  47. ucloud/services/ipv6gw/schemas/apis.py +34 -0
  48. ucloud/services/ipv6gw/schemas/models.py +3 -0
  49. ucloud/services/isms/__init__.py +0 -0
  50. ucloud/services/isms/client.py +330 -0
  51. ucloud/services/isms/schemas/__init__.py +0 -0
  52. ucloud/services/isms/schemas/apis.py +272 -0
  53. ucloud/services/isms/schemas/models.py +50 -0
  54. ucloud/services/pathx/__init__.py +0 -0
  55. ucloud/services/pathx/client.py +1656 -0
  56. ucloud/services/pathx/schemas/__init__.py +0 -0
  57. ucloud/services/pathx/schemas/apis.py +1289 -0
  58. ucloud/services/pathx/schemas/models.py +420 -0
  59. ucloud/services/stepflow/__init__.py +0 -0
  60. ucloud/services/stepflow/client.py +98 -0
  61. ucloud/services/stepflow/schemas/__init__.py +0 -0
  62. ucloud/services/stepflow/schemas/apis.py +67 -0
  63. ucloud/services/stepflow/schemas/models.py +37 -0
  64. ucloud/services/sts/__init__.py +0 -0
  65. ucloud/services/sts/client.py +46 -0
  66. ucloud/services/sts/schemas/__init__.py +0 -0
  67. ucloud/services/sts/schemas/apis.py +35 -0
  68. ucloud/services/sts/schemas/models.py +16 -0
  69. ucloud/services/tidb/__init__.py +0 -0
  70. ucloud/services/tidb/client.py +120 -0
  71. ucloud/services/tidb/schemas/__init__.py +0 -0
  72. ucloud/services/tidb/schemas/apis.py +103 -0
  73. ucloud/services/tidb/schemas/models.py +11 -0
  74. ucloud/services/uaaa/__init__.py +0 -0
  75. ucloud/services/uaaa/client.py +311 -0
  76. ucloud/services/uaaa/schemas/__init__.py +0 -0
  77. ucloud/services/uaaa/schemas/apis.py +252 -0
  78. ucloud/services/uaaa/schemas/models.py +47 -0
  79. ucloud/services/uaccount/__init__.py +0 -0
  80. ucloud/services/uaccount/client.py +547 -0
  81. ucloud/services/uaccount/schemas/__init__.py +0 -0
  82. ucloud/services/uaccount/schemas/apis.py +442 -0
  83. ucloud/services/uaccount/schemas/models.py +128 -0
  84. ucloud/services/uads/__init__.py +0 -0
  85. ucloud/services/uads/client.py +1148 -0
  86. ucloud/services/uads/schemas/__init__.py +0 -0
  87. ucloud/services/uads/schemas/apis.py +983 -0
  88. ucloud/services/uads/schemas/models.py +199 -0
  89. ucloud/services/ubill/__init__.py +0 -0
  90. ucloud/services/ubill/client.py +248 -0
  91. ucloud/services/ubill/schemas/__init__.py +0 -0
  92. ucloud/services/ubill/schemas/apis.py +183 -0
  93. ucloud/services/ubill/schemas/models.py +107 -0
  94. ucloud/services/ucdn/__init__.py +0 -0
  95. ucloud/services/ucdn/client.py +1964 -0
  96. ucloud/services/ucdn/schemas/__init__.py +0 -0
  97. ucloud/services/ucdn/schemas/apis.py +1395 -0
  98. ucloud/services/ucdn/schemas/models.py +576 -0
  99. ucloud/services/ucloudstack/__init__.py +0 -0
  100. ucloud/services/ucloudstack/client.py +3352 -0
  101. ucloud/services/ucloudstack/schemas/__init__.py +0 -0
  102. ucloud/services/ucloudstack/schemas/apis.py +2887 -0
  103. ucloud/services/ucloudstack/schemas/models.py +560 -0
  104. ucloud/services/ucompshare/__init__.py +0 -0
  105. ucloud/services/ucompshare/client.py +820 -0
  106. ucloud/services/ucompshare/schemas/__init__.py +0 -0
  107. ucloud/services/ucompshare/schemas/apis.py +623 -0
  108. ucloud/services/ucompshare/schemas/models.py +241 -0
  109. ucloud/services/udb/__init__.py +0 -0
  110. ucloud/services/udb/client.py +2463 -0
  111. ucloud/services/udb/schemas/__init__.py +0 -0
  112. ucloud/services/udb/schemas/apis.py +2053 -0
  113. ucloud/services/udb/schemas/models.py +319 -0
  114. ucloud/services/udbproxy/__init__.py +0 -0
  115. ucloud/services/udbproxy/client.py +67 -0
  116. ucloud/services/udbproxy/schemas/__init__.py +0 -0
  117. ucloud/services/udbproxy/schemas/apis.py +38 -0
  118. ucloud/services/udbproxy/schemas/models.py +31 -0
  119. ucloud/services/uddb/__init__.py +0 -0
  120. ucloud/services/uddb/client.py +456 -0
  121. ucloud/services/uddb/schemas/__init__.py +0 -0
  122. ucloud/services/uddb/schemas/apis.py +520 -0
  123. ucloud/services/uddb/schemas/models.py +96 -0
  124. ucloud/services/udi/__init__.py +0 -0
  125. ucloud/services/udi/client.py +250 -0
  126. ucloud/services/udi/schemas/__init__.py +0 -0
  127. ucloud/services/udi/schemas/apis.py +205 -0
  128. ucloud/services/udi/schemas/models.py +58 -0
  129. ucloud/services/udisk/__init__.py +0 -0
  130. ucloud/services/udisk/client.py +832 -0
  131. ucloud/services/udisk/schemas/__init__.py +0 -0
  132. ucloud/services/udisk/schemas/apis.py +741 -0
  133. ucloud/services/udisk/schemas/models.py +100 -0
  134. ucloud/services/udns/__init__.py +0 -0
  135. ucloud/services/udns/client.py +380 -0
  136. ucloud/services/udns/schemas/__init__.py +0 -0
  137. ucloud/services/udns/schemas/apis.py +293 -0
  138. ucloud/services/udns/schemas/models.py +58 -0
  139. ucloud/services/udpn/__init__.py +0 -0
  140. ucloud/services/udpn/client.py +240 -0
  141. ucloud/services/udpn/schemas/__init__.py +0 -0
  142. ucloud/services/udpn/schemas/apis.py +203 -0
  143. ucloud/services/udpn/schemas/models.py +29 -0
  144. ucloud/services/udts/__init__.py +0 -0
  145. ucloud/services/udts/client.py +410 -0
  146. ucloud/services/udts/schemas/__init__.py +0 -0
  147. ucloud/services/udts/schemas/apis.py +403 -0
  148. ucloud/services/udts/schemas/models.py +93 -0
  149. ucloud/services/uec/__init__.py +0 -0
  150. ucloud/services/uec/client.py +1510 -0
  151. ucloud/services/uec/schemas/__init__.py +0 -0
  152. ucloud/services/uec/schemas/apis.py +1195 -0
  153. ucloud/services/uec/schemas/models.py +316 -0
  154. ucloud/services/ufile/__init__.py +0 -0
  155. ucloud/services/ufile/client.py +698 -0
  156. ucloud/services/ufile/schemas/__init__.py +0 -0
  157. ucloud/services/ufile/schemas/apis.py +542 -0
  158. ucloud/services/ufile/schemas/models.py +139 -0
  159. ucloud/services/ufs/__init__.py +0 -0
  160. ucloud/services/ufs/client.py +328 -0
  161. ucloud/services/ufs/schemas/__init__.py +0 -0
  162. ucloud/services/ufs/schemas/apis.py +265 -0
  163. ucloud/services/ufs/schemas/models.py +52 -0
  164. ucloud/services/ugn/__init__.py +0 -0
  165. ucloud/services/ugn/client.py +857 -0
  166. ucloud/services/ugn/schemas/__init__.py +0 -0
  167. ucloud/services/ugn/schemas/apis.py +678 -0
  168. ucloud/services/ugn/schemas/models.py +191 -0
  169. ucloud/services/uhost/__init__.py +0 -0
  170. ucloud/services/uhost/client.py +1647 -0
  171. ucloud/services/uhost/schemas/__init__.py +0 -0
  172. ucloud/services/uhost/schemas/apis.py +1483 -0
  173. ucloud/services/uhost/schemas/models.py +427 -0
  174. ucloud/services/uhub/__init__.py +0 -0
  175. ucloud/services/uhub/client.py +229 -0
  176. ucloud/services/uhub/schemas/__init__.py +0 -0
  177. ucloud/services/uhub/schemas/apis.py +194 -0
  178. ucloud/services/uhub/schemas/models.py +39 -0
  179. ucloud/services/uk8s/__init__.py +0 -0
  180. ucloud/services/uk8s/client.py +729 -0
  181. ucloud/services/uk8s/schemas/__init__.py +0 -0
  182. ucloud/services/uk8s/schemas/apis.py +639 -0
  183. ucloud/services/uk8s/schemas/models.py +179 -0
  184. ucloud/services/ulb/__init__.py +0 -0
  185. ucloud/services/ulb/client.py +2285 -0
  186. ucloud/services/ulb/schemas/__init__.py +0 -0
  187. ucloud/services/ulb/schemas/apis.py +1678 -0
  188. ucloud/services/ulb/schemas/models.py +591 -0
  189. ucloud/services/ulighthost/__init__.py +0 -0
  190. ucloud/services/ulighthost/client.py +576 -0
  191. ucloud/services/ulighthost/schemas/__init__.py +0 -0
  192. ucloud/services/ulighthost/schemas/apis.py +445 -0
  193. ucloud/services/ulighthost/schemas/models.py +133 -0
  194. ucloud/services/umem/__init__.py +0 -0
  195. ucloud/services/umem/client.py +1829 -0
  196. ucloud/services/umem/schemas/__init__.py +0 -0
  197. ucloud/services/umem/schemas/apis.py +1477 -0
  198. ucloud/services/umem/schemas/models.py +327 -0
  199. ucloud/services/umongodb/__init__.py +0 -0
  200. ucloud/services/umongodb/client.py +752 -0
  201. ucloud/services/umongodb/schemas/__init__.py +0 -0
  202. ucloud/services/umongodb/schemas/apis.py +567 -0
  203. ucloud/services/umongodb/schemas/models.py +220 -0
  204. ucloud/services/unet/__init__.py +0 -0
  205. ucloud/services/unet/client.py +1278 -0
  206. ucloud/services/unet/schemas/__init__.py +0 -0
  207. ucloud/services/unet/schemas/apis.py +1006 -0
  208. ucloud/services/unet/schemas/models.py +275 -0
  209. ucloud/services/unvs/__init__.py +0 -0
  210. ucloud/services/unvs/client.py +87 -0
  211. ucloud/services/unvs/schemas/__init__.py +0 -0
  212. ucloud/services/unvs/schemas/apis.py +66 -0
  213. ucloud/services/unvs/schemas/models.py +19 -0
  214. ucloud/services/upfs/__init__.py +0 -0
  215. ucloud/services/upfs/client.py +252 -0
  216. ucloud/services/upfs/schemas/__init__.py +0 -0
  217. ucloud/services/upfs/schemas/apis.py +204 -0
  218. ucloud/services/upfs/schemas/models.py +36 -0
  219. ucloud/services/upgsql/__init__.py +0 -0
  220. ucloud/services/upgsql/client.py +1007 -0
  221. ucloud/services/upgsql/schemas/__init__.py +0 -0
  222. ucloud/services/upgsql/schemas/apis.py +827 -0
  223. ucloud/services/upgsql/schemas/models.py +158 -0
  224. ucloud/services/uphone/__init__.py +0 -0
  225. ucloud/services/uphone/client.py +2122 -0
  226. ucloud/services/uphone/schemas/__init__.py +0 -0
  227. ucloud/services/uphone/schemas/apis.py +1799 -0
  228. ucloud/services/uphone/schemas/models.py +357 -0
  229. ucloud/services/uphost/__init__.py +0 -0
  230. ucloud/services/uphost/client.py +847 -0
  231. ucloud/services/uphost/schemas/__init__.py +0 -0
  232. ucloud/services/uphost/schemas/apis.py +689 -0
  233. ucloud/services/uphost/schemas/models.py +175 -0
  234. ucloud/services/urocketmq/__init__.py +0 -0
  235. ucloud/services/urocketmq/client.py +117 -0
  236. ucloud/services/urocketmq/schemas/__init__.py +0 -0
  237. ucloud/services/urocketmq/schemas/apis.py +92 -0
  238. ucloud/services/urocketmq/schemas/models.py +14 -0
  239. ucloud/services/uslk/__init__.py +0 -0
  240. ucloud/services/uslk/client.py +249 -0
  241. ucloud/services/uslk/schemas/__init__.py +0 -0
  242. ucloud/services/uslk/schemas/apis.py +191 -0
  243. ucloud/services/uslk/schemas/models.py +74 -0
  244. ucloud/services/usms/__init__.py +0 -0
  245. ucloud/services/usms/client.py +759 -0
  246. ucloud/services/usms/schemas/__init__.py +0 -0
  247. ucloud/services/usms/schemas/apis.py +653 -0
  248. ucloud/services/usms/schemas/models.py +215 -0
  249. ucloud/services/utsdb/__init__.py +0 -0
  250. ucloud/services/utsdb/client.py +604 -0
  251. ucloud/services/utsdb/schemas/__init__.py +0 -0
  252. ucloud/services/utsdb/schemas/apis.py +515 -0
  253. ucloud/services/utsdb/schemas/models.py +61 -0
  254. ucloud/services/uvms/__init__.py +0 -0
  255. ucloud/services/uvms/client.py +119 -0
  256. ucloud/services/uvms/schemas/__init__.py +0 -0
  257. ucloud/services/uvms/schemas/apis.py +88 -0
  258. ucloud/services/uvms/schemas/models.py +40 -0
  259. ucloud/services/vpc/__init__.py +0 -0
  260. ucloud/services/vpc/client.py +3233 -0
  261. ucloud/services/vpc/schemas/__init__.py +0 -0
  262. ucloud/services/vpc/schemas/apis.py +2529 -0
  263. ucloud/services/vpc/schemas/models.py +651 -0
  264. ucloud/testing/__init__.py +0 -0
  265. ucloud/testing/driver/__init__.py +5 -0
  266. ucloud/testing/driver/_scenario.py +93 -0
  267. ucloud/testing/driver/_specification.py +57 -0
  268. ucloud/testing/driver/_step.py +166 -0
  269. ucloud/testing/env.py +28 -0
  270. ucloud/testing/exc.py +18 -0
  271. ucloud/testing/funcs.py +68 -0
  272. ucloud/testing/mock.py +28 -0
  273. ucloud/testing/op.py +177 -0
  274. ucloud/testing/utest.py +195 -0
  275. ucloud/version.py +1 -0
  276. ucloud_sdk_python3-0.11.81.dist-info/LICENSE +202 -0
  277. ucloud_sdk_python3-0.11.81.dist-info/METADATA +71 -0
  278. ucloud_sdk_python3-0.11.81.dist-info/RECORD +280 -0
  279. ucloud_sdk_python3-0.11.81.dist-info/WHEEL +5 -0
  280. ucloud_sdk_python3-0.11.81.dist-info/top_level.txt +1 -0
@@ -0,0 +1,427 @@
1
+ """ Code is generated by ucloud-model, DO NOT EDIT IT. """
2
+
3
+ from ucloud.core.typesystem import schema, fields
4
+
5
+
6
+ class CopyImageTaskInfoSchema(schema.ResponseSchema):
7
+ """CopyImageTaskInfo - 镜像复制的任务信息"""
8
+
9
+ fields = {
10
+ "TargetImageId": fields.Str(required=False, load_from="TargetImageId"),
11
+ "TargetRegion": fields.Str(required=False, load_from="TargetRegion"),
12
+ "TaskId": fields.Str(required=False, load_from="TaskId"),
13
+ }
14
+
15
+
16
+ class KeyPairSchema(schema.ResponseSchema):
17
+ """KeyPair - 密钥对信息"""
18
+
19
+ fields = {
20
+ "CreateTime": fields.Int(required=False, load_from="CreateTime"),
21
+ "KeyPairFingerPrint": fields.Str(
22
+ required=False, load_from="KeyPairFingerPrint"
23
+ ),
24
+ "KeyPairId": fields.Str(required=False, load_from="KeyPairId"),
25
+ "KeyPairName": fields.Str(required=False, load_from="KeyPairName"),
26
+ "PrivateKeyBody": fields.Str(
27
+ required=False, load_from="PrivateKeyBody"
28
+ ),
29
+ "ProjectId": fields.Str(required=False, load_from="ProjectId"),
30
+ }
31
+
32
+
33
+ class GraphicsMemorySchema(schema.ResponseSchema):
34
+ """GraphicsMemory - GPU的显存指标"""
35
+
36
+ fields = {
37
+ "Rate": fields.Int(required=False, load_from="Rate"),
38
+ "Value": fields.Int(required=False, load_from="Value"),
39
+ }
40
+
41
+
42
+ class CpuPlatformsSchema(schema.ResponseSchema):
43
+ """CpuPlatforms - CPU平台信息"""
44
+
45
+ fields = {
46
+ "Amd": fields.List(fields.Str()),
47
+ "Ampere": fields.List(fields.Str()),
48
+ "Intel": fields.List(fields.Str()),
49
+ }
50
+
51
+
52
+ class DataDiskInfoSchema(schema.ResponseSchema):
53
+ """DataDiskInfo - 数据盘信息"""
54
+
55
+ fields = {
56
+ "Features": fields.List(fields.Str()),
57
+ "MaximalSize": fields.Int(required=False, load_from="MaximalSize"),
58
+ "MinimalSize": fields.Int(required=False, load_from="MinimalSize"),
59
+ "Name": fields.Str(required=False, load_from="Name"),
60
+ }
61
+
62
+
63
+ class BootDiskInfoSchema(schema.ResponseSchema):
64
+ """BootDiskInfo - 系统盘信息"""
65
+
66
+ fields = {
67
+ "Features": fields.List(fields.Str()),
68
+ "InstantResize": fields.Bool(required=False, load_from="InstantResize"),
69
+ "MaximalSize": fields.Int(required=False, load_from="MaximalSize"),
70
+ "Name": fields.Str(required=False, load_from="Name"),
71
+ }
72
+
73
+
74
+ class DisksSchema(schema.ResponseSchema):
75
+ """Disks - 磁盘信息"""
76
+
77
+ fields = {
78
+ "BootDisk": fields.List(BootDiskInfoSchema()),
79
+ "DataDisk": fields.List(DataDiskInfoSchema()),
80
+ "Name": fields.Str(required=False, load_from="Name"),
81
+ }
82
+
83
+
84
+ class FeatureModesSchema(schema.ResponseSchema):
85
+ """FeatureModes - 可以支持的模式类别"""
86
+
87
+ fields = {
88
+ "MinimalCpuPlatform": fields.List(fields.Str()),
89
+ "Name": fields.Str(required=False, load_from="Name"),
90
+ "RelatedToImageFeature": fields.List(fields.Str()),
91
+ }
92
+
93
+
94
+ class FeaturesSchema(schema.ResponseSchema):
95
+ """Features - 虚机可支持的特性"""
96
+
97
+ fields = {
98
+ "Modes": fields.List(FeatureModesSchema()),
99
+ "Name": fields.Str(required=False, load_from="Name"),
100
+ }
101
+
102
+
103
+ class CollectionSchema(schema.ResponseSchema):
104
+ """Collection - CPU和内存可支持的规格"""
105
+
106
+ fields = {
107
+ "Cpu": fields.Int(required=False, load_from="Cpu"),
108
+ "Memory": fields.List(fields.Int()),
109
+ "MinimalCpuPlatform": fields.List(fields.Str()),
110
+ }
111
+
112
+
113
+ class MachineSizesSchema(schema.ResponseSchema):
114
+ """MachineSizes - GPU、CPU和内存信息"""
115
+
116
+ fields = {
117
+ "Collection": fields.List(CollectionSchema()),
118
+ "Gpu": fields.Int(required=False, load_from="Gpu"),
119
+ }
120
+
121
+
122
+ class PerformanceSchema(schema.ResponseSchema):
123
+ """Performance - GPU的性能指标"""
124
+
125
+ fields = {
126
+ "Rate": fields.Int(required=False, load_from="Rate"),
127
+ "Value": fields.Float(required=False, load_from="Value"),
128
+ }
129
+
130
+
131
+ class AvailableInstanceTypesSchema(schema.ResponseSchema):
132
+ """AvailableInstanceTypes - https://ushare.ucloudadmin.com/pages/viewpage.action?pageId=104662646"""
133
+
134
+ fields = {
135
+ "CpuPlatforms": CpuPlatformsSchema(),
136
+ "Description": fields.Str(required=False, load_from="Description"),
137
+ "Disks": fields.List(DisksSchema()),
138
+ "Features": fields.List(FeaturesSchema()),
139
+ "GraphicsMemory": GraphicsMemorySchema(),
140
+ "InstanceType": fields.Str(required=True, load_from="InstanceType"),
141
+ "MachineClass": fields.Str(required=False, load_from="MachineClass"),
142
+ "MachineSizes": fields.List(MachineSizesSchema()),
143
+ "Name": fields.Str(required=False, load_from="Name"),
144
+ "ParentType": fields.Str(required=False, load_from="ParentType"),
145
+ "Performance": PerformanceSchema(),
146
+ "Status": fields.Str(required=False, load_from="Status"),
147
+ "Zone": fields.Str(required=False, load_from="Zone"),
148
+ }
149
+
150
+
151
+ class BasePriceSetSchema(schema.ResponseSchema):
152
+ """BasePriceSet - 价格信息"""
153
+
154
+ fields = {
155
+ "ChargeType": fields.Str(required=False, load_from="ChargeType"),
156
+ "OriginalPrice": fields.Float(
157
+ required=False, load_from="OriginalPrice"
158
+ ),
159
+ "Price": fields.Float(required=False, load_from="Price"),
160
+ }
161
+
162
+
163
+ class UHostImageSetSchema(schema.ResponseSchema):
164
+ """UHostImageSet - DescribeImage"""
165
+
166
+ fields = {
167
+ "CreateTime": fields.Int(required=False, load_from="CreateTime"),
168
+ "DataSnapshotIds": fields.List(fields.Str()),
169
+ "Features": fields.List(fields.Str()),
170
+ "FuncType": fields.Str(required=False, load_from="FuncType"),
171
+ "ImageDescription": fields.Str(
172
+ required=False, load_from="ImageDescription"
173
+ ),
174
+ "ImageId": fields.Str(required=False, load_from="ImageId"),
175
+ "ImageName": fields.Str(required=False, load_from="ImageName"),
176
+ "ImageSize": fields.Int(required=False, load_from="ImageSize"),
177
+ "ImageType": fields.Str(required=False, load_from="ImageType"),
178
+ "IntegratedSoftware": fields.Str(
179
+ required=False, load_from="IntegratedSoftware"
180
+ ),
181
+ "Links": fields.Str(required=False, load_from="Links"),
182
+ "MaintainEol": fields.Str(required=False, load_from="MaintainEol"),
183
+ "MinimalCPU": fields.Str(required=False, load_from="MinimalCPU"),
184
+ "OsName": fields.Str(required=False, load_from="OsName"),
185
+ "OsType": fields.Str(required=False, load_from="OsType"),
186
+ "PriceSet": fields.List(BasePriceSetSchema()),
187
+ "PrimarySoftware": fields.Str(
188
+ required=False, load_from="PrimarySoftware"
189
+ ),
190
+ "SceneCategories": fields.List(fields.Str()),
191
+ "State": fields.Str(required=False, load_from="State"),
192
+ "SupportedGPUTypes": fields.List(fields.Str()),
193
+ "Tag": fields.Str(required=False, load_from="Tag"),
194
+ "Vendor": fields.Str(required=False, load_from="Vendor"),
195
+ "Zone": fields.Str(required=False, load_from="Zone"),
196
+ }
197
+
198
+
199
+ class SpreadInfoSchema(schema.ResponseSchema):
200
+ """SpreadInfo - 每个可用区中硬件隔离组信息"""
201
+
202
+ fields = {
203
+ "UHostCount": fields.Int(required=False, load_from="UHostCount"),
204
+ "Zone": fields.Str(required=False, load_from="Zone"),
205
+ }
206
+
207
+
208
+ class IsolationGroupSchema(schema.ResponseSchema):
209
+ """IsolationGroup - 硬件隔离组信息"""
210
+
211
+ fields = {
212
+ "GroupId": fields.Str(required=False, load_from="GroupId"),
213
+ "GroupName": fields.Str(required=False, load_from="GroupName"),
214
+ "Remark": fields.Str(required=False, load_from="Remark"),
215
+ "SpreadInfoSet": fields.List(SpreadInfoSchema()),
216
+ }
217
+
218
+
219
+ class UDSetUDHostAttributeSchema(schema.ResponseSchema):
220
+ """UDSetUDHostAttribute - 私有专区对应的宿主机属性"""
221
+
222
+ fields = {
223
+ "HostBinding": fields.Bool(required=False, load_from="HostBinding"),
224
+ "UDHostId": fields.Str(required=False, load_from="UDHostId"),
225
+ "UDSetId": fields.Str(required=False, load_from="UDSetId"),
226
+ }
227
+
228
+
229
+ class UHostIPSetSchema(schema.ResponseSchema):
230
+ """UHostIPSet - DescribeUHostInstance"""
231
+
232
+ fields = {
233
+ "Bandwidth": fields.Int(required=False, load_from="Bandwidth"),
234
+ "Default": fields.Str(required=False, load_from="Default"),
235
+ "IP": fields.Str(required=False, load_from="IP"),
236
+ "IPId": fields.Str(required=False, load_from="IPId"),
237
+ "IPMode": fields.Str(required=True, load_from="IPMode"),
238
+ "Mac": fields.Str(required=False, load_from="Mac"),
239
+ "NetworkInterfaceId": fields.Str(
240
+ required=False, load_from="NetworkInterfaceId"
241
+ ),
242
+ "SubnetId": fields.Str(required=False, load_from="SubnetId"),
243
+ "Type": fields.Str(required=False, load_from="Type"),
244
+ "VPCId": fields.Str(required=False, load_from="VPCId"),
245
+ "Weight": fields.Int(required=False, load_from="Weight"),
246
+ }
247
+
248
+
249
+ class UHostDiskSetSchema(schema.ResponseSchema):
250
+ """UHostDiskSet - DescribeUHostInstance"""
251
+
252
+ fields = {
253
+ "BackupType": fields.Str(required=False, load_from="BackupType"),
254
+ "DiskId": fields.Str(required=False, load_from="DiskId"),
255
+ "DiskType": fields.Str(required=True, load_from="DiskType"),
256
+ "Drive": fields.Str(required=False, load_from="Drive"),
257
+ "Encrypted": fields.Str(required=False, load_from="Encrypted"),
258
+ "IsBoot": fields.Str(required=True, load_from="IsBoot"),
259
+ "Name": fields.Str(required=False, load_from="Name"),
260
+ "Size": fields.Int(required=False, load_from="Size"),
261
+ "Type": fields.Str(required=False, load_from="Type"),
262
+ }
263
+
264
+
265
+ class UHostKeyPairSchema(schema.ResponseSchema):
266
+ """UHostKeyPair - 主机密钥信息"""
267
+
268
+ fields = {
269
+ "KeyPairId": fields.Str(required=False, load_from="KeyPairId"),
270
+ "KeyPairState": fields.Str(required=False, load_from="KeyPairState"),
271
+ }
272
+
273
+
274
+ class SpotAttributeSchema(schema.ResponseSchema):
275
+ """SpotAttribute - 竞价实例属性"""
276
+
277
+ fields = {
278
+ "RecycleTime": fields.Int(required=False, load_from="RecycleTime"),
279
+ }
280
+
281
+
282
+ class UHostInstanceSetSchema(schema.ResponseSchema):
283
+ """UHostInstanceSet - DescribeUHostInstance"""
284
+
285
+ fields = {
286
+ "AutoRenew": fields.Str(required=False, load_from="AutoRenew"),
287
+ "BasicImageId": fields.Str(required=False, load_from="BasicImageId"),
288
+ "BasicImageName": fields.Str(
289
+ required=False, load_from="BasicImageName"
290
+ ),
291
+ "BootDiskState": fields.Str(required=False, load_from="BootDiskState"),
292
+ "CPU": fields.Int(required=False, load_from="CPU"),
293
+ "ChargeType": fields.Str(required=False, load_from="ChargeType"),
294
+ "CloudInitFeature": fields.Bool(
295
+ required=False, load_from="CloudInitFeature"
296
+ ),
297
+ "CpuPlatform": fields.Str(required=False, load_from="CpuPlatform"),
298
+ "CreateTime": fields.Int(required=False, load_from="CreateTime"),
299
+ "DiskSet": fields.List(UHostDiskSetSchema()),
300
+ "EpcInstance": fields.Bool(required=False, load_from="EpcInstance"),
301
+ "ExpireTime": fields.Int(required=False, load_from="ExpireTime"),
302
+ "GPU": fields.Int(required=False, load_from="GPU"),
303
+ "GpuType": fields.Str(required=False, load_from="GpuType"),
304
+ "HiddenKvm": fields.Bool(required=False, load_from="HiddenKvm"),
305
+ "HostType": fields.Str(required=False, load_from="HostType"),
306
+ "HotPlugMaxCpu": fields.Int(required=False, load_from="HotPlugMaxCpu"),
307
+ "HotplugFeature": fields.Bool(
308
+ required=False, load_from="HotplugFeature"
309
+ ),
310
+ "HpcFeature": fields.Bool(required=False, load_from="HpcFeature"),
311
+ "IPSet": fields.List(UHostIPSetSchema()),
312
+ "IPv6Feature": fields.Bool(required=False, load_from="IPv6Feature"),
313
+ "ImageId": fields.Str(required=False, load_from="ImageId"),
314
+ "IsolationGroup": fields.Str(
315
+ required=False, load_from="IsolationGroup"
316
+ ),
317
+ "KeyPair": UHostKeyPairSchema(),
318
+ "LifeCycle": fields.Str(required=False, load_from="LifeCycle"),
319
+ "MachineType": fields.Str(required=False, load_from="MachineType"),
320
+ "Memory": fields.Int(required=False, load_from="Memory"),
321
+ "Name": fields.Str(required=False, load_from="Name"),
322
+ "NetCapability": fields.Str(required=False, load_from="NetCapability"),
323
+ "NetFeatureTag": fields.Str(required=False, load_from="NetFeatureTag"),
324
+ "NetworkState": fields.Str(required=False, load_from="NetworkState"),
325
+ "OsName": fields.Str(required=False, load_from="OsName"),
326
+ "OsType": fields.Str(required=False, load_from="OsType"),
327
+ "RdmaClusterId": fields.Str(required=False, load_from="RdmaClusterId"),
328
+ "Remark": fields.Str(required=False, load_from="Remark"),
329
+ "RestrictMode": fields.Str(required=False, load_from="RestrictMode"),
330
+ "SecGroupInstance": fields.Bool(
331
+ required=False, load_from="SecGroupInstance"
332
+ ),
333
+ "SpotAttribute": SpotAttributeSchema(),
334
+ "State": fields.Str(required=False, load_from="State"),
335
+ "StorageType": fields.Str(required=False, load_from="StorageType"),
336
+ "SubnetType": fields.Str(required=False, load_from="SubnetType"),
337
+ "Tag": fields.Str(required=False, load_from="Tag"),
338
+ "TimemachineFeature": fields.Str(
339
+ required=False, load_from="TimemachineFeature"
340
+ ),
341
+ "TotalDiskSpace": fields.Int(
342
+ required=False, load_from="TotalDiskSpace"
343
+ ),
344
+ "UDHostAttribute": UDSetUDHostAttributeSchema(),
345
+ "UHostId": fields.Str(required=False, load_from="UHostId"),
346
+ "UHostType": fields.Str(required=False, load_from="UHostType"),
347
+ "Zone": fields.Str(required=False, load_from="Zone"),
348
+ }
349
+
350
+
351
+ class UHostSnapshotSetSchema(schema.ResponseSchema):
352
+ """UHostSnapshotSet -"""
353
+
354
+ fields = {
355
+ "SnapshotName": fields.Str(required=False, load_from="SnapshotName"),
356
+ "SnapshotState": fields.Str(required=False, load_from="SnapshotState"),
357
+ "SnapshotTime": fields.Str(required=False, load_from="SnapshotTime"),
358
+ }
359
+
360
+
361
+ class KeyPairDescSchema(schema.ResponseSchema):
362
+ """KeyPairDesc - 密钥对信息,不包含私钥内容。"""
363
+
364
+ fields = {
365
+ "CreateTime": fields.Int(required=False, load_from="CreateTime"),
366
+ "KeyPairFingerPrint": fields.Str(
367
+ required=False, load_from="KeyPairFingerPrint"
368
+ ),
369
+ "KeyPairId": fields.Str(required=False, load_from="KeyPairId"),
370
+ "KeyPairName": fields.Str(required=False, load_from="KeyPairName"),
371
+ "ProjectId": fields.Str(required=False, load_from="ProjectId"),
372
+ }
373
+
374
+
375
+ class UHostTagSetSchema(schema.ResponseSchema):
376
+ """UHostTagSet - DescribeUHostTags"""
377
+
378
+ fields = {
379
+ "Tag": fields.Str(required=False, load_from="Tag"),
380
+ "TotalCount": fields.Int(required=False, load_from="TotalCount"),
381
+ "Zone": fields.Str(required=False, load_from="Zone"),
382
+ }
383
+
384
+
385
+ class DiskUpgradePriceDetailSchema(schema.ResponseSchema):
386
+ """DiskUpgradePriceDetail - 升级磁盘的详细价格"""
387
+
388
+ fields = {
389
+ "Snapshot": fields.Float(required=False, load_from="Snapshot"),
390
+ "UDisk": fields.Float(required=False, load_from="UDisk"),
391
+ }
392
+
393
+
394
+ class PriceDetailSchema(schema.ResponseSchema):
395
+ """PriceDetail - 价格详细信息"""
396
+
397
+ fields = {
398
+ "Snapshot": fields.Float(required=False, load_from="Snapshot"),
399
+ "UDisk": fields.Float(required=False, load_from="UDisk"),
400
+ "UHost": fields.Float(required=False, load_from="UHost"),
401
+ "Volume": fields.Float(required=False, load_from="Volume"),
402
+ }
403
+
404
+
405
+ class UHostPriceSetSchema(schema.ResponseSchema):
406
+ """UHostPriceSet - 主机价格"""
407
+
408
+ fields = {
409
+ "ChargeType": fields.Str(required=True, load_from="ChargeType"),
410
+ "ListPrice": fields.Float(required=False, load_from="ListPrice"),
411
+ "ListPriceDetail": PriceDetailSchema(),
412
+ "OriginalPrice": fields.Float(required=True, load_from="OriginalPrice"),
413
+ "OriginalPriceDetail": PriceDetailSchema(),
414
+ "Price": fields.Float(required=True, load_from="Price"),
415
+ "PriceDetail": PriceDetailSchema(),
416
+ }
417
+
418
+
419
+ class UHostRefundPriceSetSchema(schema.ResponseSchema):
420
+ """UHostRefundPriceSet - 删除退费详情"""
421
+
422
+ fields = {
423
+ "Code": fields.Int(required=True, load_from="Code"),
424
+ "Message": fields.Str(required=False, load_from="Message"),
425
+ "RefundPrice": fields.Float(required=False, load_from="RefundPrice"),
426
+ "UHostId": fields.Str(required=True, load_from="UHostId"),
427
+ }
File without changes
@@ -0,0 +1,229 @@
1
+ """ Code is generated by ucloud-model, DO NOT EDIT IT. """
2
+
3
+ import typing
4
+
5
+
6
+ from ucloud.core.client import Client
7
+ from ucloud.services.uhub.schemas import apis
8
+
9
+
10
+ class UHubClient(Client):
11
+ def __init__(
12
+ self, config: dict, transport=None, middleware=None, logger=None
13
+ ):
14
+ super(UHubClient, self).__init__(config, transport, middleware, logger)
15
+
16
+ def create_repo(self, req: typing.Optional[dict] = None, **kwargs) -> dict:
17
+ """CreateRepo - 创建镜像仓库
18
+
19
+ **Request**
20
+
21
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
22
+ - **RepoName** (str) - (Required) 仓库名称,不可修改
23
+ - **Description** (str) - 仓库备注
24
+ - **IsShared** (bool) - 镜像仓库是否公开,公开为true、不公开为false;默认为false
25
+
26
+ **Response**
27
+
28
+ - **Message** (str) - 有错误时返回内容
29
+
30
+ """
31
+ # build request
32
+ d = {
33
+ "ProjectId": self.config.project_id,
34
+ }
35
+ req and d.update(req)
36
+ d = apis.CreateRepoRequestSchema().dumps(d)
37
+
38
+ # build options
39
+ kwargs["max_retries"] = 0 # ignore retry when api is not idempotent
40
+
41
+ resp = self.invoke("CreateRepo", d, **kwargs)
42
+ return apis.CreateRepoResponseSchema().loads(resp)
43
+
44
+ def delete_repo(self, req: typing.Optional[dict] = None, **kwargs) -> dict:
45
+ """DeleteRepo - 删除镜像仓库
46
+
47
+ **Request**
48
+
49
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
50
+ - **RepoName** (str) - (Required) 镜像仓库名称
51
+
52
+ **Response**
53
+
54
+
55
+ """
56
+ # build request
57
+ d = {
58
+ "ProjectId": self.config.project_id,
59
+ }
60
+ req and d.update(req)
61
+ d = apis.DeleteRepoRequestSchema().dumps(d)
62
+
63
+ resp = self.invoke("DeleteRepo", d, **kwargs)
64
+ return apis.DeleteRepoResponseSchema().loads(resp)
65
+
66
+ def delete_repo_image(
67
+ self, req: typing.Optional[dict] = None, **kwargs
68
+ ) -> dict:
69
+ """DeleteRepoImage - 删除镜像
70
+
71
+ **Request**
72
+
73
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
74
+ - **ImageName** (str) - (Required) 镜像名称
75
+ - **RepoName** (str) - (Required) 镜像仓库名称
76
+ - **TagName** (str) - 不指定tag则删除全部tag
77
+
78
+ **Response**
79
+
80
+
81
+ """
82
+ # build request
83
+ d = {
84
+ "ProjectId": self.config.project_id,
85
+ }
86
+ req and d.update(req)
87
+ d = apis.DeleteRepoImageRequestSchema().dumps(d)
88
+
89
+ resp = self.invoke("DeleteRepoImage", d, **kwargs)
90
+ return apis.DeleteRepoImageResponseSchema().loads(resp)
91
+
92
+ def get_image_tag(
93
+ self, req: typing.Optional[dict] = None, **kwargs
94
+ ) -> dict:
95
+ """GetImageTag - 获取镜像tag
96
+
97
+ **Request**
98
+
99
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list>`_
100
+ - **ImageName** (str) - (Required) 镜像名称
101
+ - **RepoName** (str) - (Required) 镜像仓库名称
102
+ - **Limit** (int) - 每次获取数量,默认为20
103
+ - **Offset** (int) - 偏移量,默认0
104
+ - **TagName** (str) - 默认不写,如果填写,代表查询该tag,否则查全部tag
105
+
106
+ **Response**
107
+
108
+ - **TagSet** (list) - 见 **TagSet** 模型定义
109
+ - **TotalCount** (int) - tag总数
110
+
111
+ **Response Model**
112
+
113
+ **TagSet**
114
+ - **Digest** (str) - 镜像digest值
115
+ - **TagName** (str) - Tag名称
116
+ - **UpdateTime** (str) - 镜像更新时间
117
+
118
+
119
+ """
120
+ # build request
121
+ d = {
122
+ "ProjectId": self.config.project_id,
123
+ }
124
+ req and d.update(req)
125
+ d = apis.GetImageTagRequestSchema().dumps(d)
126
+
127
+ resp = self.invoke("GetImageTag", d, **kwargs)
128
+ return apis.GetImageTagResponseSchema().loads(resp)
129
+
130
+ def get_repo(self, req: typing.Optional[dict] = None, **kwargs) -> dict:
131
+ """GetRepo - 获取镜像仓库
132
+
133
+ **Request**
134
+
135
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
136
+ - **Limit** (int) - 数量,默认20
137
+ - **Offset** (int) - 偏移量,默认0
138
+ - **Type** (str) - private私有仓库,public公共仓库,默认public
139
+
140
+ **Response**
141
+
142
+ - **RepoSet** (list) - 见 **RepoSet** 模型定义
143
+ - **TotalCount** (int) - 总的仓库数量
144
+
145
+ **Response Model**
146
+
147
+ **RepoSet**
148
+ - **CreateTime** (str) - 仓库创建时间
149
+ - **Description** (str) - 镜像仓库描述
150
+ - **IsOutSide** (str) - 镜像仓库是否外网可以访问,可以为ture,不可以为false
151
+ - **IsShared** (str) - 镜像仓库类型,false为私有;true为公有
152
+ - **RepoName** (str) - 镜像仓库名称
153
+ - **UpdateTime** (str) - 仓库更新时间
154
+
155
+
156
+ """
157
+ # build request
158
+ d = {
159
+ "ProjectId": self.config.project_id,
160
+ }
161
+ req and d.update(req)
162
+ d = apis.GetRepoRequestSchema().dumps(d)
163
+
164
+ resp = self.invoke("GetRepo", d, **kwargs)
165
+ return apis.GetRepoResponseSchema().loads(resp)
166
+
167
+ def get_repo_image(
168
+ self, req: typing.Optional[dict] = None, **kwargs
169
+ ) -> dict:
170
+ """GetRepoImage - 获取镜像仓库下的镜像
171
+
172
+ **Request**
173
+
174
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
175
+ - **RepoName** (str) - (Required) 镜像仓库名称
176
+ - **Limit** (int) - 显示数量,默认为20
177
+ - **Offset** (int) - 偏移量,默认0
178
+
179
+ **Response**
180
+
181
+ - **ImageSet** (list) - 见 **ImageSet** 模型定义
182
+ - **TotalCount** (int) -
183
+
184
+ **Response Model**
185
+
186
+ **ImageSet**
187
+ - **CreateTime** (str) - 创建时间
188
+ - **ImageName** (str) - 镜像名称
189
+ - **LatestTag** (str) - 最新push的Tag
190
+ - **PullCount** (int) - 镜像被下载次数
191
+ - **RepoName** (str) - 镜像仓库名称
192
+ - **UpdateTime** (str) - 修改时间
193
+
194
+
195
+ """
196
+ # build request
197
+ d = {
198
+ "ProjectId": self.config.project_id,
199
+ }
200
+ req and d.update(req)
201
+ d = apis.GetRepoImageRequestSchema().dumps(d)
202
+
203
+ resp = self.invoke("GetRepoImage", d, **kwargs)
204
+ return apis.GetRepoImageResponseSchema().loads(resp)
205
+
206
+ def update_repo(self, req: typing.Optional[dict] = None, **kwargs) -> dict:
207
+ """UpdateRepo - 更新镜像仓库
208
+
209
+ **Request**
210
+
211
+ - **ProjectId** (str) - (Config) 项目ID。不填写为默认项目,子帐号必须填写。 请参考 `GetProjectList接口 <https://docs.ucloud.cn/api/summary/get_project_list.html>`_
212
+ - **RepoName** (str) - (Required) 镜像仓库名称,不可修改
213
+ - **Description** (str) - 备注
214
+ - **IsShared** (str) - false设置为私有;true设置为公有。默认false
215
+
216
+ **Response**
217
+
218
+ - **Message** (str) - 错误的时候返回
219
+
220
+ """
221
+ # build request
222
+ d = {
223
+ "ProjectId": self.config.project_id,
224
+ }
225
+ req and d.update(req)
226
+ d = apis.UpdateRepoRequestSchema().dumps(d)
227
+
228
+ resp = self.invoke("UpdateRepo", d, **kwargs)
229
+ return apis.UpdateRepoResponseSchema().loads(resp)
File without changes