yicloud-sdk-python 0.3.0__tar.gz → 0.3.1__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.
Files changed (89) hide show
  1. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/PKG-INFO +1 -1
  2. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/pyproject.toml +1 -1
  3. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/version.py +1 -1
  4. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/__init__.py +1 -1
  5. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/__init__.py +2 -0
  6. yicloud_sdk_python-0.3.1/yicloud/services/sandbox/__init__.py +111 -0
  7. yicloud_sdk_python-0.3.1/yicloud/services/sandbox/actions.py +273 -0
  8. yicloud_sdk_python-0.3.1/yicloud/services/sandbox/client.py +21 -0
  9. yicloud_sdk_python-0.3.1/yicloud/services/sandbox/models.py +581 -0
  10. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/PKG-INFO +1 -1
  11. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/SOURCES.txt +4 -0
  12. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/LICENSE +0 -0
  13. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/README.md +0 -0
  14. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/setup.cfg +0 -0
  15. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/__init__.py +0 -0
  16. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/auth/__init__.py +0 -0
  17. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/auth/credential.py +0 -0
  18. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/auth/sign.py +0 -0
  19. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/client.py +0 -0
  20. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/config.py +0 -0
  21. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/errs/__init__.py +0 -0
  22. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/log/__init__.py +0 -0
  23. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/log/logger.py +0 -0
  24. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/log/std.py +0 -0
  25. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/msgs/__init__.py +0 -0
  26. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/utils/__init__.py +0 -0
  27. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/utils/helps.py +0 -0
  28. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/utils/retry/__init__.py +0 -0
  29. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/base/utils/retry/retry.py +0 -0
  30. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/bc/__init__.py +0 -0
  31. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/bc/actions.py +0 -0
  32. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/bc/client.py +0 -0
  33. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/bc/models.py +0 -0
  34. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/dataset/__init__.py +0 -0
  35. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/dataset/actions.py +0 -0
  36. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/dataset/client.py +0 -0
  37. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/dataset/models.py +0 -0
  38. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/fs/__init__.py +0 -0
  39. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/fs/actions.py +0 -0
  40. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/fs/client.py +0 -0
  41. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/fs/models.py +0 -0
  42. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/iam/__init__.py +0 -0
  43. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/iam/actions.py +0 -0
  44. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/iam/client.py +0 -0
  45. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/iam/models.py +0 -0
  46. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/inferset/__init__.py +0 -0
  47. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/inferset/actions.py +0 -0
  48. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/inferset/client.py +0 -0
  49. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/inferset/models.py +0 -0
  50. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/job/__init__.py +0 -0
  51. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/job/actions.py +0 -0
  52. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/job/client.py +0 -0
  53. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/job/models.py +0 -0
  54. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/mc/__init__.py +0 -0
  55. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/mc/actions.py +0 -0
  56. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/mc/client.py +0 -0
  57. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/mc/models.py +0 -0
  58. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/modelrepo/__init__.py +0 -0
  59. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/modelrepo/actions.py +0 -0
  60. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/modelrepo/client.py +0 -0
  61. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/modelrepo/models.py +0 -0
  62. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/monitor/__init__.py +0 -0
  63. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/monitor/actions.py +0 -0
  64. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/monitor/client.py +0 -0
  65. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/monitor/models.py +0 -0
  66. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/oss/__init__.py +0 -0
  67. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/oss/actions.py +0 -0
  68. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/oss/client.py +0 -0
  69. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/oss/models.py +0 -0
  70. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/ray/__init__.py +0 -0
  71. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/ray/actions.py +0 -0
  72. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/ray/client.py +0 -0
  73. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/ray/models.py +0 -0
  74. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/registry/__init__.py +0 -0
  75. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/registry/actions.py +0 -0
  76. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/registry/client.py +0 -0
  77. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/registry/models.py +0 -0
  78. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/volume/__init__.py +0 -0
  79. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/volume/actions.py +0 -0
  80. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/volume/client.py +0 -0
  81. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/volume/models.py +0 -0
  82. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/workspace/__init__.py +0 -0
  83. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/workspace/actions.py +0 -0
  84. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/workspace/client.py +0 -0
  85. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud/services/workspace/models.py +0 -0
  86. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/dependency_links.txt +0 -0
  87. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/not-zip-safe +0 -0
  88. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/requires.txt +0 -0
  89. {yicloud_sdk_python-0.3.0 → yicloud_sdk_python-0.3.1}/yicloud_sdk_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yicloud-sdk-python
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: YiCloud OpenAPI SDK for Python
5
5
  Author: YiCloud
6
6
  Project-URL: Homepage, https://gitee.com/yicloud-team/openapi-sdk-python
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "yicloud-sdk-python"
7
- version = "0.3.0"
7
+ version = "0.3.1"
8
8
  description = "YiCloud OpenAPI SDK for Python"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.7"
@@ -1,4 +1,4 @@
1
- __version__ = "0.3.0"
1
+ __version__ = "0.3.1"
2
2
 
3
3
 
4
4
  def Version() -> str:
@@ -4,4 +4,4 @@ YiCloud Python SDK
4
4
  A Python SDK for the YiCloud OpenAPI service.
5
5
  """
6
6
 
7
- __version__ = "0.3.0"
7
+ __version__ = "0.3.1"
@@ -13,6 +13,7 @@ from . import monitor
13
13
  from . import oss
14
14
  from . import ray
15
15
  from . import registry
16
+ from . import sandbox
16
17
  from . import volume
17
18
  from . import workspace
18
19
 
@@ -29,6 +30,7 @@ __all__ = [
29
30
  "oss",
30
31
  "ray",
31
32
  "registry",
33
+ "sandbox",
32
34
  "volume",
33
35
  "workspace",
34
36
  ]
@@ -0,0 +1,111 @@
1
+ # Code generated by generate_openapi.py. DO NOT EDIT.
2
+
3
+ from yicloud.services.sandbox.client import SandboxClient as Client, client, use_client
4
+ from . import actions, models
5
+
6
+ # Re-export action functions
7
+ from .actions import (
8
+ batch_delete_sandboxes,
9
+ create_sandbox,
10
+ create_sandbox_environment,
11
+ delete_sandbox,
12
+ delete_sandbox_environment,
13
+ get_instance_state_stats,
14
+ get_prewarm_pool,
15
+ get_resource_stats,
16
+ get_sandbox,
17
+ get_sandbox_environment,
18
+ list_prewarm_pool_events,
19
+ list_prewarm_pool_pods,
20
+ list_sandbox_environments,
21
+ list_sandbox_projects,
22
+ list_sandboxes,
23
+ stop_sandbox,
24
+ update_instance_capacity,
25
+ update_prewarm_size,
26
+ update_sandbox_lifecycle,
27
+ )
28
+
29
+ # Re-export models
30
+ from .models import (
31
+ ActualMode,
32
+ AllocationMode,
33
+ Kind,
34
+ Level,
35
+ Mode,
36
+ PoolPodState,
37
+ Protocol,
38
+ RunState,
39
+ State,
40
+ TerminatedReason,
41
+ Type,
42
+ BatchDeleteResultItem,
43
+ BatchDeleteSandboxesData,
44
+ BatchDeleteSandboxesReq,
45
+ CreateSandboxData,
46
+ CreateSandboxEnvironmentReq,
47
+ CreateSandboxReq,
48
+ EnvironmentInstanceCounts,
49
+ EnvironmentResourceUsage,
50
+ Image,
51
+ ImageAuth,
52
+ CreateSandboxReqImageAuth,
53
+ CreateSandboxEnvironmentReqImageAuth,
54
+ CreateSandboxReqImageInput,
55
+ CreateSandboxEnvironmentReqImageInput,
56
+ GetInstanceStateStatsData,
57
+ ListPrewarmPoolEventsData,
58
+ ListPrewarmPoolPodsData,
59
+ ListSandboxEnvironmentsData,
60
+ ListSandboxProjectsData,
61
+ ListSandboxesData,
62
+ ModeInstanceStateCluster,
63
+ Port,
64
+ CreateSandboxReqPort,
65
+ CreateSandboxEnvironmentReqPort,
66
+ GetPrewarmPoolData,
67
+ PrewarmPoolEvent,
68
+ PrewarmPoolPod,
69
+ PrewarmPoolStatus,
70
+ GetResourceStatsData,
71
+ Resources,
72
+ CreateSandboxReqResources,
73
+ CreateSandboxEnvironmentReqResources,
74
+ SandboxEndpointInfo,
75
+ SandboxEndpoints,
76
+ DeleteSandboxEnvironmentReq,
77
+ CreateSandboxEnvironmentData,
78
+ DeleteSandboxReq,
79
+ StopSandboxReq,
80
+ GetSandboxData,
81
+ StateStatus,
82
+ UpdateInstanceCapacityReq,
83
+ UpdatePrewarmSizeReq,
84
+ UpdateSandboxLifecycleData,
85
+ UpdateSandboxLifecycleReq,
86
+ Volume,
87
+ CreateSandboxReqVolume,
88
+ CreateSandboxEnvironmentReqVolume,
89
+ VolumeHost,
90
+ CreateSandboxReqVolumeHost,
91
+ CreateSandboxEnvironmentReqVolumeHost,
92
+ VolumeOSSFS,
93
+ CreateSandboxReqVolumeOSSFS,
94
+ CreateSandboxEnvironmentReqVolumeOSSFS,
95
+ VolumePVC,
96
+ CreateSandboxReqVolumePVC,
97
+ CreateSandboxEnvironmentReqVolumePVC,
98
+ GetInstanceStateStatsReq,
99
+ GetPrewarmPoolReq,
100
+ GetResourceStatsReq,
101
+ GetSandboxReq,
102
+ GetSandboxEnvironmentReq,
103
+ ListPrewarmPoolEventsReq,
104
+ ListPrewarmPoolPodsReq,
105
+ ListSandboxEnvironmentsReq,
106
+ ListSandboxesReq,
107
+ ListSandboxProjectsReq,
108
+ GetSandboxEnvironmentData,
109
+ UpdateInstanceCapacityData,
110
+ UpdatePrewarmSizeData,
111
+ )
@@ -0,0 +1,273 @@
1
+ # Code generated by generate_openapi.py. DO NOT EDIT.
2
+
3
+ from typing import Optional
4
+ from yicloud.base import msgs
5
+ from yicloud.services.sandbox import models
6
+ from yicloud.services.sandbox.client import client
7
+
8
+ _PRODUCT_CODE = "sandbox"
9
+ _LAST_VERSION = "v1alpha1"
10
+
11
+
12
+ def batch_delete_sandboxes(ctx: Optional[dict], req: models.BatchDeleteSandboxesReq) -> models.BatchDeleteSandboxesData:
13
+ """批量删除
14
+ 批量删除沙盒实例。
15
+ POST /sandbox/v1alpha1/BatchDeleteSandboxes
16
+ Action: BatchDeleteSandboxes
17
+
18
+ Returns BatchDeleteSandboxesData on success.
19
+ Raises YiCloudException on error.
20
+ """
21
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/BatchDeleteSandboxes"
22
+ rsp = msgs.Rsp[models.BatchDeleteSandboxesData]()
23
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
24
+ return rsp.get_typed_data()
25
+
26
+ def create_sandbox(ctx: Optional[dict], req: models.CreateSandboxReq) -> models.CreateSandboxData:
27
+ """创建实例
28
+ 创建一个沙盒实例。
29
+ POST /sandbox/v1alpha1/CreateSandbox
30
+ Action: CreateSandbox
31
+
32
+ Returns CreateSandboxData on success.
33
+ Raises YiCloudException on error.
34
+ """
35
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/CreateSandbox"
36
+ rsp = msgs.Rsp[models.CreateSandboxData]()
37
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
38
+ return rsp.get_typed_data()
39
+
40
+ def create_sandbox_environment(ctx: Optional[dict], req: models.CreateSandboxEnvironmentReq) -> models.CreateSandboxEnvironmentData:
41
+ """创建环境
42
+ 创建沙盒环境模板,并在 brainbox 侧创建对应预热池。
43
+ POST /sandbox/v1alpha1/CreateSandboxEnvironment
44
+ Action: CreateSandboxEnvironment
45
+
46
+ Returns CreateSandboxEnvironmentData on success.
47
+ Raises YiCloudException on error.
48
+ """
49
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/CreateSandboxEnvironment"
50
+ rsp = msgs.Rsp[models.CreateSandboxEnvironmentData]()
51
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
52
+ return rsp.get_typed_data()
53
+
54
+ def delete_sandbox(ctx: Optional[dict], req: models.DeleteSandboxReq):
55
+ """删除实例
56
+ 删除单个沙盒实例。OpenAPI 使用 POST,adapter 内部转发为 brainbox DELETE。
57
+ POST /sandbox/v1alpha1/DeleteSandbox
58
+ Action: DeleteSandbox
59
+
60
+
61
+ Raises YiCloudException on error.
62
+ """
63
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/DeleteSandbox"
64
+ rsp = msgs.Rsp[None].empty()
65
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
66
+
67
+ def delete_sandbox_environment(ctx: Optional[dict], req: models.DeleteSandboxEnvironmentReq):
68
+ """删除环境
69
+ 删除指定沙盒环境。OpenAPI 使用 POST,adapter 内部转发为 brainbox DELETE。
70
+ POST /sandbox/v1alpha1/DeleteSandboxEnvironment
71
+ Action: DeleteSandboxEnvironment
72
+
73
+
74
+ Raises YiCloudException on error.
75
+ """
76
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/DeleteSandboxEnvironment"
77
+ rsp = msgs.Rsp[None].empty()
78
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
79
+
80
+ def get_instance_state_stats(ctx: Optional[dict], req: models.GetInstanceStateStatsReq) -> models.GetInstanceStateStatsData:
81
+ """实例统计
82
+ 查询指定沙盒环境下预热实例和手动实例的状态统计。
83
+ GET /sandbox/v1alpha1/GetInstanceStateStats
84
+ Action: GetInstanceStateStats
85
+
86
+ Returns GetInstanceStateStatsData on success.
87
+ Raises YiCloudException on error.
88
+ """
89
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/GetInstanceStateStats"
90
+ rsp = msgs.Rsp[models.GetInstanceStateStatsData]()
91
+ client.base.get(ctx, path, req, rsp)
92
+ return rsp.get_typed_data()
93
+
94
+ def get_prewarm_pool(ctx: Optional[dict], req: models.GetPrewarmPoolReq) -> models.GetPrewarmPoolData:
95
+ """预热池
96
+ 查询指定沙盒环境的预热池目标数量、实例容量和当前状态。
97
+ GET /sandbox/v1alpha1/GetPrewarmPool
98
+ Action: GetPrewarmPool
99
+
100
+ Returns GetPrewarmPoolData on success.
101
+ Raises YiCloudException on error.
102
+ """
103
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/GetPrewarmPool"
104
+ rsp = msgs.Rsp[models.GetPrewarmPoolData]()
105
+ client.base.get(ctx, path, req, rsp)
106
+ return rsp.get_typed_data()
107
+
108
+ def get_resource_stats(ctx: Optional[dict], req: models.GetResourceStatsReq) -> models.GetResourceStatsData:
109
+ """资源统计
110
+ 查询指定沙盒环境下沙盒实例使用的 CPU 和内存资源。
111
+ GET /sandbox/v1alpha1/GetResourceStats
112
+ Action: GetResourceStats
113
+
114
+ Returns GetResourceStatsData on success.
115
+ Raises YiCloudException on error.
116
+ """
117
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/GetResourceStats"
118
+ rsp = msgs.Rsp[models.GetResourceStatsData]()
119
+ client.base.get(ctx, path, req, rsp)
120
+ return rsp.get_typed_data()
121
+
122
+ def get_sandbox(ctx: Optional[dict], req: models.GetSandboxReq) -> models.GetSandboxData:
123
+ """实例详情
124
+ 查询单个沙盒实例详情。
125
+ GET /sandbox/v1alpha1/GetSandbox
126
+ Action: GetSandbox
127
+
128
+ Returns GetSandboxData on success.
129
+ Raises YiCloudException on error.
130
+ """
131
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/GetSandbox"
132
+ rsp = msgs.Rsp[models.GetSandboxData]()
133
+ client.base.get(ctx, path, req, rsp)
134
+ return rsp.get_typed_data()
135
+
136
+ def get_sandbox_environment(ctx: Optional[dict], req: models.GetSandboxEnvironmentReq) -> models.GetSandboxEnvironmentData:
137
+ """环境详情
138
+ 查询单个沙盒环境详情。
139
+ GET /sandbox/v1alpha1/GetSandboxEnvironment
140
+ Action: GetSandboxEnvironment
141
+
142
+ Returns GetSandboxEnvironmentData on success.
143
+ Raises YiCloudException on error.
144
+ """
145
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/GetSandboxEnvironment"
146
+ rsp = msgs.Rsp[models.GetSandboxEnvironmentData]()
147
+ client.base.get(ctx, path, req, rsp)
148
+ return rsp.get_typed_data()
149
+
150
+ def list_prewarm_pool_events(ctx: Optional[dict], req: models.ListPrewarmPoolEventsReq) -> models.ListPrewarmPoolEventsData:
151
+ """预热事件
152
+ 查询指定沙盒环境的预热池事件历史。
153
+ GET /sandbox/v1alpha1/ListPrewarmPoolEvents
154
+ Action: ListPrewarmPoolEvents
155
+
156
+ Returns ListPrewarmPoolEventsData on success.
157
+ Raises YiCloudException on error.
158
+ """
159
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/ListPrewarmPoolEvents"
160
+ rsp = msgs.Rsp[models.ListPrewarmPoolEventsData]()
161
+ client.base.get(ctx, path, req, rsp)
162
+ return rsp.get_typed_data()
163
+
164
+ def list_prewarm_pool_pods(ctx: Optional[dict], req: models.ListPrewarmPoolPodsReq) -> models.ListPrewarmPoolPodsData:
165
+ """预热Pod
166
+ 查询指定沙盒环境的预热池 Pod 列表。
167
+ GET /sandbox/v1alpha1/ListPrewarmPoolPods
168
+ Action: ListPrewarmPoolPods
169
+
170
+ Returns ListPrewarmPoolPodsData on success.
171
+ Raises YiCloudException on error.
172
+ """
173
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/ListPrewarmPoolPods"
174
+ rsp = msgs.Rsp[models.ListPrewarmPoolPodsData]()
175
+ client.base.get(ctx, path, req, rsp)
176
+ return rsp.get_typed_data()
177
+
178
+ def list_sandbox_environments(ctx: Optional[dict], req: models.ListSandboxEnvironmentsReq) -> models.ListSandboxEnvironmentsData:
179
+ """环境列表
180
+ 查询指定项目下的沙盒环境列表。
181
+ GET /sandbox/v1alpha1/ListSandboxEnvironments
182
+ Action: ListSandboxEnvironments
183
+
184
+ Returns ListSandboxEnvironmentsData on success.
185
+ Raises YiCloudException on error.
186
+ """
187
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/ListSandboxEnvironments"
188
+ rsp = msgs.Rsp[models.ListSandboxEnvironmentsData]()
189
+ client.base.get(ctx, path, req, rsp)
190
+ return rsp.get_typed_data()
191
+
192
+ def list_sandbox_projects(ctx: Optional[dict], req: models.ListSandboxProjectsReq) -> models.ListSandboxProjectsData:
193
+ """项目白名单
194
+ 获取当前租户下允许访问沙盒的项目列表。
195
+ GET /sandbox/v1alpha1/ListSandboxProjects
196
+ Action: ListSandboxProjects
197
+
198
+ Returns ListSandboxProjectsData on success.
199
+ Raises YiCloudException on error.
200
+ """
201
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/ListSandboxProjects"
202
+ rsp = msgs.Rsp[models.ListSandboxProjectsData]()
203
+ client.base.get(ctx, path, req, rsp)
204
+ return rsp.get_typed_data()
205
+
206
+ def list_sandboxes(ctx: Optional[dict], req: models.ListSandboxesReq) -> models.ListSandboxesData:
207
+ """实例列表
208
+ 查询指定项目下的沙盒实例列表。
209
+ GET /sandbox/v1alpha1/ListSandboxes
210
+ Action: ListSandboxes
211
+
212
+ Returns ListSandboxesData on success.
213
+ Raises YiCloudException on error.
214
+ """
215
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/ListSandboxes"
216
+ rsp = msgs.Rsp[models.ListSandboxesData]()
217
+ client.base.get(ctx, path, req, rsp)
218
+ return rsp.get_typed_data()
219
+
220
+ def stop_sandbox(ctx: Optional[dict], req: models.StopSandboxReq):
221
+ """关闭实例
222
+ 关闭单个沙盒实例。
223
+ POST /sandbox/v1alpha1/StopSandbox
224
+ Action: StopSandbox
225
+
226
+
227
+ Raises YiCloudException on error.
228
+ """
229
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/StopSandbox"
230
+ rsp = msgs.Rsp[None].empty()
231
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
232
+
233
+ def update_instance_capacity(ctx: Optional[dict], req: models.UpdateInstanceCapacityReq) -> models.UpdateInstanceCapacityData:
234
+ """修改容量
235
+ 修改指定沙盒环境可创建实例总数上限。OpenAPI 使用 POST,adapter 内部转发为 brainbox PATCH。
236
+ POST /sandbox/v1alpha1/UpdateInstanceCapacity
237
+ Action: UpdateInstanceCapacity
238
+
239
+ Returns UpdateInstanceCapacityData on success.
240
+ Raises YiCloudException on error.
241
+ """
242
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/UpdateInstanceCapacity"
243
+ rsp = msgs.Rsp[models.UpdateInstanceCapacityData]()
244
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
245
+ return rsp.get_typed_data()
246
+
247
+ def update_prewarm_size(ctx: Optional[dict], req: models.UpdatePrewarmSizeReq) -> models.UpdatePrewarmSizeData:
248
+ """修改预热
249
+ 修改指定沙盒环境的预热池目标空闲实例数。OpenAPI 使用 POST,adapter 内部转发为 brainbox PATCH。
250
+ POST /sandbox/v1alpha1/UpdatePrewarmSize
251
+ Action: UpdatePrewarmSize
252
+
253
+ Returns UpdatePrewarmSizeData on success.
254
+ Raises YiCloudException on error.
255
+ """
256
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/UpdatePrewarmSize"
257
+ rsp = msgs.Rsp[models.UpdatePrewarmSizeData]()
258
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
259
+ return rsp.get_typed_data()
260
+
261
+ def update_sandbox_lifecycle(ctx: Optional[dict], req: models.UpdateSandboxLifecycleReq) -> models.UpdateSandboxLifecycleData:
262
+ """修改周期
263
+ 修改单个沙盒实例生命周期。OpenAPI 使用 LifecycleMinutes,adapter 内部转发为 brainbox lifecycleMinutes。
264
+ POST /sandbox/v1alpha1/UpdateSandboxLifecycle
265
+ Action: UpdateSandboxLifecycle
266
+
267
+ Returns UpdateSandboxLifecycleData on success.
268
+ Raises YiCloudException on error.
269
+ """
270
+ path = f"/{_PRODUCT_CODE}/{_LAST_VERSION}/UpdateSandboxLifecycle"
271
+ rsp = msgs.Rsp[models.UpdateSandboxLifecycleData]()
272
+ client.base.post(ctx, path, {k: v for k, v in req.__dict__.items() if v is not None}, rsp)
273
+ return rsp.get_typed_data()
@@ -0,0 +1,21 @@
1
+ # Code generated by generate_openapi.py. DO NOT EDIT.
2
+
3
+ from yicloud.base import Client
4
+
5
+
6
+ class SandboxClient:
7
+ """Sandbox service client."""
8
+
9
+ def __init__(self, base_client: Client = None):
10
+ self.base = base_client
11
+ self.product_code = "sandbox"
12
+ self.last_version = "v1alpha1"
13
+
14
+
15
+ # Singleton
16
+ client: SandboxClient = SandboxClient()
17
+
18
+
19
+ def use_client(cli: Client) -> None:
20
+ """Set the base client for Sandbox service."""
21
+ client.base = cli