anyscale 0.26.60__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.
Files changed (35) hide show
  1. anyscale/_private/docgen/models.md +2 -0
  2. anyscale/client/README.md +20 -3
  3. anyscale/client/openapi_client/__init__.py +12 -3
  4. anyscale/client/openapi_client/api/default_api.py +999 -50
  5. anyscale/client/openapi_client/models/__init__.py +12 -3
  6. anyscale/client/openapi_client/models/api_key_info.py +280 -0
  7. anyscale/client/openapi_client/models/api_key_parameters.py +29 -3
  8. anyscale/client/openapi_client/models/apikeyinfo_list_response.py +147 -0
  9. anyscale/client/openapi_client/models/cluster_dashboard_node.py +361 -0
  10. anyscale/client/openapi_client/models/{aggregatedinstanceusagecsv_list_response.py → clusterdashboardnode_list_response.py} +15 -15
  11. anyscale/client/openapi_client/models/compute_node_type.py +29 -1
  12. anyscale/client/openapi_client/models/gpu_usage.py +236 -0
  13. anyscale/client/openapi_client/models/node_metrics.py +404 -0
  14. anyscale/client/openapi_client/models/node_metrics_response.py +123 -0
  15. anyscale/client/openapi_client/models/{cloud_hosting_type.py → node_status.py} +8 -7
  16. anyscale/client/openapi_client/models/nodemetricsresponse_response.py +121 -0
  17. anyscale/client/openapi_client/models/revoke_api_keys_request.py +123 -0
  18. anyscale/client/openapi_client/models/revoke_api_keys_response.py +202 -0
  19. anyscale/client/openapi_client/models/revokeapikeysresponse_response.py +121 -0
  20. anyscale/client/openapi_client/models/worker_node_type.py +29 -1
  21. anyscale/client/openapi_client/models/workspace_template.py +17 -17
  22. anyscale/compute_config/_private/compute_config_sdk.py +4 -0
  23. anyscale/compute_config/models.py +24 -0
  24. anyscale/sdk/anyscale_client/models/compute_node_type.py +29 -1
  25. anyscale/sdk/anyscale_client/models/worker_node_type.py +29 -1
  26. anyscale/version.py +1 -1
  27. anyscale/workspace/commands.py +23 -114
  28. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/METADATA +1 -1
  29. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/RECORD +34 -25
  30. anyscale/client/openapi_client/models/aggregated_instance_usage_csv.py +0 -811
  31. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/WHEEL +0 -0
  32. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/entry_points.txt +0 -0
  33. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/licenses/LICENSE +0 -0
  34. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/licenses/NOTICE +0 -0
  35. {anyscale-0.26.60.dist-info → anyscale-0.26.62.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,361 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Managed Ray API
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by: https://openapi-generator.tech
10
+ """
11
+
12
+
13
+ import pprint
14
+ import re # noqa: F401
15
+
16
+ import six
17
+
18
+ from openapi_client.configuration import Configuration
19
+
20
+
21
+ class ClusterDashboardNode(object):
22
+ """NOTE: This class is auto generated by OpenAPI Generator.
23
+ Ref: https://openapi-generator.tech
24
+
25
+ Do not edit the class manually.
26
+ """
27
+
28
+ """
29
+ Attributes:
30
+ openapi_types (dict): The key is attribute name
31
+ and the value is attribute type.
32
+ attribute_map (dict): The key is attribute name
33
+ and the value is json key in definition.
34
+ """
35
+ openapi_types = {
36
+ 'node_id': 'str',
37
+ 'node_ip': 'str',
38
+ 'name': 'str',
39
+ 'status': 'NodeStatus',
40
+ 'is_head_node': 'bool',
41
+ 'resources': 'dict(str, float)',
42
+ 'labels': 'dict(str, str)',
43
+ 'start_time_ms': 'int',
44
+ 'end_time_ms': 'int',
45
+ 'ray_session_name': 'str'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'node_id': 'node_id',
50
+ 'node_ip': 'node_ip',
51
+ 'name': 'name',
52
+ 'status': 'status',
53
+ 'is_head_node': 'is_head_node',
54
+ 'resources': 'resources',
55
+ 'labels': 'labels',
56
+ 'start_time_ms': 'start_time_ms',
57
+ 'end_time_ms': 'end_time_ms',
58
+ 'ray_session_name': 'ray_session_name'
59
+ }
60
+
61
+ def __init__(self, node_id=None, node_ip=None, name=None, status=None, is_head_node=None, resources=None, labels=None, start_time_ms=None, end_time_ms=None, ray_session_name=None, local_vars_configuration=None): # noqa: E501
62
+ """ClusterDashboardNode - a model defined in OpenAPI""" # noqa: E501
63
+ if local_vars_configuration is None:
64
+ local_vars_configuration = Configuration()
65
+ self.local_vars_configuration = local_vars_configuration
66
+
67
+ self._node_id = None
68
+ self._node_ip = None
69
+ self._name = None
70
+ self._status = None
71
+ self._is_head_node = None
72
+ self._resources = None
73
+ self._labels = None
74
+ self._start_time_ms = None
75
+ self._end_time_ms = None
76
+ self._ray_session_name = None
77
+ self.discriminator = None
78
+
79
+ self.node_id = node_id
80
+ self.node_ip = node_ip
81
+ self.name = name
82
+ self.status = status
83
+ self.is_head_node = is_head_node
84
+ self.resources = resources
85
+ self.labels = labels
86
+ if start_time_ms is not None:
87
+ self.start_time_ms = start_time_ms
88
+ if end_time_ms is not None:
89
+ self.end_time_ms = end_time_ms
90
+ if ray_session_name is not None:
91
+ self.ray_session_name = ray_session_name
92
+
93
+ @property
94
+ def node_id(self):
95
+ """Gets the node_id of this ClusterDashboardNode. # noqa: E501
96
+
97
+
98
+ :return: The node_id of this ClusterDashboardNode. # noqa: E501
99
+ :rtype: str
100
+ """
101
+ return self._node_id
102
+
103
+ @node_id.setter
104
+ def node_id(self, node_id):
105
+ """Sets the node_id of this ClusterDashboardNode.
106
+
107
+
108
+ :param node_id: The node_id of this ClusterDashboardNode. # noqa: E501
109
+ :type: str
110
+ """
111
+ if self.local_vars_configuration.client_side_validation and node_id is None: # noqa: E501
112
+ raise ValueError("Invalid value for `node_id`, must not be `None`") # noqa: E501
113
+
114
+ self._node_id = node_id
115
+
116
+ @property
117
+ def node_ip(self):
118
+ """Gets the node_ip of this ClusterDashboardNode. # noqa: E501
119
+
120
+
121
+ :return: The node_ip of this ClusterDashboardNode. # noqa: E501
122
+ :rtype: str
123
+ """
124
+ return self._node_ip
125
+
126
+ @node_ip.setter
127
+ def node_ip(self, node_ip):
128
+ """Sets the node_ip of this ClusterDashboardNode.
129
+
130
+
131
+ :param node_ip: The node_ip of this ClusterDashboardNode. # noqa: E501
132
+ :type: str
133
+ """
134
+ if self.local_vars_configuration.client_side_validation and node_ip is None: # noqa: E501
135
+ raise ValueError("Invalid value for `node_ip`, must not be `None`") # noqa: E501
136
+
137
+ self._node_ip = node_ip
138
+
139
+ @property
140
+ def name(self):
141
+ """Gets the name of this ClusterDashboardNode. # noqa: E501
142
+
143
+
144
+ :return: The name of this ClusterDashboardNode. # noqa: E501
145
+ :rtype: str
146
+ """
147
+ return self._name
148
+
149
+ @name.setter
150
+ def name(self, name):
151
+ """Sets the name of this ClusterDashboardNode.
152
+
153
+
154
+ :param name: The name of this ClusterDashboardNode. # noqa: E501
155
+ :type: str
156
+ """
157
+ if self.local_vars_configuration.client_side_validation and name is None: # noqa: E501
158
+ raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501
159
+
160
+ self._name = name
161
+
162
+ @property
163
+ def status(self):
164
+ """Gets the status of this ClusterDashboardNode. # noqa: E501
165
+
166
+
167
+ :return: The status of this ClusterDashboardNode. # noqa: E501
168
+ :rtype: NodeStatus
169
+ """
170
+ return self._status
171
+
172
+ @status.setter
173
+ def status(self, status):
174
+ """Sets the status of this ClusterDashboardNode.
175
+
176
+
177
+ :param status: The status of this ClusterDashboardNode. # noqa: E501
178
+ :type: NodeStatus
179
+ """
180
+ if self.local_vars_configuration.client_side_validation and status is None: # noqa: E501
181
+ raise ValueError("Invalid value for `status`, must not be `None`") # noqa: E501
182
+
183
+ self._status = status
184
+
185
+ @property
186
+ def is_head_node(self):
187
+ """Gets the is_head_node of this ClusterDashboardNode. # noqa: E501
188
+
189
+
190
+ :return: The is_head_node of this ClusterDashboardNode. # noqa: E501
191
+ :rtype: bool
192
+ """
193
+ return self._is_head_node
194
+
195
+ @is_head_node.setter
196
+ def is_head_node(self, is_head_node):
197
+ """Sets the is_head_node of this ClusterDashboardNode.
198
+
199
+
200
+ :param is_head_node: The is_head_node of this ClusterDashboardNode. # noqa: E501
201
+ :type: bool
202
+ """
203
+ if self.local_vars_configuration.client_side_validation and is_head_node is None: # noqa: E501
204
+ raise ValueError("Invalid value for `is_head_node`, must not be `None`") # noqa: E501
205
+
206
+ self._is_head_node = is_head_node
207
+
208
+ @property
209
+ def resources(self):
210
+ """Gets the resources of this ClusterDashboardNode. # noqa: E501
211
+
212
+
213
+ :return: The resources of this ClusterDashboardNode. # noqa: E501
214
+ :rtype: dict(str, float)
215
+ """
216
+ return self._resources
217
+
218
+ @resources.setter
219
+ def resources(self, resources):
220
+ """Sets the resources of this ClusterDashboardNode.
221
+
222
+
223
+ :param resources: The resources of this ClusterDashboardNode. # noqa: E501
224
+ :type: dict(str, float)
225
+ """
226
+ if self.local_vars_configuration.client_side_validation and resources is None: # noqa: E501
227
+ raise ValueError("Invalid value for `resources`, must not be `None`") # noqa: E501
228
+
229
+ self._resources = resources
230
+
231
+ @property
232
+ def labels(self):
233
+ """Gets the labels of this ClusterDashboardNode. # noqa: E501
234
+
235
+
236
+ :return: The labels of this ClusterDashboardNode. # noqa: E501
237
+ :rtype: dict(str, str)
238
+ """
239
+ return self._labels
240
+
241
+ @labels.setter
242
+ def labels(self, labels):
243
+ """Sets the labels of this ClusterDashboardNode.
244
+
245
+
246
+ :param labels: The labels of this ClusterDashboardNode. # noqa: E501
247
+ :type: dict(str, str)
248
+ """
249
+ if self.local_vars_configuration.client_side_validation and labels is None: # noqa: E501
250
+ raise ValueError("Invalid value for `labels`, must not be `None`") # noqa: E501
251
+
252
+ self._labels = labels
253
+
254
+ @property
255
+ def start_time_ms(self):
256
+ """Gets the start_time_ms of this ClusterDashboardNode. # noqa: E501
257
+
258
+
259
+ :return: The start_time_ms of this ClusterDashboardNode. # noqa: E501
260
+ :rtype: int
261
+ """
262
+ return self._start_time_ms
263
+
264
+ @start_time_ms.setter
265
+ def start_time_ms(self, start_time_ms):
266
+ """Sets the start_time_ms of this ClusterDashboardNode.
267
+
268
+
269
+ :param start_time_ms: The start_time_ms of this ClusterDashboardNode. # noqa: E501
270
+ :type: int
271
+ """
272
+
273
+ self._start_time_ms = start_time_ms
274
+
275
+ @property
276
+ def end_time_ms(self):
277
+ """Gets the end_time_ms of this ClusterDashboardNode. # noqa: E501
278
+
279
+
280
+ :return: The end_time_ms of this ClusterDashboardNode. # noqa: E501
281
+ :rtype: int
282
+ """
283
+ return self._end_time_ms
284
+
285
+ @end_time_ms.setter
286
+ def end_time_ms(self, end_time_ms):
287
+ """Sets the end_time_ms of this ClusterDashboardNode.
288
+
289
+
290
+ :param end_time_ms: The end_time_ms of this ClusterDashboardNode. # noqa: E501
291
+ :type: int
292
+ """
293
+
294
+ self._end_time_ms = end_time_ms
295
+
296
+ @property
297
+ def ray_session_name(self):
298
+ """Gets the ray_session_name of this ClusterDashboardNode. # noqa: E501
299
+
300
+
301
+ :return: The ray_session_name of this ClusterDashboardNode. # noqa: E501
302
+ :rtype: str
303
+ """
304
+ return self._ray_session_name
305
+
306
+ @ray_session_name.setter
307
+ def ray_session_name(self, ray_session_name):
308
+ """Sets the ray_session_name of this ClusterDashboardNode.
309
+
310
+
311
+ :param ray_session_name: The ray_session_name of this ClusterDashboardNode. # noqa: E501
312
+ :type: str
313
+ """
314
+
315
+ self._ray_session_name = ray_session_name
316
+
317
+ def to_dict(self):
318
+ """Returns the model properties as a dict"""
319
+ result = {}
320
+
321
+ for attr, _ in six.iteritems(self.openapi_types):
322
+ value = getattr(self, attr)
323
+ if isinstance(value, list):
324
+ result[attr] = list(map(
325
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
326
+ value
327
+ ))
328
+ elif hasattr(value, "to_dict"):
329
+ result[attr] = value.to_dict()
330
+ elif isinstance(value, dict):
331
+ result[attr] = dict(map(
332
+ lambda item: (item[0], item[1].to_dict())
333
+ if hasattr(item[1], "to_dict") else item,
334
+ value.items()
335
+ ))
336
+ else:
337
+ result[attr] = value
338
+
339
+ return result
340
+
341
+ def to_str(self):
342
+ """Returns the string representation of the model"""
343
+ return pprint.pformat(self.to_dict())
344
+
345
+ def __repr__(self):
346
+ """For `print` and `pprint`"""
347
+ return self.to_str()
348
+
349
+ def __eq__(self, other):
350
+ """Returns true if both objects are equal"""
351
+ if not isinstance(other, ClusterDashboardNode):
352
+ return False
353
+
354
+ return self.to_dict() == other.to_dict()
355
+
356
+ def __ne__(self, other):
357
+ """Returns true if both objects are not equal"""
358
+ if not isinstance(other, ClusterDashboardNode):
359
+ return True
360
+
361
+ return self.to_dict() != other.to_dict()
@@ -18,7 +18,7 @@ import six
18
18
  from openapi_client.configuration import Configuration
19
19
 
20
20
 
21
- class AggregatedinstanceusagecsvListResponse(object):
21
+ class ClusterdashboardnodeListResponse(object):
22
22
  """NOTE: This class is auto generated by OpenAPI Generator.
23
23
  Ref: https://openapi-generator.tech
24
24
 
@@ -33,7 +33,7 @@ class AggregatedinstanceusagecsvListResponse(object):
33
33
  and the value is json key in definition.
34
34
  """
35
35
  openapi_types = {
36
- 'results': 'list[AggregatedInstanceUsageCSV]',
36
+ 'results': 'list[ClusterDashboardNode]',
37
37
  'metadata': 'ListResponseMetadata'
38
38
  }
39
39
 
@@ -43,7 +43,7 @@ class AggregatedinstanceusagecsvListResponse(object):
43
43
  }
44
44
 
45
45
  def __init__(self, results=None, metadata=None, local_vars_configuration=None): # noqa: E501
46
- """AggregatedinstanceusagecsvListResponse - a model defined in OpenAPI""" # noqa: E501
46
+ """ClusterdashboardnodeListResponse - a model defined in OpenAPI""" # noqa: E501
47
47
  if local_vars_configuration is None:
48
48
  local_vars_configuration = Configuration()
49
49
  self.local_vars_configuration = local_vars_configuration
@@ -58,21 +58,21 @@ class AggregatedinstanceusagecsvListResponse(object):
58
58
 
59
59
  @property
60
60
  def results(self):
61
- """Gets the results of this AggregatedinstanceusagecsvListResponse. # noqa: E501
61
+ """Gets the results of this ClusterdashboardnodeListResponse. # noqa: E501
62
62
 
63
63
 
64
- :return: The results of this AggregatedinstanceusagecsvListResponse. # noqa: E501
65
- :rtype: list[AggregatedInstanceUsageCSV]
64
+ :return: The results of this ClusterdashboardnodeListResponse. # noqa: E501
65
+ :rtype: list[ClusterDashboardNode]
66
66
  """
67
67
  return self._results
68
68
 
69
69
  @results.setter
70
70
  def results(self, results):
71
- """Sets the results of this AggregatedinstanceusagecsvListResponse.
71
+ """Sets the results of this ClusterdashboardnodeListResponse.
72
72
 
73
73
 
74
- :param results: The results of this AggregatedinstanceusagecsvListResponse. # noqa: E501
75
- :type: list[AggregatedInstanceUsageCSV]
74
+ :param results: The results of this ClusterdashboardnodeListResponse. # noqa: E501
75
+ :type: list[ClusterDashboardNode]
76
76
  """
77
77
  if self.local_vars_configuration.client_side_validation and results is None: # noqa: E501
78
78
  raise ValueError("Invalid value for `results`, must not be `None`") # noqa: E501
@@ -81,20 +81,20 @@ class AggregatedinstanceusagecsvListResponse(object):
81
81
 
82
82
  @property
83
83
  def metadata(self):
84
- """Gets the metadata of this AggregatedinstanceusagecsvListResponse. # noqa: E501
84
+ """Gets the metadata of this ClusterdashboardnodeListResponse. # noqa: E501
85
85
 
86
86
 
87
- :return: The metadata of this AggregatedinstanceusagecsvListResponse. # noqa: E501
87
+ :return: The metadata of this ClusterdashboardnodeListResponse. # noqa: E501
88
88
  :rtype: ListResponseMetadata
89
89
  """
90
90
  return self._metadata
91
91
 
92
92
  @metadata.setter
93
93
  def metadata(self, metadata):
94
- """Sets the metadata of this AggregatedinstanceusagecsvListResponse.
94
+ """Sets the metadata of this ClusterdashboardnodeListResponse.
95
95
 
96
96
 
97
- :param metadata: The metadata of this AggregatedinstanceusagecsvListResponse. # noqa: E501
97
+ :param metadata: The metadata of this ClusterdashboardnodeListResponse. # noqa: E501
98
98
  :type: ListResponseMetadata
99
99
  """
100
100
 
@@ -134,14 +134,14 @@ class AggregatedinstanceusagecsvListResponse(object):
134
134
 
135
135
  def __eq__(self, other):
136
136
  """Returns true if both objects are equal"""
137
- if not isinstance(other, AggregatedinstanceusagecsvListResponse):
137
+ if not isinstance(other, ClusterdashboardnodeListResponse):
138
138
  return False
139
139
 
140
140
  return self.to_dict() == other.to_dict()
141
141
 
142
142
  def __ne__(self, other):
143
143
  """Returns true if both objects are not equal"""
144
- if not isinstance(other, AggregatedinstanceusagecsvListResponse):
144
+ if not isinstance(other, ClusterdashboardnodeListResponse):
145
145
  return True
146
146
 
147
147
  return self.to_dict() != other.to_dict()
@@ -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