yicloud-sdk-python 0.2.0__tar.gz → 0.3.0__tar.gz
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.
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/PKG-INFO +1 -1
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/pyproject.toml +1 -1
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/version.py +1 -1
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/__init__.py +1 -1
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/msgs/__init__.py +2 -2
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/fs/__init__.py +2 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/fs/models.py +25 -6
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/mc/models.py +29 -21
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/oss/models.py +40 -36
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/ray/models.py +48 -32
- yicloud_sdk_python-0.3.0/yicloud/services/registry/__init__.py +40 -0
- yicloud_sdk_python-0.3.0/yicloud/services/registry/actions.py +114 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/registry/client.py +1 -1
- yicloud_sdk_python-0.3.0/yicloud/services/registry/models.py +145 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/volume/__init__.py +1 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/volume/models.py +23 -19
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/workspace/models.py +41 -40
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/PKG-INFO +1 -1
- yicloud_sdk_python-0.2.0/yicloud/services/registry/__init__.py +0 -47
- yicloud_sdk_python-0.2.0/yicloud/services/registry/actions.py +0 -151
- yicloud_sdk_python-0.2.0/yicloud/services/registry/models.py +0 -141
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/LICENSE +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/README.md +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/setup.cfg +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/auth/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/auth/credential.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/auth/sign.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/config.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/errs/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/log/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/log/logger.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/log/std.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/utils/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/utils/helps.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/utils/retry/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/base/utils/retry/retry.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/bc/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/bc/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/bc/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/bc/models.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/dataset/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/dataset/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/dataset/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/dataset/models.py +4 -4
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/fs/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/fs/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/iam/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/iam/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/iam/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/iam/models.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/inferset/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/inferset/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/inferset/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/inferset/models.py +6 -6
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/job/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/job/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/job/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/job/models.py +18 -18
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/mc/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/mc/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/mc/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/modelrepo/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/modelrepo/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/modelrepo/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/modelrepo/models.py +7 -7
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/monitor/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/monitor/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/monitor/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/monitor/models.py +5 -5
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/oss/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/oss/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/oss/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/ray/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/ray/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/ray/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/volume/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/volume/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/workspace/__init__.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/workspace/actions.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud/services/workspace/client.py +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/SOURCES.txt +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/dependency_links.txt +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/not-zip-safe +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/requires.txt +0 -0
- {yicloud_sdk_python-0.2.0 → yicloud_sdk_python-0.3.0}/yicloud_sdk_python.egg-info/top_level.txt +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import contextvars
|
|
2
|
-
from typing import Any, Dict, Generic, Optional, Tuple, TypeVar, Union, get_args, get_origin
|
|
2
|
+
from typing import Any, Dict, Generic, Optional, Tuple, TypeVar, Union, get_args, get_origin, get_type_hints
|
|
3
3
|
from abc import ABC, abstractmethod
|
|
4
4
|
from dataclasses import dataclass, fields, is_dataclass
|
|
5
5
|
|
|
@@ -60,7 +60,7 @@ def _dict_to_dataclass(target_type, data):
|
|
|
60
60
|
if not is_dataclass(target_type) or not isinstance(data, dict):
|
|
61
61
|
return data
|
|
62
62
|
|
|
63
|
-
field_types =
|
|
63
|
+
field_types = get_type_hints(target_type)
|
|
64
64
|
|
|
65
65
|
kwargs = {}
|
|
66
66
|
for key, value in data.items():
|
|
@@ -22,10 +22,12 @@ from .models import (
|
|
|
22
22
|
Authorization,
|
|
23
23
|
CreateFilesetWithQuotaReqAuthorization,
|
|
24
24
|
UpdateFilesetReqAuthorization,
|
|
25
|
+
BucketResponse,
|
|
25
26
|
CreateFilesetWithQuotaReq,
|
|
26
27
|
DeleteFilesetReq,
|
|
27
28
|
GetFileInfoData,
|
|
28
29
|
GetFilesetData,
|
|
30
|
+
FilesetItem,
|
|
29
31
|
ListDirData,
|
|
30
32
|
ListFilesetsWithQuotaInfoData,
|
|
31
33
|
SetFilesetQuotaReq,
|
|
@@ -31,6 +31,20 @@ class UpdateFilesetReqAuthorization:
|
|
|
31
31
|
Name: Optional[str] = None # 授权名称 json:"Name,omitempty"
|
|
32
32
|
Type: Optional[str] = None # 授权类型 json:"Type,omitempty"
|
|
33
33
|
|
|
34
|
+
@dataclass
|
|
35
|
+
class BucketResponse:
|
|
36
|
+
Bucket: Optional[str] = "" # 文件集名称 json:"Bucket,omitempty"
|
|
37
|
+
Capacity: Optional[str] = "" # 文件集容量(字节) json:"Capacity,omitempty"
|
|
38
|
+
Created: Optional[str] = "" # 创建时间 json:"Created,omitempty"
|
|
39
|
+
DeletedTime: Optional[str] = "" # 删除时间(回收站中显示) json:"DeletedTime,omitempty"
|
|
40
|
+
Fs: Optional[str] = "" # 文件系统 json:"Fs,omitempty"
|
|
41
|
+
FsCluster: Optional[str] = "" # 文件系统集群 json:"FsCluster,omitempty"
|
|
42
|
+
Owner: Optional[str] = "" # 文件集所有者 json:"Owner,omitempty"
|
|
43
|
+
Permission: Optional[str] = "" # 文件集权限 json:"Permission,omitempty"
|
|
44
|
+
Size: Optional[str] = "" # 已使用容量(字节) json:"Size,omitempty"
|
|
45
|
+
State: Optional[str] = "" # 文件集状态 json:"State,omitempty"
|
|
46
|
+
Tenant: Optional[str] = "" # 租户信息 json:"Tenant,omitempty"
|
|
47
|
+
|
|
34
48
|
@dataclass
|
|
35
49
|
class CreateFilesetWithQuotaReq:
|
|
36
50
|
Capacity: int # 文件集容量,单位字节 json:"Capacity"
|
|
@@ -73,16 +87,21 @@ class GetFilesetData:
|
|
|
73
87
|
Tenant: Optional[str] = "" # 租户信息 json:"Tenant,omitempty"
|
|
74
88
|
Used: Optional[str] = "" # 已使用容量(字节) json:"Used,omitempty"
|
|
75
89
|
|
|
90
|
+
@dataclass
|
|
91
|
+
class FilesetItem:
|
|
92
|
+
BucketResponse: Optional[BucketResponse] = None # 文件集详情 json:"BucketResponse,omitempty"
|
|
93
|
+
ID: Optional[str] = "" # 文件集ID json:"ID,omitempty"
|
|
94
|
+
|
|
76
95
|
@dataclass
|
|
77
96
|
class ListDirData:
|
|
78
|
-
|
|
97
|
+
Files: Optional[List[GetFileInfoData]] = None # 文件/目录列表 json:"Files,omitempty"
|
|
79
98
|
Limit: Optional[int] = 0 # 每页大小 json:"Limit,omitempty"
|
|
80
99
|
Offset: Optional[int] = 0 # 当前偏移量 json:"Offset,omitempty"
|
|
81
100
|
Total: Optional[int] = 0 # 总文件/目录数 json:"Total,omitempty"
|
|
82
101
|
|
|
83
102
|
@dataclass
|
|
84
103
|
class ListFilesetsWithQuotaInfoData:
|
|
85
|
-
Items: Optional[List[
|
|
104
|
+
Items: Optional[List[FilesetItem]] = None # 文件集列表 json:"Items,omitempty"
|
|
86
105
|
Total: Optional[int] = 0 # 总文件集数 json:"Total,omitempty"
|
|
87
106
|
|
|
88
107
|
@dataclass
|
|
@@ -117,18 +136,18 @@ class GetFilesetReq:
|
|
|
117
136
|
class ListDirReq:
|
|
118
137
|
Path: str # 目录路径 query:"Path"
|
|
119
138
|
CalculateDirSize: Optional[bool] = None # 是否计算目录大小 query:"CalculateDirSize,omitempty"
|
|
120
|
-
Offset: Optional[int] = None # 偏移量,从第几条记录开始查询 query:"Offset,omitempty"
|
|
121
139
|
Limit: Optional[int] = None # 每页数量 query:"Limit,omitempty"
|
|
140
|
+
Offset: Optional[int] = None # 偏移量,从第几条记录开始查询 query:"Offset,omitempty"
|
|
122
141
|
SortBy: Optional[str] = None # 排序字段 query:"SortBy,omitempty"
|
|
123
142
|
SortOrder: Optional[str] = None # 排序顺序 query:"SortOrder,omitempty"
|
|
124
143
|
|
|
125
144
|
@dataclass
|
|
126
145
|
class ListFilesetsWithQuotaInfoReq:
|
|
127
|
-
SortBy: Optional[str] = None # 排序字段,格式:字段名:排序方向,如 created:desc query:"SortBy,omitempty"
|
|
128
|
-
Offset: Optional[int] = None # 偏移量,从第几条记录开始查询 query:"Offset,omitempty"
|
|
129
|
-
Limit: Optional[int] = None # 每页数量 query:"Limit,omitempty"
|
|
130
146
|
Fs: Optional[str] = None # 文件系统,枚举值: GPFS SDK常量: FsGPFS query:"Fs,omitempty"
|
|
131
147
|
FsCluster: Optional[str] = None # 文件系统集群,枚举值: gpfs1 SDK常量: FsClustergpfs1 query:"FsCluster,omitempty"
|
|
132
148
|
Keyword: Optional[str] = None # 关键字搜索 query:"Keyword,omitempty"
|
|
149
|
+
Limit: Optional[int] = None # 每页数量 query:"Limit,omitempty"
|
|
150
|
+
Offset: Optional[int] = None # 偏移量,从第几条记录开始查询 query:"Offset,omitempty"
|
|
133
151
|
Owner: Optional[str] = None # 所有者 query:"Owner,omitempty"
|
|
152
|
+
SortBy: Optional[str] = None # 排序字段,格式:字段名:排序方向,如 created:desc query:"SortBy,omitempty"
|
|
134
153
|
|
|
@@ -96,12 +96,12 @@ class CreateProjectReq:
|
|
|
96
96
|
|
|
97
97
|
@dataclass
|
|
98
98
|
class CreateQuotaGroupReq:
|
|
99
|
-
MachineType: str # SDK常量: MachineTypeCPU, MachineTypeGPU json:"MachineType"
|
|
99
|
+
MachineType: str # 机器类型(CPU/GPU) SDK常量: MachineTypeCPU, MachineTypeGPU json:"MachineType"
|
|
100
100
|
Project: str # 项目名 json:"Project"
|
|
101
101
|
QuotaGroup: str # 配额组名 json:"QuotaGroup"
|
|
102
|
-
UsageType: str # SDK常量: UsageTypeWorkspace, UsageTypeWorkload json:"UsageType"
|
|
102
|
+
UsageType: str # 使用类型(workspace/workload) SDK常量: UsageTypeWorkspace, UsageTypeWorkload json:"UsageType"
|
|
103
103
|
AllocateScope: Optional[str] = None # 分配范围(可选,不传则自动推断) SDK常量: AllocateScopePublic, AllocateScopeTenant, AllocateScopeProject, AllocateScopeQuotagroup, AllocateNoValue json:"AllocateScope,omitempty"
|
|
104
|
-
NodeNames: Optional[List[str]] = None # json:"NodeNames,omitempty"
|
|
104
|
+
NodeNames: Optional[List[str]] = None # 节点名称列表 json:"NodeNames,omitempty"
|
|
105
105
|
Quota: Optional[CreateQuotaGroupReqQuota] = None # 配额 json:"Quota,omitempty"
|
|
106
106
|
QuotaGroupUsers: Optional[List[CreateQuotaGroupReqQuotaGroupUser]] = None # 配额组角色列表(指针用于判断是否传参) json:"QuotaGroupUsers,omitempty"
|
|
107
107
|
|
|
@@ -143,7 +143,7 @@ class ListNodeInstancesData:
|
|
|
143
143
|
|
|
144
144
|
@dataclass
|
|
145
145
|
class ListNodesData:
|
|
146
|
-
GpuOccupancyUsers: Optional[Dict[str, int]] = None # json:"GpuOccupancyUsers,omitempty"
|
|
146
|
+
GpuOccupancyUsers: Optional[Dict[str, int]] = None # GPU 占用用户统计(用户名 -> Pod 数) json:"GpuOccupancyUsers,omitempty"
|
|
147
147
|
Items: Optional[List[NodeData]] = None # 节点列表 json:"Items,omitempty"
|
|
148
148
|
Limit: Optional[int] = 0 # 分页大小 json:"Limit,omitempty"
|
|
149
149
|
Offset: Optional[int] = 0 # 分页偏移量 json:"Offset,omitempty"
|
|
@@ -188,6 +188,8 @@ class ListQuotaGroupsSimpleData:
|
|
|
188
188
|
@dataclass
|
|
189
189
|
class ListSKUsData:
|
|
190
190
|
Items: Optional[List[SKUData]] = None # SKU列表 json:"Items,omitempty"
|
|
191
|
+
Limit: Optional[int] = 0 # 分页大小 json:"Limit,omitempty"
|
|
192
|
+
Offset: Optional[int] = 0 # 分页偏移量 json:"Offset,omitempty"
|
|
191
193
|
Total: Optional[int] = 0 # 总条数 json:"Total,omitempty"
|
|
192
194
|
|
|
193
195
|
@dataclass
|
|
@@ -205,13 +207,14 @@ class ListNodeConfigurationData:
|
|
|
205
207
|
@dataclass
|
|
206
208
|
class NodeData:
|
|
207
209
|
GPUType: Optional[str] = "" # 卡类型 json:"GPUType,omitempty"
|
|
208
|
-
|
|
210
|
+
Internet: Optional[bool] = False # 是否联网 json:"Internet,omitempty"
|
|
211
|
+
MachineType: Optional[str] = None # 机器类型(CPU/GPU) SDK常量: MachineTypeCPU, MachineTypeGPU json:"MachineType,omitempty"
|
|
209
212
|
MaintenanceStatus: Optional[str] = "" # 维护状态 json:"MaintenanceStatus,omitempty"
|
|
210
213
|
NodeId: Optional[str] = "" # 节点UID json:"NodeId,omitempty"
|
|
211
214
|
NodeName: Optional[str] = "" # 基本信息 json:"NodeName,omitempty"
|
|
212
215
|
NodeQuota: Optional[NodeQuota] = None # 节点配额 json:"NodeQuota,omitempty"
|
|
213
216
|
NodeStatus: Optional[str] = "" # 状态信息 json:"NodeStatus,omitempty"
|
|
214
|
-
PodCount: Optional[int] = 0 #
|
|
217
|
+
PodCount: Optional[int] = 0 # Pod个数 json:"PodCount,omitempty"
|
|
215
218
|
Project: Optional[str] = "" # 项目名称 json:"Project,omitempty"
|
|
216
219
|
QuotaGroup: Optional[str] = "" # 配额组 json:"QuotaGroup,omitempty"
|
|
217
220
|
Unschedulable: Optional[bool] = False # 不可调度 json:"Unschedulable,omitempty"
|
|
@@ -323,12 +326,12 @@ class UpdateQuotaGroupReqQuota:
|
|
|
323
326
|
@dataclass
|
|
324
327
|
class GetQuotaGroupData:
|
|
325
328
|
AllocateScope: Optional[str] = None # 分配范围:global_public / tenant_public / project_public / quotagroup_private SDK常量: AllocateScopePublic, AllocateScopeTenant, AllocateScopeProject, AllocateScopeQuotagroup, AllocateNoValue json:"AllocateScope,omitempty"
|
|
326
|
-
CpuMemoryLimit: Optional[CpuMemoryLimit] = None # json:"CpuMemoryLimit,omitempty"
|
|
329
|
+
CpuMemoryLimit: Optional[CpuMemoryLimit] = None # CPU/内存限制 json:"CpuMemoryLimit,omitempty"
|
|
327
330
|
CreationTime: Optional[str] = "" # 创建时间(RFC3339,UTC) json:"CreationTime,omitempty"
|
|
328
331
|
Creator: Optional[str] = "" # 创建者 json:"Creator,omitempty"
|
|
329
332
|
IdleStatus: Optional[str] = None # 闲时状态 SDK常量: IdleStatusOpen, IdleStatusClosed json:"IdleStatus,omitempty"
|
|
330
|
-
MachineType: Optional[str] = None # SDK常量: MachineTypeCPU, MachineTypeGPU json:"MachineType,omitempty"
|
|
331
|
-
NodeNames: Optional[List[str]] = None # json:"NodeNames,omitempty"
|
|
333
|
+
MachineType: Optional[str] = None # 机器类型(CPU/GPU) SDK常量: MachineTypeCPU, MachineTypeGPU json:"MachineType,omitempty"
|
|
334
|
+
NodeNames: Optional[List[str]] = None # 节点名称列表 json:"NodeNames,omitempty"
|
|
332
335
|
Project: Optional[str] = "" # 项目名 json:"Project,omitempty"
|
|
333
336
|
QuotaGroup: Optional[str] = "" # 配额组名 json:"QuotaGroup,omitempty"
|
|
334
337
|
QuotaGroupId: Optional[str] = "" # 配额组ID json:"QuotaGroupId,omitempty"
|
|
@@ -336,7 +339,7 @@ class GetQuotaGroupData:
|
|
|
336
339
|
QuotaStatus: Optional[QuotaStatus] = None # 配额状态 json:"QuotaStatus,omitempty"
|
|
337
340
|
SchedStrategy: Optional[str] = None # 调度策略 SDK常量: SchedStrategySoft, SchedStrategyStrict json:"SchedStrategy,omitempty"
|
|
338
341
|
TenantIdleStatus: Optional[str] = None # 租户闲时状态 SDK常量: IdleStatusOpen, IdleStatusClosed json:"TenantIdleStatus,omitempty"
|
|
339
|
-
UsageType: Optional[str] = None # SDK常量: UsageTypeWorkspace, UsageTypeWorkload json:"UsageType,omitempty"
|
|
342
|
+
UsageType: Optional[str] = None # 使用类型(workspace/workload) SDK常量: UsageTypeWorkspace, UsageTypeWorkload json:"UsageType,omitempty"
|
|
340
343
|
|
|
341
344
|
@dataclass
|
|
342
345
|
class QuotaGroupUser:
|
|
@@ -389,6 +392,7 @@ class SKUData:
|
|
|
389
392
|
CpuCores: Optional[str] = "" # CPU 核数 json:"CpuCores,omitempty"
|
|
390
393
|
GpuCores: Optional[str] = "" # GPU 核数 json:"GpuCores,omitempty"
|
|
391
394
|
GpuMemBytes: Optional[str] = "" # GPU 显存字节数 json:"GpuMemBytes,omitempty"
|
|
395
|
+
Internet: Optional[bool] = False # 是否联网 json:"Internet,omitempty"
|
|
392
396
|
MemBytes: Optional[str] = "" # 内存字节数 json:"MemBytes,omitempty"
|
|
393
397
|
SKUId: Optional[str] = "" # SKU ID json:"SKUId,omitempty"
|
|
394
398
|
Vendor: Optional[str] = "" # 厂商 json:"Vendor,omitempty"
|
|
@@ -437,6 +441,7 @@ class GetQuotaGroupReq:
|
|
|
437
441
|
|
|
438
442
|
@dataclass
|
|
439
443
|
class ListAuditLogsReq:
|
|
444
|
+
ResourceType: List[str] # 资源类型,支持多个值。枚举:projects(项目), userbindings(用户权限), users(用户), public-dataset(公共数据集), public-codebase(公共Codebase), dataset(数据集), labeltask(标注任务), experiment(训练任务), run(训练实验), workspace(开发机), rjobs(RJob), model(模型), evalhub(评测任务), inference(推理服务), codebase(Codebase), images(镜像), oss(对象存储), quotagroups(配额组), tenants(租户), netpolicies(网络策略), replicas(副本), process(worker), cleanpolicies(清理策略) query:"ResourceType"
|
|
440
445
|
Limit: Optional[int] = None # 每页数量 query:"Limit,omitempty"
|
|
441
446
|
Offset: Optional[int] = None # 偏移量 query:"Offset,omitempty"
|
|
442
447
|
OperationType: Optional[str] = None # 操作类型(如 create, update, delete 等) query:"OperationType,omitempty"
|
|
@@ -444,17 +449,18 @@ class ListAuditLogsReq:
|
|
|
444
449
|
Project: Optional[str] = None # 项目名 query:"Project,omitempty"
|
|
445
450
|
ProjectName: Optional[str] = None # 项目名称(可选,用于模糊查询) query:"ProjectName,omitempty"
|
|
446
451
|
ResourceName: Optional[str] = None # 资源名称(模糊搜索) query:"ResourceName,omitempty"
|
|
447
|
-
ResourceType: List[str] # 资源类型,支持多个值。枚举:projects(项目), userbindings(用户权限), users(用户), public-dataset(公共数据集), public-codebase(公共Codebase), dataset(数据集), labeltask(标注任务), experiment(训练任务), run(训练实验), workspace(开发机), rjobs(RJob), model(模型), evalhub(评测任务), inference(推理服务), codebase(Codebase), images(镜像), oss(对象存储), quotagroups(配额组), tenants(租户), netpolicies(网络策略), replicas(副本), process(worker), cleanpolicies(清理策略) query:"ResourceType"
|
|
448
452
|
Username: Optional[str] = None # 用户名称(模糊搜索) query:"Username,omitempty"
|
|
449
453
|
|
|
450
454
|
@dataclass
|
|
451
455
|
class ListEventsReq:
|
|
452
456
|
Kind: str # 对象类型 query:"Kind"
|
|
453
|
-
Limit: Optional[int] = None # 分页 query:"Limit,omitempty"
|
|
454
457
|
Name: str # 对象名称 query:"Name"
|
|
455
|
-
Offset: Optional[int] = None # 分页偏移量(可选,默认 0) query:"Offset,omitempty"
|
|
456
458
|
Project: str # 项目名 (必填) query:"Project"
|
|
457
459
|
UId: str # UId query:"UId"
|
|
460
|
+
Limit: Optional[int] = None # 分页 query:"Limit,omitempty"
|
|
461
|
+
Offset: Optional[int] = None # 分页偏移量(可选,默认 0) query:"Offset,omitempty"
|
|
462
|
+
Order: Optional[str] = None # 排序方向: asc, desc,默认 desc query:"Order,omitempty"
|
|
463
|
+
SortBy: Optional[str] = None # 排序 query:"SortBy,omitempty"
|
|
458
464
|
|
|
459
465
|
@dataclass
|
|
460
466
|
class ListNodeConfigurationReq:
|
|
@@ -462,11 +468,11 @@ class ListNodeConfigurationReq:
|
|
|
462
468
|
|
|
463
469
|
@dataclass
|
|
464
470
|
class ListNodeInstancesReq:
|
|
465
|
-
InstanceStatus: Optional[List[str]] = None # Instance 状态筛选 query:"InstanceStatus,omitempty"
|
|
466
471
|
InstanceType: List[str] # 资源类型筛选(worker, workspace, job, ray, other) query:"InstanceType"
|
|
472
|
+
NodeName: str # 节点名 query:"NodeName"
|
|
473
|
+
InstanceStatus: Optional[List[str]] = None # Instance 状态筛选 query:"InstanceStatus,omitempty"
|
|
467
474
|
Keyword: Optional[str] = None # 关键字搜索 query:"Keyword,omitempty"
|
|
468
475
|
Limit: Optional[int] = None # 分页大小(min=1,max=100) 默认10 query:"Limit,omitempty"
|
|
469
|
-
NodeName: str # 节点名 query:"NodeName"
|
|
470
476
|
Offset: Optional[int] = None # 分页偏移量(min=0) 默认0 query:"Offset,omitempty"
|
|
471
477
|
Order: Optional[str] = None # 排序方向: asc, desc query:"Order,omitempty"
|
|
472
478
|
SortBy: Optional[str] = None # 排序字段 query:"SortBy,omitempty"
|
|
@@ -497,9 +503,9 @@ class ListNodesReq:
|
|
|
497
503
|
|
|
498
504
|
@dataclass
|
|
499
505
|
class ListProjectUsersReq:
|
|
506
|
+
Project: str # 项目名 query:"Project"
|
|
500
507
|
Limit: Optional[int] = None # 分页大小(min=1,max=100) 默认10 query:"Limit,omitempty"
|
|
501
508
|
Offset: Optional[int] = None # 分页偏移量(min=0) 默认0 query:"Offset,omitempty"
|
|
502
|
-
Project: str # 项目名 query:"Project"
|
|
503
509
|
Role: Optional[str] = None # 角色 枚举值:manager (管理员), operator (操作员) SDK常量: RoleManager, RoleOperator query:"Role,omitempty"
|
|
504
510
|
|
|
505
511
|
@dataclass
|
|
@@ -520,29 +526,31 @@ class ListProjectsSimpleReq:
|
|
|
520
526
|
|
|
521
527
|
@dataclass
|
|
522
528
|
class ListQuotaGroupsReq:
|
|
529
|
+
Project: str # 项目名 query:"Project"
|
|
523
530
|
IsBelongsTo: Optional[bool] = None # 是否只获取当前用户所在的配额组 query:"IsBelongsTo,omitempty"
|
|
524
531
|
Limit: Optional[int] = None # 分页大小(min=1,max=100) 默认10 query:"Limit,omitempty"
|
|
525
532
|
MachineType: Optional[str] = None # 机器类型筛选 可选CPU,GPU SDK常量: MachineTypeCPU, MachineTypeGPU query:"MachineType,omitempty"
|
|
526
533
|
Offset: Optional[int] = None # 分页偏移量(min=0) 默认0 query:"Offset,omitempty"
|
|
527
534
|
Order: Optional[str] = None # 排序方向: asc, desc query:"Order,omitempty"
|
|
528
|
-
Project: str # 项目名 query:"Project"
|
|
529
535
|
QuotaGroup: Optional[str] = None # 按配额组名模糊搜索(子串匹配) query:"QuotaGroup,omitempty"
|
|
530
536
|
SortBy: Optional[str] = None # 排序字段: CreationTime,空=不排序 query:"SortBy,omitempty"
|
|
531
537
|
UsageType: Optional[str] = None # 使用类型筛选,可选workspace,workload SDK常量: UsageTypeWorkspace, UsageTypeWorkload query:"UsageType,omitempty"
|
|
532
538
|
|
|
533
539
|
@dataclass
|
|
534
540
|
class ListQuotaGroupsSimpleReq:
|
|
541
|
+
Project: str # 项目名 query:"Project"
|
|
535
542
|
Limit: Optional[int] = None # 分页大小(min=1,max=100) 默认10 query:"Limit,omitempty"
|
|
536
543
|
Offset: Optional[int] = None # 分页偏移量(min=0) 默认0 query:"Offset,omitempty"
|
|
537
|
-
Project: str # 项目名 query:"Project"
|
|
538
544
|
UserName: Optional[str] = None # 用户名 query:"UserName,omitempty"
|
|
539
545
|
|
|
540
546
|
@dataclass
|
|
541
547
|
class ListSKUsReq:
|
|
548
|
+
SKUType: str # SKU类型:cpu或gpu query:"SKUType"
|
|
549
|
+
Internet: Optional[bool] = None # 是否联网 query:"Internet,omitempty"
|
|
542
550
|
Keyword: Optional[str] = None # 关键字搜索 query:"Keyword,omitempty"
|
|
543
|
-
Limit: Optional[int] = None #
|
|
544
|
-
Offset: Optional[int] = None #
|
|
551
|
+
Limit: Optional[int] = None # 分页大小(可选,默认 20,最大 100) query:"Limit,omitempty"
|
|
552
|
+
Offset: Optional[int] = None # 分页偏移量(可选,默认 0) query:"Offset,omitempty"
|
|
553
|
+
Project: Optional[str] = None # Scope为project时必填 query:"Project,omitempty"
|
|
545
554
|
ResourceType: Optional[str] = None # 资源类型:用于过滤SKU适用的资源类型(如job、workspace、ray),空表示所有类型 query:"ResourceType,omitempty"
|
|
546
|
-
SKUType: str # SKU类型:cpu或gpu query:"SKUType"
|
|
547
555
|
Scope: Optional[str] = None # SKU可见范围:public(公域)、tenant(租域)、project(项目域),空默认为public query:"Scope,omitempty"
|
|
548
556
|
|
|
@@ -34,38 +34,41 @@ class Type:
|
|
|
34
34
|
# Models
|
|
35
35
|
@dataclass
|
|
36
36
|
class Authorization:
|
|
37
|
-
Mode:
|
|
38
|
-
Name:
|
|
39
|
-
Type:
|
|
37
|
+
Mode: str # SDK常量: ModeREADONLY, ModeREADWRITE, ModeFULL_CONTROL json:"Mode"
|
|
38
|
+
Name: str # 被分享者名 json:"Name"
|
|
39
|
+
Type: str # SDK常量: TypeCanonicalUser, TypeGROUP, TypePROJECT json:"Type"
|
|
40
40
|
|
|
41
41
|
@dataclass
|
|
42
42
|
class CreateBucketReqAuthorization:
|
|
43
|
-
Mode:
|
|
44
|
-
Name:
|
|
45
|
-
Type:
|
|
43
|
+
Mode: str # SDK常量: ModeREADONLY, ModeREADWRITE, ModeFULL_CONTROL json:"Mode"
|
|
44
|
+
Name: str # 被分享者名 json:"Name"
|
|
45
|
+
Type: str # SDK常量: TypeCanonicalUser, TypeGROUP, TypePROJECT json:"Type"
|
|
46
46
|
|
|
47
47
|
@dataclass
|
|
48
48
|
class UpdateBucketReqAuthorization:
|
|
49
|
-
Mode:
|
|
50
|
-
Name:
|
|
51
|
-
Type:
|
|
49
|
+
Mode: str # SDK常量: ModeREADONLY, ModeREADWRITE, ModeFULL_CONTROL json:"Mode"
|
|
50
|
+
Name: str # 被分享者名 json:"Name"
|
|
51
|
+
Type: str # SDK常量: TypeCanonicalUser, TypeGROUP, TypePROJECT json:"Type"
|
|
52
52
|
|
|
53
53
|
@dataclass
|
|
54
54
|
class BucketResponse:
|
|
55
|
-
Authorizations: Optional[List[Authorization]] = None # json:"Authorizations,omitempty"
|
|
56
|
-
Bucket: Optional[str] = "" # json:"Bucket,omitempty"
|
|
57
|
-
|
|
55
|
+
Authorizations: Optional[List[Authorization]] = None # 权限分享 json:"Authorizations,omitempty"
|
|
56
|
+
Bucket: Optional[str] = "" # 存储桶名 json:"Bucket,omitempty"
|
|
57
|
+
Created: Optional[str] = "" # 创建时间 json:"Created,omitempty"
|
|
58
|
+
DeletedTime: Optional[str] = "" # 删除时间(回收站中显示) json:"DeletedTime,omitempty"
|
|
59
|
+
Owner: Optional[str] = "" # 所有者 json:"Owner,omitempty"
|
|
58
60
|
Permission: Optional[str] = None # SDK常量: PermissionDENY, PermissionREADONLY, PermissionREADWRITE, PermissionPUBLIC_READ, PermissionADMIN json:"Permission,omitempty"
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
Project: Optional[str] = "" # 所属项目 json:"Project,omitempty"
|
|
62
|
+
PublicRead: Optional[bool] = False # 是否公共读 json:"PublicRead,omitempty"
|
|
63
|
+
ReadOnly: Optional[bool] = False # 是否只读 json:"ReadOnly,omitempty"
|
|
64
|
+
Size: Optional[str] = "" # 当前容量 json:"Size,omitempty"
|
|
62
65
|
State: Optional[str] = None # SDK常量: StateSTATE_PENDING, StateSTATE_READY, StateSTATE_FAILED, StateSTATE_DELETED json:"State,omitempty"
|
|
63
|
-
Tenant: Optional[str] = "" # json:"Tenant,omitempty"
|
|
66
|
+
Tenant: Optional[str] = "" # 所属租户 json:"Tenant,omitempty"
|
|
64
67
|
|
|
65
68
|
@dataclass
|
|
66
69
|
class CreateBucketReq:
|
|
67
|
-
Bucket: str #
|
|
68
|
-
Project: str #
|
|
70
|
+
Bucket: str # 存储桶名 json:"Bucket"
|
|
71
|
+
Project: str # 所属项目 json:"Project"
|
|
69
72
|
Authorizations: Optional[List[CreateBucketReqAuthorization]] = None # 权限分享 json:"Authorizations,omitempty"
|
|
70
73
|
Description: Optional[str] = None # 描述 json:"Description,omitempty"
|
|
71
74
|
|
|
@@ -75,21 +78,22 @@ class DeleteBucketReq:
|
|
|
75
78
|
|
|
76
79
|
@dataclass
|
|
77
80
|
class GetBucketData:
|
|
78
|
-
Authorizations: Optional[List[Authorization]] = None # json:"Authorizations,omitempty"
|
|
79
|
-
Bucket: Optional[str] = "" # json:"Bucket,omitempty"
|
|
80
|
-
|
|
81
|
+
Authorizations: Optional[List[Authorization]] = None # 权限分享 json:"Authorizations,omitempty"
|
|
82
|
+
Bucket: Optional[str] = "" # 存储桶名 json:"Bucket,omitempty"
|
|
83
|
+
Created: Optional[str] = "" # 创建时间 json:"Created,omitempty"
|
|
84
|
+
Owner: Optional[str] = "" # 所有者 json:"Owner,omitempty"
|
|
81
85
|
Permission: Optional[str] = None # SDK常量: PermissionDENY, PermissionREADONLY, PermissionREADWRITE, PermissionPUBLIC_READ, PermissionADMIN json:"Permission,omitempty"
|
|
82
|
-
Project: Optional[str] = "" # json:"Project,omitempty"
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
Size: Optional[str] = "" # json:"Size,omitempty"
|
|
86
|
+
Project: Optional[str] = "" # 所属项目 json:"Project,omitempty"
|
|
87
|
+
PublicRead: Optional[bool] = False # 是否公共读 json:"PublicRead,omitempty"
|
|
88
|
+
ReadOnly: Optional[bool] = False # 是否只读 json:"ReadOnly,omitempty"
|
|
89
|
+
Size: Optional[str] = "" # 当前容量 json:"Size,omitempty"
|
|
86
90
|
State: Optional[str] = None # SDK常量: StateSTATE_PENDING, StateSTATE_READY, StateSTATE_FAILED, StateSTATE_DELETED json:"State,omitempty"
|
|
87
|
-
Tenant: Optional[str] = "" # json:"Tenant,omitempty"
|
|
91
|
+
Tenant: Optional[str] = "" # 所属租户 json:"Tenant,omitempty"
|
|
88
92
|
|
|
89
93
|
@dataclass
|
|
90
94
|
class ListBucketsData:
|
|
91
95
|
Items: Optional[List[BucketResponse]] = None # json:"Items,omitempty"
|
|
92
|
-
Total: Optional[int] = 0 # json:"Total,omitempty"
|
|
96
|
+
Total: Optional[int] = 0 # 总数 json:"Total,omitempty"
|
|
93
97
|
|
|
94
98
|
@dataclass
|
|
95
99
|
class CreateBucketData:
|
|
@@ -97,12 +101,12 @@ class CreateBucketData:
|
|
|
97
101
|
|
|
98
102
|
@dataclass
|
|
99
103
|
class UpdateBucketReq:
|
|
100
|
-
Bucket: str #
|
|
104
|
+
Bucket: str # 存储桶名 json:"Bucket"
|
|
101
105
|
Authorizations: Optional[List[UpdateBucketReqAuthorization]] = None # 权限分享 json:"Authorizations,omitempty"
|
|
102
|
-
Description: Optional[str] = None #
|
|
103
|
-
Project: Optional[str] = None #
|
|
104
|
-
PublicRead: Optional[
|
|
105
|
-
ReadOnly: Optional[
|
|
106
|
+
Description: Optional[str] = None # 描述 json:"Description,omitempty"
|
|
107
|
+
Project: Optional[str] = None # 所属项目(当项目一旦被设置则不可更改) json:"Project,omitempty"
|
|
108
|
+
PublicRead: Optional[str] = None # 公共读 json:"PublicRead,omitempty"
|
|
109
|
+
ReadOnly: Optional[str] = None # 只读 json:"ReadOnly,omitempty"
|
|
106
110
|
|
|
107
111
|
@dataclass
|
|
108
112
|
class GetBucketReq:
|
|
@@ -110,12 +114,12 @@ class GetBucketReq:
|
|
|
110
114
|
|
|
111
115
|
@dataclass
|
|
112
116
|
class ListBucketsReq:
|
|
113
|
-
SortOrder: Optional[str] = None # 排序方向 (asc, desc, 默认asc) query:"SortOrder,omitempty"
|
|
114
|
-
Offset: Optional[int] = None # 偏移量 (默认 0, 0 <= Offset) query:"Offset,omitempty"
|
|
115
|
-
Limit: Optional[int] = None # 每页数量限制(默认100, 0 < Limit <= 100) query:"Limit,omitempty"
|
|
116
|
-
SortBy: Optional[str] = None # 排序规则(created, size, 默认:created) query:"SortBy,omitempty"
|
|
117
117
|
Keyword: Optional[str] = None # 过滤条件,可以填项目名/桶名/所有者 query:"Keyword,omitempty"
|
|
118
|
+
Limit: Optional[int] = None # 每页数量限制(默认100, 0 < Limit <= 100) query:"Limit,omitempty"
|
|
119
|
+
Offset: Optional[int] = None # 偏移量 (默认 0, 0 <= Offset) query:"Offset,omitempty"
|
|
118
120
|
Owner: Optional[str] = None # 所有者 query:"Owner,omitempty"
|
|
121
|
+
SortBy: Optional[str] = None # 排序规则(created,size,默认created) query:"SortBy,omitempty"
|
|
122
|
+
SortOrder: Optional[str] = None # 排序方向 (asc, desc, 默认asc) query:"SortOrder,omitempty"
|
|
119
123
|
|
|
120
124
|
|
|
121
125
|
DeleteBucketData = CreateBucketData
|