anyscale 0.26.61__py3-none-any.whl → 0.26.62__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.
- anyscale/_private/docgen/models.md +2 -0
- anyscale/client/README.md +16 -3
- anyscale/client/openapi_client/__init__.py +9 -3
- anyscale/client/openapi_client/api/default_api.py +3215 -2399
- anyscale/client/openapi_client/models/__init__.py +9 -3
- anyscale/client/openapi_client/models/api_key_info.py +280 -0
- anyscale/client/openapi_client/models/api_key_parameters.py +29 -3
- anyscale/client/openapi_client/models/{aggregatedinstanceusagecsv_list_response.py → apikeyinfo_list_response.py} +15 -15
- anyscale/client/openapi_client/models/compute_node_type.py +29 -1
- anyscale/client/openapi_client/models/gpu_usage.py +236 -0
- anyscale/client/openapi_client/models/node_metrics.py +404 -0
- anyscale/client/openapi_client/models/node_metrics_response.py +123 -0
- anyscale/client/openapi_client/models/{cloud_hosting_type.py → nodemetricsresponse_response.py} +34 -13
- anyscale/client/openapi_client/models/revoke_api_keys_request.py +123 -0
- anyscale/client/openapi_client/models/revoke_api_keys_response.py +202 -0
- anyscale/client/openapi_client/models/revokeapikeysresponse_response.py +121 -0
- anyscale/client/openapi_client/models/worker_node_type.py +29 -1
- anyscale/compute_config/_private/compute_config_sdk.py +4 -0
- anyscale/compute_config/models.py +24 -0
- anyscale/sdk/anyscale_client/models/compute_node_type.py +29 -1
- anyscale/sdk/anyscale_client/models/worker_node_type.py +29 -1
- anyscale/version.py +1 -1
- anyscale/workspace/commands.py +23 -114
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/METADATA +1 -1
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/RECORD +30 -24
- anyscale/client/openapi_client/models/aggregated_instance_usage_csv.py +0 -889
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/WHEEL +0 -0
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/entry_points.txt +0 -0
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/licenses/LICENSE +0 -0
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/licenses/NOTICE +0 -0
- {anyscale-0.26.61.dist-info → anyscale-0.26.62.dist-info}/top_level.txt +0 -0
@@ -36,6 +36,7 @@ class WorkerNodeType(object):
|
|
36
36
|
'name': 'str',
|
37
37
|
'instance_type': 'str',
|
38
38
|
'resources': 'Resources',
|
39
|
+
'labels': 'dict(str, str)',
|
39
40
|
'aws_advanced_configurations_json': 'object',
|
40
41
|
'gcp_advanced_configurations_json': 'object',
|
41
42
|
'advanced_configurations_json': 'object',
|
@@ -50,6 +51,7 @@ class WorkerNodeType(object):
|
|
50
51
|
'name': 'name',
|
51
52
|
'instance_type': 'instance_type',
|
52
53
|
'resources': 'resources',
|
54
|
+
'labels': 'labels',
|
53
55
|
'aws_advanced_configurations_json': 'aws_advanced_configurations_json',
|
54
56
|
'gcp_advanced_configurations_json': 'gcp_advanced_configurations_json',
|
55
57
|
'advanced_configurations_json': 'advanced_configurations_json',
|
@@ -60,7 +62,7 @@ class WorkerNodeType(object):
|
|
60
62
|
'fallback_to_ondemand': 'fallback_to_ondemand'
|
61
63
|
}
|
62
64
|
|
63
|
-
def __init__(self, name=None, instance_type=None, resources=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, min_workers=None, max_workers=None, use_spot=False, fallback_to_ondemand=False, local_vars_configuration=None): # noqa: E501
|
65
|
+
def __init__(self, name=None, instance_type=None, resources=None, labels=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, min_workers=None, max_workers=None, use_spot=False, fallback_to_ondemand=False, local_vars_configuration=None): # noqa: E501
|
64
66
|
"""WorkerNodeType - a model defined in OpenAPI""" # noqa: E501
|
65
67
|
if local_vars_configuration is None:
|
66
68
|
local_vars_configuration = Configuration()
|
@@ -69,6 +71,7 @@ class WorkerNodeType(object):
|
|
69
71
|
self._name = None
|
70
72
|
self._instance_type = None
|
71
73
|
self._resources = None
|
74
|
+
self._labels = None
|
72
75
|
self._aws_advanced_configurations_json = None
|
73
76
|
self._gcp_advanced_configurations_json = None
|
74
77
|
self._advanced_configurations_json = None
|
@@ -83,6 +86,8 @@ class WorkerNodeType(object):
|
|
83
86
|
self.instance_type = instance_type
|
84
87
|
if resources is not None:
|
85
88
|
self.resources = resources
|
89
|
+
if labels is not None:
|
90
|
+
self.labels = labels
|
86
91
|
if aws_advanced_configurations_json is not None:
|
87
92
|
self.aws_advanced_configurations_json = aws_advanced_configurations_json
|
88
93
|
if gcp_advanced_configurations_json is not None:
|
@@ -173,6 +178,29 @@ class WorkerNodeType(object):
|
|
173
178
|
|
174
179
|
self._resources = resources
|
175
180
|
|
181
|
+
@property
|
182
|
+
def labels(self):
|
183
|
+
"""Gets the labels of this WorkerNodeType. # noqa: E501
|
184
|
+
|
185
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
186
|
+
|
187
|
+
:return: The labels of this WorkerNodeType. # noqa: E501
|
188
|
+
:rtype: dict(str, str)
|
189
|
+
"""
|
190
|
+
return self._labels
|
191
|
+
|
192
|
+
@labels.setter
|
193
|
+
def labels(self, labels):
|
194
|
+
"""Sets the labels of this WorkerNodeType.
|
195
|
+
|
196
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
197
|
+
|
198
|
+
:param labels: The labels of this WorkerNodeType. # noqa: E501
|
199
|
+
:type: dict(str, str)
|
200
|
+
"""
|
201
|
+
|
202
|
+
self._labels = labels
|
203
|
+
|
176
204
|
@property
|
177
205
|
def aws_advanced_configurations_json(self):
|
178
206
|
"""Gets the aws_advanced_configurations_json of this WorkerNodeType. # noqa: E501
|
@@ -84,6 +84,7 @@ class PrivateComputeConfigSDK(BaseSDK):
|
|
84
84
|
resources=self._convert_resource_dict_to_api_model(config.resources)
|
85
85
|
if config.resources is not None or schedulable_by_default
|
86
86
|
else UNSCHEDULABLE_RESOURCES,
|
87
|
+
labels=config.labels,
|
87
88
|
flags=flags or None,
|
88
89
|
advanced_configurations_json=config.advanced_instance_config or None,
|
89
90
|
)
|
@@ -110,6 +111,7 @@ class PrivateComputeConfigSDK(BaseSDK):
|
|
110
111
|
name=config.name,
|
111
112
|
instance_type=config.instance_type,
|
112
113
|
resources=self._convert_resource_dict_to_api_model(config.resources),
|
114
|
+
labels=config.labels,
|
113
115
|
min_workers=config.min_nodes,
|
114
116
|
max_workers=config.max_nodes,
|
115
117
|
use_spot=config.market_type
|
@@ -318,6 +320,7 @@ class PrivateComputeConfigSDK(BaseSDK):
|
|
318
320
|
return HeadNodeConfig(
|
319
321
|
instance_type=api_model.instance_type,
|
320
322
|
resources=self._convert_api_model_to_resource_dict(api_model.resources),
|
323
|
+
labels=api_model.labels,
|
321
324
|
advanced_instance_config=self._convert_api_model_to_advanced_instance_config(
|
322
325
|
api_model,
|
323
326
|
),
|
@@ -365,6 +368,7 @@ class PrivateComputeConfigSDK(BaseSDK):
|
|
365
368
|
resources=self._convert_api_model_to_resource_dict(
|
366
369
|
api_model.resources
|
367
370
|
),
|
371
|
+
labels=api_model.labels,
|
368
372
|
advanced_instance_config=self._convert_api_model_to_advanced_instance_config(
|
369
373
|
api_model,
|
370
374
|
),
|
@@ -6,6 +6,7 @@ from anyscale._private.models import ModelBase, ModelEnum
|
|
6
6
|
|
7
7
|
|
8
8
|
ResourceDict = Dict[str, float]
|
9
|
+
LabelDict = Dict[str, str]
|
9
10
|
AdvancedInstanceConfigDict = Dict[str, Any]
|
10
11
|
|
11
12
|
|
@@ -30,6 +31,18 @@ def _validate_resource_dict(r: Optional[ResourceDict], *, field_name: str):
|
|
30
31
|
)
|
31
32
|
|
32
33
|
|
34
|
+
def _validate_label_dict(labels: Optional[LabelDict]):
|
35
|
+
if labels is None:
|
36
|
+
return
|
37
|
+
|
38
|
+
# Convert any non-string keys/values to strings to ensure compatibility
|
39
|
+
for k, v in labels.items():
|
40
|
+
if not isinstance(k, str):
|
41
|
+
raise TypeError(f"'labels' keys must be strings, but got: {k}")
|
42
|
+
if not isinstance(v, str):
|
43
|
+
raise TypeError(f"'labels' values must be strings, but got: {v}")
|
44
|
+
|
45
|
+
|
33
46
|
def _validate_advanced_instance_config_dict(c: Optional[AdvancedInstanceConfigDict]):
|
34
47
|
if c is None:
|
35
48
|
return
|
@@ -119,6 +132,17 @@ class _NodeConfig(ModelBase):
|
|
119
132
|
def _validate_resources(self, resources: Optional[ResourceDict]):
|
120
133
|
_validate_resource_dict(resources, field_name="resources")
|
121
134
|
|
135
|
+
labels: Optional[LabelDict] = field(
|
136
|
+
default=None,
|
137
|
+
repr=False,
|
138
|
+
metadata={
|
139
|
+
"docstring": "Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels."
|
140
|
+
},
|
141
|
+
)
|
142
|
+
|
143
|
+
def _validate_labels(self, labels: Optional[LabelDict]):
|
144
|
+
_validate_label_dict(labels)
|
145
|
+
|
122
146
|
advanced_instance_config: Optional[AdvancedInstanceConfigDict] = field(
|
123
147
|
default=None,
|
124
148
|
repr=False,
|
@@ -36,6 +36,7 @@ class ComputeNodeType(object):
|
|
36
36
|
'name': 'str',
|
37
37
|
'instance_type': 'str',
|
38
38
|
'resources': 'Resources',
|
39
|
+
'labels': 'dict(str, str)',
|
39
40
|
'aws_advanced_configurations_json': 'object',
|
40
41
|
'gcp_advanced_configurations_json': 'object',
|
41
42
|
'advanced_configurations_json': 'object',
|
@@ -46,13 +47,14 @@ class ComputeNodeType(object):
|
|
46
47
|
'name': 'name',
|
47
48
|
'instance_type': 'instance_type',
|
48
49
|
'resources': 'resources',
|
50
|
+
'labels': 'labels',
|
49
51
|
'aws_advanced_configurations_json': 'aws_advanced_configurations_json',
|
50
52
|
'gcp_advanced_configurations_json': 'gcp_advanced_configurations_json',
|
51
53
|
'advanced_configurations_json': 'advanced_configurations_json',
|
52
54
|
'flags': 'flags'
|
53
55
|
}
|
54
56
|
|
55
|
-
def __init__(self, name=None, instance_type=None, resources=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, local_vars_configuration=None): # noqa: E501
|
57
|
+
def __init__(self, name=None, instance_type=None, resources=None, labels=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, local_vars_configuration=None): # noqa: E501
|
56
58
|
"""ComputeNodeType - a model defined in OpenAPI""" # noqa: E501
|
57
59
|
if local_vars_configuration is None:
|
58
60
|
local_vars_configuration = Configuration()
|
@@ -61,6 +63,7 @@ class ComputeNodeType(object):
|
|
61
63
|
self._name = None
|
62
64
|
self._instance_type = None
|
63
65
|
self._resources = None
|
66
|
+
self._labels = None
|
64
67
|
self._aws_advanced_configurations_json = None
|
65
68
|
self._gcp_advanced_configurations_json = None
|
66
69
|
self._advanced_configurations_json = None
|
@@ -71,6 +74,8 @@ class ComputeNodeType(object):
|
|
71
74
|
self.instance_type = instance_type
|
72
75
|
if resources is not None:
|
73
76
|
self.resources = resources
|
77
|
+
if labels is not None:
|
78
|
+
self.labels = labels
|
74
79
|
if aws_advanced_configurations_json is not None:
|
75
80
|
self.aws_advanced_configurations_json = aws_advanced_configurations_json
|
76
81
|
if gcp_advanced_configurations_json is not None:
|
@@ -153,6 +158,29 @@ class ComputeNodeType(object):
|
|
153
158
|
|
154
159
|
self._resources = resources
|
155
160
|
|
161
|
+
@property
|
162
|
+
def labels(self):
|
163
|
+
"""Gets the labels of this ComputeNodeType. # noqa: E501
|
164
|
+
|
165
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
166
|
+
|
167
|
+
:return: The labels of this ComputeNodeType. # noqa: E501
|
168
|
+
:rtype: dict(str, str)
|
169
|
+
"""
|
170
|
+
return self._labels
|
171
|
+
|
172
|
+
@labels.setter
|
173
|
+
def labels(self, labels):
|
174
|
+
"""Sets the labels of this ComputeNodeType.
|
175
|
+
|
176
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
177
|
+
|
178
|
+
:param labels: The labels of this ComputeNodeType. # noqa: E501
|
179
|
+
:type: dict(str, str)
|
180
|
+
"""
|
181
|
+
|
182
|
+
self._labels = labels
|
183
|
+
|
156
184
|
@property
|
157
185
|
def aws_advanced_configurations_json(self):
|
158
186
|
"""Gets the aws_advanced_configurations_json of this ComputeNodeType. # noqa: E501
|
@@ -36,6 +36,7 @@ class WorkerNodeType(object):
|
|
36
36
|
'name': 'str',
|
37
37
|
'instance_type': 'str',
|
38
38
|
'resources': 'Resources',
|
39
|
+
'labels': 'dict(str, str)',
|
39
40
|
'aws_advanced_configurations_json': 'object',
|
40
41
|
'gcp_advanced_configurations_json': 'object',
|
41
42
|
'advanced_configurations_json': 'object',
|
@@ -50,6 +51,7 @@ class WorkerNodeType(object):
|
|
50
51
|
'name': 'name',
|
51
52
|
'instance_type': 'instance_type',
|
52
53
|
'resources': 'resources',
|
54
|
+
'labels': 'labels',
|
53
55
|
'aws_advanced_configurations_json': 'aws_advanced_configurations_json',
|
54
56
|
'gcp_advanced_configurations_json': 'gcp_advanced_configurations_json',
|
55
57
|
'advanced_configurations_json': 'advanced_configurations_json',
|
@@ -60,7 +62,7 @@ class WorkerNodeType(object):
|
|
60
62
|
'fallback_to_ondemand': 'fallback_to_ondemand'
|
61
63
|
}
|
62
64
|
|
63
|
-
def __init__(self, name=None, instance_type=None, resources=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, min_workers=None, max_workers=None, use_spot=False, fallback_to_ondemand=False, local_vars_configuration=None): # noqa: E501
|
65
|
+
def __init__(self, name=None, instance_type=None, resources=None, labels=None, aws_advanced_configurations_json=None, gcp_advanced_configurations_json=None, advanced_configurations_json=None, flags=None, min_workers=None, max_workers=None, use_spot=False, fallback_to_ondemand=False, local_vars_configuration=None): # noqa: E501
|
64
66
|
"""WorkerNodeType - a model defined in OpenAPI""" # noqa: E501
|
65
67
|
if local_vars_configuration is None:
|
66
68
|
local_vars_configuration = Configuration()
|
@@ -69,6 +71,7 @@ class WorkerNodeType(object):
|
|
69
71
|
self._name = None
|
70
72
|
self._instance_type = None
|
71
73
|
self._resources = None
|
74
|
+
self._labels = None
|
72
75
|
self._aws_advanced_configurations_json = None
|
73
76
|
self._gcp_advanced_configurations_json = None
|
74
77
|
self._advanced_configurations_json = None
|
@@ -83,6 +86,8 @@ class WorkerNodeType(object):
|
|
83
86
|
self.instance_type = instance_type
|
84
87
|
if resources is not None:
|
85
88
|
self.resources = resources
|
89
|
+
if labels is not None:
|
90
|
+
self.labels = labels
|
86
91
|
if aws_advanced_configurations_json is not None:
|
87
92
|
self.aws_advanced_configurations_json = aws_advanced_configurations_json
|
88
93
|
if gcp_advanced_configurations_json is not None:
|
@@ -173,6 +178,29 @@ class WorkerNodeType(object):
|
|
173
178
|
|
174
179
|
self._resources = resources
|
175
180
|
|
181
|
+
@property
|
182
|
+
def labels(self):
|
183
|
+
"""Gets the labels of this WorkerNodeType. # noqa: E501
|
184
|
+
|
185
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
186
|
+
|
187
|
+
:return: The labels of this WorkerNodeType. # noqa: E501
|
188
|
+
:rtype: dict(str, str)
|
189
|
+
"""
|
190
|
+
return self._labels
|
191
|
+
|
192
|
+
@labels.setter
|
193
|
+
def labels(self, labels):
|
194
|
+
"""Sets the labels of this WorkerNodeType.
|
195
|
+
|
196
|
+
Labels to associate the node with for scheduling purposes. Defaults to the list of Ray & Anyscale default labels. # noqa: E501
|
197
|
+
|
198
|
+
:param labels: The labels of this WorkerNodeType. # noqa: E501
|
199
|
+
:type: dict(str, str)
|
200
|
+
"""
|
201
|
+
|
202
|
+
self._labels = labels
|
203
|
+
|
176
204
|
@property
|
177
205
|
def aws_advanced_configurations_json(self):
|
178
206
|
"""Gets the aws_advanced_configurations_json of this WorkerNodeType. # noqa: E501
|
anyscale/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = "0.26.
|
1
|
+
__version__ = "0.26.62"
|
anyscale/workspace/commands.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
from typing import Any, Dict, List, Optional, Tuple
|
2
2
|
|
3
|
-
from anyscale._private.sdk import
|
3
|
+
from anyscale._private.sdk import sdk_command
|
4
4
|
from anyscale.workspace._private.workspace_sdk import PrivateWorkspaceSDK
|
5
5
|
from anyscale.workspace.models import (
|
6
6
|
UpdateWorkspaceConfig,
|
@@ -28,26 +28,18 @@ _CREATE_ARG_DOCSTRINGS = {"config": "The config for defining the workspace."}
|
|
28
28
|
_WAIT_TIMEOUT_SECONDS = 1800.0
|
29
29
|
|
30
30
|
|
31
|
-
@
|
31
|
+
@sdk_command(
|
32
32
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
33
33
|
PrivateWorkspaceSDK,
|
34
34
|
doc_py_example=_CREATE_EXAMPLE,
|
35
35
|
arg_docstrings=_CREATE_ARG_DOCSTRINGS,
|
36
|
-
removal_date="2025-10-01",
|
37
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
38
|
-
alternative="use anyscale.workspace_v2.create() instead",
|
39
36
|
)
|
40
37
|
def create(
|
41
38
|
config: WorkspaceConfig, *, _private_sdk: Optional[PrivateWorkspaceSDK] = None
|
42
39
|
) -> str:
|
43
40
|
"""Create a workspace.
|
44
41
|
|
45
|
-
|
46
|
-
Use anyscale.workspace_v2.create instead.
|
47
|
-
Legacy v1 workspaces are no longer supported.
|
48
|
-
|
49
|
-
Returns:
|
50
|
-
str: The id of the created workspace.
|
42
|
+
Returns the id of the created workspace.
|
51
43
|
"""
|
52
44
|
return _private_sdk.create(config) # type: ignore
|
53
45
|
|
@@ -68,14 +60,11 @@ _START_ARG_DOCSTRINGS = {
|
|
68
60
|
}
|
69
61
|
|
70
62
|
|
71
|
-
@
|
63
|
+
@sdk_command(
|
72
64
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
73
65
|
PrivateWorkspaceSDK,
|
74
66
|
doc_py_example=_START_EXAMPLE,
|
75
67
|
arg_docstrings=_START_ARG_DOCSTRINGS,
|
76
|
-
removal_date="2025-10-01",
|
77
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
78
|
-
alternative="use anyscale.workspace_v2.start() instead",
|
79
68
|
)
|
80
69
|
def start(
|
81
70
|
*,
|
@@ -87,12 +76,7 @@ def start(
|
|
87
76
|
) -> str:
|
88
77
|
"""Start a workspace.
|
89
78
|
|
90
|
-
|
91
|
-
Use anyscale.workspace_v2.start instead.
|
92
|
-
Legacy v1 workspaces are no longer supported.
|
93
|
-
|
94
|
-
Returns:
|
95
|
-
str: The id of the started workspace.
|
79
|
+
Returns the id of the started workspace.
|
96
80
|
"""
|
97
81
|
return _private_sdk.start(name=name, id=id, cloud=cloud, project=project) # type: ignore
|
98
82
|
|
@@ -113,14 +97,11 @@ _TERMINATE_ARG_DOCSTRINGS = {
|
|
113
97
|
}
|
114
98
|
|
115
99
|
|
116
|
-
@
|
100
|
+
@sdk_command(
|
117
101
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
118
102
|
PrivateWorkspaceSDK,
|
119
103
|
doc_py_example=_TERMINATE_EXAMPLE,
|
120
104
|
arg_docstrings=_TERMINATE_ARG_DOCSTRINGS,
|
121
|
-
removal_date="2025-10-01",
|
122
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
123
|
-
alternative="use anyscale.workspace_v2.terminate() instead",
|
124
105
|
)
|
125
106
|
def terminate(
|
126
107
|
*,
|
@@ -132,12 +113,7 @@ def terminate(
|
|
132
113
|
) -> str:
|
133
114
|
"""Terminate a workspace.
|
134
115
|
|
135
|
-
|
136
|
-
Use anyscale.workspace_v2.terminate instead.
|
137
|
-
Legacy v1 workspaces are no longer supported.
|
138
|
-
|
139
|
-
Returns:
|
140
|
-
str: The id of the terminated workspace.
|
116
|
+
Returns the id of the terminated workspace.
|
141
117
|
"""
|
142
118
|
return _private_sdk.terminate(name=name, id=id, cloud=cloud, project=project) # type: ignore
|
143
119
|
|
@@ -158,14 +134,11 @@ _STATUS_ARG_DOCSTRINGS = {
|
|
158
134
|
}
|
159
135
|
|
160
136
|
|
161
|
-
@
|
137
|
+
@sdk_command(
|
162
138
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
163
139
|
PrivateWorkspaceSDK,
|
164
140
|
doc_py_example=_STATUS_EXAMPLE,
|
165
141
|
arg_docstrings=_STATUS_ARG_DOCSTRINGS,
|
166
|
-
removal_date="2025-10-01",
|
167
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
168
|
-
alternative="use anyscale.workspace_v2.status() instead",
|
169
142
|
)
|
170
143
|
def status(
|
171
144
|
*,
|
@@ -177,12 +150,7 @@ def status(
|
|
177
150
|
) -> str:
|
178
151
|
"""Get the status of a workspace.
|
179
152
|
|
180
|
-
|
181
|
-
Use anyscale.workspace_v2.status instead.
|
182
|
-
Legacy v1 workspaces are no longer supported.
|
183
|
-
|
184
|
-
Returns:
|
185
|
-
WorkspaceState: The status of the workspace.
|
153
|
+
Returns the status of the workspace.
|
186
154
|
"""
|
187
155
|
return _private_sdk.status(name=name, id=id, cloud=cloud, project=project) # type: ignore
|
188
156
|
|
@@ -205,14 +173,11 @@ _WAIT_ARG_DOCSTRINGS = {
|
|
205
173
|
}
|
206
174
|
|
207
175
|
|
208
|
-
@
|
176
|
+
@sdk_command(
|
209
177
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
210
178
|
PrivateWorkspaceSDK,
|
211
179
|
doc_py_example=_WAIT_EXAMPLE,
|
212
180
|
arg_docstrings=_WAIT_ARG_DOCSTRINGS,
|
213
|
-
removal_date="2025-10-01",
|
214
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
215
|
-
alternative="use anyscale.workspace_v2.wait() instead",
|
216
181
|
)
|
217
182
|
def wait(
|
218
183
|
*,
|
@@ -226,12 +191,7 @@ def wait(
|
|
226
191
|
) -> str:
|
227
192
|
"""Wait for a workspace to reach a terminal state.
|
228
193
|
|
229
|
-
|
230
|
-
Use anyscale.workspace_v2.wait instead.
|
231
|
-
Legacy v1 workspaces are no longer supported.
|
232
|
-
|
233
|
-
Returns:
|
234
|
-
WorkspaceState: The status of the workspace.
|
194
|
+
Returns the status of the workspace.
|
235
195
|
"""
|
236
196
|
return _private_sdk.wait( # type: ignore
|
237
197
|
name=name,
|
@@ -264,14 +224,11 @@ _GENERATE_SSH_CONFIG_FILE_ARG_DOCSTRINGS = {
|
|
264
224
|
}
|
265
225
|
|
266
226
|
|
267
|
-
@
|
227
|
+
@sdk_command(
|
268
228
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
269
229
|
PrivateWorkspaceSDK,
|
270
230
|
doc_py_example=_GENERATE_SSH_CONFIG_FILE_EXAMPLE,
|
271
231
|
arg_docstrings=_GENERATE_SSH_CONFIG_FILE_ARG_DOCSTRINGS,
|
272
|
-
removal_date="2025-10-01",
|
273
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
274
|
-
alternative="use anyscale.workspace_v2.generate_ssh_config_file() instead",
|
275
232
|
)
|
276
233
|
def generate_ssh_config_file(
|
277
234
|
*,
|
@@ -284,12 +241,7 @@ def generate_ssh_config_file(
|
|
284
241
|
) -> Tuple[str, str]:
|
285
242
|
"""Generate an SSH config file for a workspace.
|
286
243
|
|
287
|
-
|
288
|
-
Use anyscale.workspace_v2.generate_ssh_config_file instead.
|
289
|
-
Legacy v1 workspaces are no longer supported.
|
290
|
-
|
291
|
-
Returns:
|
292
|
-
Tuple[str, str]: The hostname and path to the generated config file.
|
244
|
+
Returns the hostname and path to the generated config file.
|
293
245
|
"""
|
294
246
|
return _private_sdk.generate_ssh_config_file( # type: ignore
|
295
247
|
name=name, id=id, cloud=cloud, project=project, ssh_config_path=ssh_config_path,
|
@@ -318,14 +270,11 @@ _RUN_COMMAND_ARG_DOCSTRINGS = {
|
|
318
270
|
}
|
319
271
|
|
320
272
|
|
321
|
-
@
|
273
|
+
@sdk_command(
|
322
274
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
323
275
|
PrivateWorkspaceSDK,
|
324
276
|
doc_py_example=_RUN_COMMAND_EXAMPLE,
|
325
277
|
arg_docstrings=_RUN_COMMAND_ARG_DOCSTRINGS,
|
326
|
-
removal_date="2025-10-01",
|
327
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
328
|
-
alternative="use anyscale.workspace_v2.run_command() instead",
|
329
278
|
)
|
330
279
|
def run_command(
|
331
280
|
*,
|
@@ -339,12 +288,7 @@ def run_command(
|
|
339
288
|
):
|
340
289
|
"""Run a command in a workspace.
|
341
290
|
|
342
|
-
|
343
|
-
Use anyscale.workspace_v2.run_command instead.
|
344
|
-
Legacy v1 workspaces are no longer supported.
|
345
|
-
|
346
|
-
Returns:
|
347
|
-
subprocess.CompletedProcess: The result of the command execution.
|
291
|
+
Returns a subprocess.CompletedProcess object.
|
348
292
|
"""
|
349
293
|
return _private_sdk.run_command( # type: ignore
|
350
294
|
name=name, id=id, cloud=cloud, project=project, command=command, **kwargs,
|
@@ -370,14 +314,11 @@ _PULL_ARG_DOCSTRINGS = {
|
|
370
314
|
}
|
371
315
|
|
372
316
|
|
373
|
-
@
|
317
|
+
@sdk_command(
|
374
318
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
375
319
|
PrivateWorkspaceSDK,
|
376
320
|
doc_py_example=_PULL_EXAMPLE,
|
377
321
|
arg_docstrings=_PULL_ARG_DOCSTRINGS,
|
378
|
-
removal_date="2025-10-01",
|
379
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
380
|
-
alternative="use anyscale.workspace_v2.pull() instead",
|
381
322
|
)
|
382
323
|
def pull(
|
383
324
|
*,
|
@@ -393,12 +334,7 @@ def pull(
|
|
393
334
|
) -> None:
|
394
335
|
"""Pull a workspace to a local directory.
|
395
336
|
|
396
|
-
|
397
|
-
Use anyscale.workspace_v2.pull instead.
|
398
|
-
Legacy v1 workspaces are no longer supported.
|
399
|
-
|
400
|
-
Returns:
|
401
|
-
str: The path to the pulled workspace.
|
337
|
+
Returns the path to the pulled workspace.
|
402
338
|
"""
|
403
339
|
_private_sdk.pull( # type: ignore
|
404
340
|
name=name,
|
@@ -433,14 +369,11 @@ _PUSH_ARG_DOCSTRINGS = {
|
|
433
369
|
}
|
434
370
|
|
435
371
|
|
436
|
-
@
|
372
|
+
@sdk_command(
|
437
373
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
438
374
|
PrivateWorkspaceSDK,
|
439
375
|
doc_py_example=_PUSH_EXAMPLE,
|
440
376
|
arg_docstrings=_PUSH_ARG_DOCSTRINGS,
|
441
|
-
removal_date="2025-10-01",
|
442
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
443
|
-
alternative="use anyscale.workspace_v2.push() instead",
|
444
377
|
)
|
445
378
|
def push(
|
446
379
|
*,
|
@@ -456,12 +389,7 @@ def push(
|
|
456
389
|
) -> None:
|
457
390
|
"""Push a local directory to a workspace.
|
458
391
|
|
459
|
-
|
460
|
-
Use anyscale.workspace_v2.push instead.
|
461
|
-
Legacy v1 workspaces are no longer supported.
|
462
|
-
|
463
|
-
Returns:
|
464
|
-
str: The path to the pushed workspace.
|
392
|
+
Returns the path to the pushed workspace.
|
465
393
|
"""
|
466
394
|
_private_sdk.push( # type: ignore
|
467
395
|
name=name,
|
@@ -493,14 +421,11 @@ _UPDATE_ARG_DOCSTRINGS = {
|
|
493
421
|
}
|
494
422
|
|
495
423
|
|
496
|
-
@
|
424
|
+
@sdk_command(
|
497
425
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
498
426
|
PrivateWorkspaceSDK,
|
499
427
|
doc_py_example=_UPDATE_EXAMPLE,
|
500
428
|
arg_docstrings=_UPDATE_ARG_DOCSTRINGS,
|
501
|
-
removal_date="2025-10-01",
|
502
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
503
|
-
alternative="use anyscale.workspace_v2.update() instead",
|
504
429
|
)
|
505
430
|
def update(
|
506
431
|
*,
|
@@ -508,12 +433,7 @@ def update(
|
|
508
433
|
config: UpdateWorkspaceConfig,
|
509
434
|
_private_sdk: Optional[PrivateWorkspaceSDK] = None,
|
510
435
|
) -> None:
|
511
|
-
"""Update a workspace.
|
512
|
-
|
513
|
-
DEPRECATED: This function will be removed on 2025-10-01.
|
514
|
-
Use anyscale.workspace_v2.update instead.
|
515
|
-
Legacy v1 workspaces are no longer supported.
|
516
|
-
"""
|
436
|
+
"""Update a workspace."""
|
517
437
|
_private_sdk.update( # type: ignore
|
518
438
|
id=id, config=config,
|
519
439
|
)
|
@@ -536,14 +456,11 @@ _GET_ARG_DOCSTRINGS = {
|
|
536
456
|
}
|
537
457
|
|
538
458
|
|
539
|
-
@
|
459
|
+
@sdk_command(
|
540
460
|
_WORKSPACE_SDK_SINGLETON_KEY,
|
541
461
|
PrivateWorkspaceSDK,
|
542
462
|
doc_py_example=_GET_EXAMPLE,
|
543
463
|
arg_docstrings=_GET_ARG_DOCSTRINGS,
|
544
|
-
removal_date="2025-10-01",
|
545
|
-
deprecation_message="Legacy v1 workspaces are no longer supported",
|
546
|
-
alternative="use anyscale.workspace_v2.get() instead",
|
547
464
|
)
|
548
465
|
def get(
|
549
466
|
*,
|
@@ -553,13 +470,5 @@ def get(
|
|
553
470
|
project: Optional[str] = None,
|
554
471
|
_private_sdk: Optional[PrivateWorkspaceSDK] = None,
|
555
472
|
) -> Workspace:
|
556
|
-
"""Get a workspace.
|
557
|
-
|
558
|
-
DEPRECATED: This function will be removed on 2025-10-01.
|
559
|
-
Use anyscale.workspace_v2.get instead.
|
560
|
-
Legacy v1 workspaces are no longer supported.
|
561
|
-
|
562
|
-
Returns:
|
563
|
-
Workspace: The workspace object.
|
564
|
-
"""
|
473
|
+
"""Get a workspace."""
|
565
474
|
return _private_sdk.get(name=name, id=id, cloud=cloud, project=project) # type: ignore
|