anyscale 0.26.38__py3-none-any.whl → 0.26.40__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/client/README.md CHANGED
@@ -324,6 +324,7 @@ Class | Method | HTTP request | Description
324
324
  *DefaultApi* | [**search_cloud_collaborators_api_v2_clouds_cloud_id_collaborators_users_search_post**](docs/DefaultApi.md#search_cloud_collaborators_api_v2_clouds_cloud_id_collaborators_users_search_post) | **POST** /api/v2/clouds/{cloud_id}/collaborators/users/search | Search Cloud Collaborators
325
325
  *DefaultApi* | [**search_cluster_environments_api_v2_application_templates_search_post**](docs/DefaultApi.md#search_cluster_environments_api_v2_application_templates_search_post) | **POST** /api/v2/application_templates/search | Search Cluster Environments
326
326
  *DefaultApi* | [**search_compute_templates_api_v2_compute_templates_search_post**](docs/DefaultApi.md#search_compute_templates_api_v2_compute_templates_search_post) | **POST** /api/v2/compute_templates/search | Search Compute Templates
327
+ *DefaultApi* | [**search_machine_pools_api_v2_machine_pools_search_get**](docs/DefaultApi.md#search_machine_pools_api_v2_machine_pools_search_get) | **GET** /api/v2/machine_pools/search | Search Machine Pools
327
328
  *DefaultApi* | [**search_resource_notifications_api_v2_resource_notifications_search_post**](docs/DefaultApi.md#search_resource_notifications_api_v2_resource_notifications_search_post) | **POST** /api/v2/resource_notifications/search | Search Resource Notifications
328
329
  *DefaultApi* | [**search_resource_quotas_api_v2_resource_quotas_search_post**](docs/DefaultApi.md#search_resource_quotas_api_v2_resource_quotas_search_post) | **POST** /api/v2/resource_quotas/search | Search Resource Quotas
329
330
  *DefaultApi* | [**search_support_requests_api_v2_support_requests_search_post**](docs/DefaultApi.md#search_support_requests_api_v2_support_requests_search_post) | **POST** /api/v2/support_requests/search | Search Support Requests
@@ -726,7 +727,9 @@ Class | Method | HTTP request | Description
726
727
  - [MachineInfo](docs/MachineInfo.md)
727
728
  - [MachineLaunchFailure](docs/MachineLaunchFailure.md)
728
729
  - [MachinePool](docs/MachinePool.md)
730
+ - [MachinePoolSearchResult](docs/MachinePoolSearchResult.md)
729
731
  - [MachineStateInfo](docs/MachineStateInfo.md)
732
+ - [MachinepoolsearchresultListResponse](docs/MachinepoolsearchresultListResponse.md)
730
733
  - [MachinestateinfoListResponse](docs/MachinestateinfoListResponse.md)
731
734
  - [Metric](docs/Metric.md)
732
735
  - [MetronomeCustomerInfoModel](docs/MetronomeCustomerInfoModel.md)
@@ -382,7 +382,9 @@ from openapi_client.models.machine_connection_state import MachineConnectionStat
382
382
  from openapi_client.models.machine_info import MachineInfo
383
383
  from openapi_client.models.machine_launch_failure import MachineLaunchFailure
384
384
  from openapi_client.models.machine_pool import MachinePool
385
+ from openapi_client.models.machine_pool_search_result import MachinePoolSearchResult
385
386
  from openapi_client.models.machine_state_info import MachineStateInfo
387
+ from openapi_client.models.machinepoolsearchresult_list_response import MachinepoolsearchresultListResponse
386
388
  from openapi_client.models.machinestateinfo_list_response import MachinestateinfoListResponse
387
389
  from openapi_client.models.metric import Metric
388
390
  from openapi_client.models.metronome_customer_info_model import MetronomeCustomerInfoModel
@@ -8041,6 +8041,8 @@ class DefaultApi(object):
8041
8041
 
8042
8042
  :param async_req bool: execute request asynchronously
8043
8043
  :param DescribeMachinePoolMachinesRequest describe_machine_pool_machines_request: (required)
8044
+ :param str paging_token:
8045
+ :param int count:
8044
8046
  :param _preload_content: if False, the urllib3.HTTPResponse object will
8045
8047
  be returned without reading/decoding response
8046
8048
  data. Default is True.
@@ -8066,6 +8068,8 @@ class DefaultApi(object):
8066
8068
 
8067
8069
  :param async_req bool: execute request asynchronously
8068
8070
  :param DescribeMachinePoolMachinesRequest describe_machine_pool_machines_request: (required)
8071
+ :param str paging_token:
8072
+ :param int count:
8069
8073
  :param _return_http_data_only: response data without head status code
8070
8074
  and headers
8071
8075
  :param _preload_content: if False, the urllib3.HTTPResponse object will
@@ -8083,7 +8087,9 @@ class DefaultApi(object):
8083
8087
  local_var_params = locals()
8084
8088
 
8085
8089
  all_params = [
8086
- 'describe_machine_pool_machines_request'
8090
+ 'describe_machine_pool_machines_request',
8091
+ 'paging_token',
8092
+ 'count'
8087
8093
  ]
8088
8094
  all_params.extend(
8089
8095
  [
@@ -8107,11 +8113,19 @@ class DefaultApi(object):
8107
8113
  local_var_params['describe_machine_pool_machines_request'] is None): # noqa: E501
8108
8114
  raise ApiValueError("Missing the required parameter `describe_machine_pool_machines_request` when calling `describe_machine_pool_machines_api_v2_machine_pools_describe_machines_post`") # noqa: E501
8109
8115
 
8116
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] > 1000: # noqa: E501
8117
+ raise ApiValueError("Invalid value for parameter `count` when calling `describe_machine_pool_machines_api_v2_machine_pools_describe_machines_post`, must be a value less than or equal to `1000`") # noqa: E501
8118
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] < 0: # noqa: E501
8119
+ raise ApiValueError("Invalid value for parameter `count` when calling `describe_machine_pool_machines_api_v2_machine_pools_describe_machines_post`, must be a value greater than or equal to `0`") # noqa: E501
8110
8120
  collection_formats = {}
8111
8121
 
8112
8122
  path_params = {}
8113
8123
 
8114
8124
  query_params = []
8125
+ if 'paging_token' in local_var_params and local_var_params['paging_token'] is not None: # noqa: E501
8126
+ query_params.append(('paging_token', local_var_params['paging_token'])) # noqa: E501
8127
+ if 'count' in local_var_params and local_var_params['count'] is not None: # noqa: E501
8128
+ query_params.append(('count', local_var_params['count'])) # noqa: E501
8115
8129
 
8116
8130
  header_params = {}
8117
8131
 
@@ -8159,6 +8173,8 @@ class DefaultApi(object):
8159
8173
 
8160
8174
  :param async_req bool: execute request asynchronously
8161
8175
  :param DescribeMachinePoolRequestsRequest describe_machine_pool_requests_request: (required)
8176
+ :param str paging_token:
8177
+ :param int count:
8162
8178
  :param _preload_content: if False, the urllib3.HTTPResponse object will
8163
8179
  be returned without reading/decoding response
8164
8180
  data. Default is True.
@@ -8184,6 +8200,8 @@ class DefaultApi(object):
8184
8200
 
8185
8201
  :param async_req bool: execute request asynchronously
8186
8202
  :param DescribeMachinePoolRequestsRequest describe_machine_pool_requests_request: (required)
8203
+ :param str paging_token:
8204
+ :param int count:
8187
8205
  :param _return_http_data_only: response data without head status code
8188
8206
  and headers
8189
8207
  :param _preload_content: if False, the urllib3.HTTPResponse object will
@@ -8201,7 +8219,9 @@ class DefaultApi(object):
8201
8219
  local_var_params = locals()
8202
8220
 
8203
8221
  all_params = [
8204
- 'describe_machine_pool_requests_request'
8222
+ 'describe_machine_pool_requests_request',
8223
+ 'paging_token',
8224
+ 'count'
8205
8225
  ]
8206
8226
  all_params.extend(
8207
8227
  [
@@ -8225,11 +8245,19 @@ class DefaultApi(object):
8225
8245
  local_var_params['describe_machine_pool_requests_request'] is None): # noqa: E501
8226
8246
  raise ApiValueError("Missing the required parameter `describe_machine_pool_requests_request` when calling `describe_machine_pool_requests_api_v2_machine_pools_describe_requests_post`") # noqa: E501
8227
8247
 
8248
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] > 1000: # noqa: E501
8249
+ raise ApiValueError("Invalid value for parameter `count` when calling `describe_machine_pool_requests_api_v2_machine_pools_describe_requests_post`, must be a value less than or equal to `1000`") # noqa: E501
8250
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] < 0: # noqa: E501
8251
+ raise ApiValueError("Invalid value for parameter `count` when calling `describe_machine_pool_requests_api_v2_machine_pools_describe_requests_post`, must be a value greater than or equal to `0`") # noqa: E501
8228
8252
  collection_formats = {}
8229
8253
 
8230
8254
  path_params = {}
8231
8255
 
8232
8256
  query_params = []
8257
+ if 'paging_token' in local_var_params and local_var_params['paging_token'] is not None: # noqa: E501
8258
+ query_params.append(('paging_token', local_var_params['paging_token'])) # noqa: E501
8259
+ if 'count' in local_var_params and local_var_params['count'] is not None: # noqa: E501
8260
+ query_params.append(('count', local_var_params['count'])) # noqa: E501
8233
8261
 
8234
8262
  header_params = {}
8235
8263
 
@@ -30205,6 +30233,125 @@ class DefaultApi(object):
30205
30233
  _request_timeout=local_var_params.get('_request_timeout'),
30206
30234
  collection_formats=collection_formats)
30207
30235
 
30236
+ def search_machine_pools_api_v2_machine_pools_search_get(self, **kwargs): # noqa: E501
30237
+ """Search Machine Pools # noqa: E501
30238
+
30239
+ Search machine pools. # noqa: E501
30240
+ This method makes a synchronous HTTP request by default. To make an
30241
+ asynchronous HTTP request, please pass async_req=True
30242
+ >>> thread = api.search_machine_pools_api_v2_machine_pools_search_get(async_req=True)
30243
+ >>> result = thread.get()
30244
+
30245
+ :param async_req bool: execute request asynchronously
30246
+ :param str paging_token:
30247
+ :param int count:
30248
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
30249
+ be returned without reading/decoding response
30250
+ data. Default is True.
30251
+ :param _request_timeout: timeout setting for this request. If one
30252
+ number provided, it will be total request
30253
+ timeout. It can also be a pair (tuple) of
30254
+ (connection, read) timeouts.
30255
+ :return: MachinepoolsearchresultListResponse
30256
+ If the method is called asynchronously,
30257
+ returns the request thread.
30258
+ """
30259
+ kwargs['_return_http_data_only'] = True
30260
+ return self.search_machine_pools_api_v2_machine_pools_search_get_with_http_info(**kwargs) # noqa: E501
30261
+
30262
+ def search_machine_pools_api_v2_machine_pools_search_get_with_http_info(self, **kwargs): # noqa: E501
30263
+ """Search Machine Pools # noqa: E501
30264
+
30265
+ Search machine pools. # noqa: E501
30266
+ This method makes a synchronous HTTP request by default. To make an
30267
+ asynchronous HTTP request, please pass async_req=True
30268
+ >>> thread = api.search_machine_pools_api_v2_machine_pools_search_get_with_http_info(async_req=True)
30269
+ >>> result = thread.get()
30270
+
30271
+ :param async_req bool: execute request asynchronously
30272
+ :param str paging_token:
30273
+ :param int count:
30274
+ :param _return_http_data_only: response data without head status code
30275
+ and headers
30276
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
30277
+ be returned without reading/decoding response
30278
+ data. Default is True.
30279
+ :param _request_timeout: timeout setting for this request. If one
30280
+ number provided, it will be total request
30281
+ timeout. It can also be a pair (tuple) of
30282
+ (connection, read) timeouts.
30283
+ :return: tuple(MachinepoolsearchresultListResponse, status_code(int), headers(HTTPHeaderDict))
30284
+ If the method is called asynchronously,
30285
+ returns the request thread.
30286
+ """
30287
+
30288
+ local_var_params = locals()
30289
+
30290
+ all_params = [
30291
+ 'paging_token',
30292
+ 'count'
30293
+ ]
30294
+ all_params.extend(
30295
+ [
30296
+ 'async_req',
30297
+ '_return_http_data_only',
30298
+ '_preload_content',
30299
+ '_request_timeout'
30300
+ ]
30301
+ )
30302
+
30303
+ for key, val in six.iteritems(local_var_params['kwargs']):
30304
+ if key not in all_params:
30305
+ raise ApiTypeError(
30306
+ "Got an unexpected keyword argument '%s'"
30307
+ " to method search_machine_pools_api_v2_machine_pools_search_get" % key
30308
+ )
30309
+ local_var_params[key] = val
30310
+ del local_var_params['kwargs']
30311
+
30312
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] > 1000: # noqa: E501
30313
+ raise ApiValueError("Invalid value for parameter `count` when calling `search_machine_pools_api_v2_machine_pools_search_get`, must be a value less than or equal to `1000`") # noqa: E501
30314
+ if self.api_client.client_side_validation and 'count' in local_var_params and local_var_params['count'] < 0: # noqa: E501
30315
+ raise ApiValueError("Invalid value for parameter `count` when calling `search_machine_pools_api_v2_machine_pools_search_get`, must be a value greater than or equal to `0`") # noqa: E501
30316
+ collection_formats = {}
30317
+
30318
+ path_params = {}
30319
+
30320
+ query_params = []
30321
+ if 'paging_token' in local_var_params and local_var_params['paging_token'] is not None: # noqa: E501
30322
+ query_params.append(('paging_token', local_var_params['paging_token'])) # noqa: E501
30323
+ if 'count' in local_var_params and local_var_params['count'] is not None: # noqa: E501
30324
+ query_params.append(('count', local_var_params['count'])) # noqa: E501
30325
+
30326
+ header_params = {}
30327
+
30328
+ form_params = []
30329
+ local_var_files = {}
30330
+
30331
+ body_params = None
30332
+ # HTTP header `Accept`
30333
+ header_params['Accept'] = self.api_client.select_header_accept(
30334
+ ['application/json']) # noqa: E501
30335
+
30336
+ # Authentication setting
30337
+ auth_settings = [] # noqa: E501
30338
+
30339
+ return self.api_client.call_api(
30340
+ '/api/v2/machine_pools/search', 'GET',
30341
+ path_params,
30342
+ query_params,
30343
+ header_params,
30344
+ body=body_params,
30345
+ post_params=form_params,
30346
+ files=local_var_files,
30347
+ response_type='MachinepoolsearchresultListResponse', # noqa: E501
30348
+ auth_settings=auth_settings,
30349
+ async_req=local_var_params.get('async_req'),
30350
+ _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
30351
+ _preload_content=local_var_params.get('_preload_content', True),
30352
+ _request_timeout=local_var_params.get('_request_timeout'),
30353
+ collection_formats=collection_formats)
30354
+
30208
30355
  def search_resource_notifications_api_v2_resource_notifications_search_post(self, list_resource_notifications_query, **kwargs): # noqa: E501
30209
30356
  """Search Resource Notifications # noqa: E501
30210
30357
 
@@ -368,7 +368,9 @@ from openapi_client.models.machine_connection_state import MachineConnectionStat
368
368
  from openapi_client.models.machine_info import MachineInfo
369
369
  from openapi_client.models.machine_launch_failure import MachineLaunchFailure
370
370
  from openapi_client.models.machine_pool import MachinePool
371
+ from openapi_client.models.machine_pool_search_result import MachinePoolSearchResult
371
372
  from openapi_client.models.machine_state_info import MachineStateInfo
373
+ from openapi_client.models.machinepoolsearchresult_list_response import MachinepoolsearchresultListResponse
372
374
  from openapi_client.models.machinestateinfo_list_response import MachinestateinfoListResponse
373
375
  from openapi_client.models.metric import Metric
374
376
  from openapi_client.models.metronome_customer_info_model import MetronomeCustomerInfoModel
@@ -36,17 +36,19 @@ class CloudDataBucketPresignedUrlRequest(object):
36
36
  'file_type': 'CloudDataBucketFileType',
37
37
  'file_name': 'str',
38
38
  'access_mode': 'CloudDataBucketAccessMode',
39
- 'scope': 'CloudDataBucketRequestScope'
39
+ 'scope': 'CloudDataBucketRequestScope',
40
+ 'cloud_deployment_id': 'str'
40
41
  }
41
42
 
42
43
  attribute_map = {
43
44
  'file_type': 'file_type',
44
45
  'file_name': 'file_name',
45
46
  'access_mode': 'access_mode',
46
- 'scope': 'scope'
47
+ 'scope': 'scope',
48
+ 'cloud_deployment_id': 'cloud_deployment_id'
47
49
  }
48
50
 
49
- def __init__(self, file_type=None, file_name=None, access_mode=None, scope=None, local_vars_configuration=None): # noqa: E501
51
+ def __init__(self, file_type=None, file_name=None, access_mode=None, scope=None, cloud_deployment_id=None, local_vars_configuration=None): # noqa: E501
50
52
  """CloudDataBucketPresignedUrlRequest - a model defined in OpenAPI""" # noqa: E501
51
53
  if local_vars_configuration is None:
52
54
  local_vars_configuration = Configuration()
@@ -56,6 +58,7 @@ class CloudDataBucketPresignedUrlRequest(object):
56
58
  self._file_name = None
57
59
  self._access_mode = None
58
60
  self._scope = None
61
+ self._cloud_deployment_id = None
59
62
  self.discriminator = None
60
63
 
61
64
  self.file_type = file_type
@@ -63,6 +66,8 @@ class CloudDataBucketPresignedUrlRequest(object):
63
66
  self.access_mode = access_mode
64
67
  if scope is not None:
65
68
  self.scope = scope
69
+ if cloud_deployment_id is not None:
70
+ self.cloud_deployment_id = cloud_deployment_id
66
71
 
67
72
  @property
68
73
  def file_type(self):
@@ -162,6 +167,29 @@ class CloudDataBucketPresignedUrlRequest(object):
162
167
 
163
168
  self._scope = scope
164
169
 
170
+ @property
171
+ def cloud_deployment_id(self):
172
+ """Gets the cloud_deployment_id of this CloudDataBucketPresignedUrlRequest. # noqa: E501
173
+
174
+ The cloud deployment ID of the bucket to generate a presigned URL for. If not specified, the primary cloud deployment for the cloud will be used. # noqa: E501
175
+
176
+ :return: The cloud_deployment_id of this CloudDataBucketPresignedUrlRequest. # noqa: E501
177
+ :rtype: str
178
+ """
179
+ return self._cloud_deployment_id
180
+
181
+ @cloud_deployment_id.setter
182
+ def cloud_deployment_id(self, cloud_deployment_id):
183
+ """Sets the cloud_deployment_id of this CloudDataBucketPresignedUrlRequest.
184
+
185
+ The cloud deployment ID of the bucket to generate a presigned URL for. If not specified, the primary cloud deployment for the cloud will be used. # noqa: E501
186
+
187
+ :param cloud_deployment_id: The cloud_deployment_id of this CloudDataBucketPresignedUrlRequest. # noqa: E501
188
+ :type: str
189
+ """
190
+
191
+ self._cloud_deployment_id = cloud_deployment_id
192
+
165
193
  def to_dict(self):
166
194
  """Returns the model properties as a dict"""
167
195
  result = {}
@@ -138,7 +138,8 @@ class CloudResourceGCP(object):
138
138
  self.gcp_subnet_ids = gcp_subnet_ids
139
139
  self.gcp_cluster_node_service_account_email = gcp_cluster_node_service_account_email
140
140
  self.gcp_anyscale_iam_service_account_email = gcp_anyscale_iam_service_account_email
141
- self.gcp_filestore_config = gcp_filestore_config
141
+ if gcp_filestore_config is not None:
142
+ self.gcp_filestore_config = gcp_filestore_config
142
143
  self.gcp_firewall_policy_ids = gcp_firewall_policy_ids
143
144
  self.gcp_cloud_storage_bucket_id = gcp_cloud_storage_bucket_id
144
145
  if gcp_deployment_manager_id is not None:
@@ -521,8 +522,6 @@ class CloudResourceGCP(object):
521
522
  :param gcp_filestore_config: The gcp_filestore_config of this CloudResourceGCP. # noqa: E501
522
523
  :type: GCPFileStoreConfig
523
524
  """
524
- if self.local_vars_configuration.client_side_validation and gcp_filestore_config is None: # noqa: E501
525
- raise ValueError("Invalid value for `gcp_filestore_config`, must not be `None`") # noqa: E501
526
525
 
527
526
  self._gcp_filestore_config = gcp_filestore_config
528
527
 
@@ -132,7 +132,8 @@ class CreateCloudResourceGCP(object):
132
132
  self.gcp_subnet_ids = gcp_subnet_ids
133
133
  self.gcp_cluster_node_service_account_email = gcp_cluster_node_service_account_email
134
134
  self.gcp_anyscale_iam_service_account_email = gcp_anyscale_iam_service_account_email
135
- self.gcp_filestore_config = gcp_filestore_config
135
+ if gcp_filestore_config is not None:
136
+ self.gcp_filestore_config = gcp_filestore_config
136
137
  self.gcp_firewall_policy_ids = gcp_firewall_policy_ids
137
138
  self.gcp_cloud_storage_bucket_id = gcp_cloud_storage_bucket_id
138
139
  if gcp_deployment_manager_id is not None:
@@ -513,8 +514,6 @@ class CreateCloudResourceGCP(object):
513
514
  :param gcp_filestore_config: The gcp_filestore_config of this CreateCloudResourceGCP. # noqa: E501
514
515
  :type: GCPFileStoreConfig
515
516
  """
516
- if self.local_vars_configuration.client_side_validation and gcp_filestore_config is None: # noqa: E501
517
- raise ValueError("Invalid value for `gcp_filestore_config`, must not be `None`") # noqa: E501
518
517
 
519
518
  self._gcp_filestore_config = gcp_filestore_config
520
519
 
@@ -0,0 +1,266 @@
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 MachinePoolSearchResult(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
+ 'machine_pool_name': 'str',
37
+ 'machine_pool_id': 'str',
38
+ 'organization_id': 'str',
39
+ 'cloud_ids': 'list[str]',
40
+ 'enable_rootless_dataplane_config': 'bool',
41
+ 'spec': 'object'
42
+ }
43
+
44
+ attribute_map = {
45
+ 'machine_pool_name': 'machine_pool_name',
46
+ 'machine_pool_id': 'machine_pool_id',
47
+ 'organization_id': 'organization_id',
48
+ 'cloud_ids': 'cloud_ids',
49
+ 'enable_rootless_dataplane_config': 'enable_rootless_dataplane_config',
50
+ 'spec': 'spec'
51
+ }
52
+
53
+ def __init__(self, machine_pool_name=None, machine_pool_id=None, organization_id=None, cloud_ids=None, enable_rootless_dataplane_config=False, spec=None, local_vars_configuration=None): # noqa: E501
54
+ """MachinePoolSearchResult - a model defined in OpenAPI""" # noqa: E501
55
+ if local_vars_configuration is None:
56
+ local_vars_configuration = Configuration()
57
+ self.local_vars_configuration = local_vars_configuration
58
+
59
+ self._machine_pool_name = None
60
+ self._machine_pool_id = None
61
+ self._organization_id = None
62
+ self._cloud_ids = None
63
+ self._enable_rootless_dataplane_config = None
64
+ self._spec = None
65
+ self.discriminator = None
66
+
67
+ self.machine_pool_name = machine_pool_name
68
+ self.machine_pool_id = machine_pool_id
69
+ self.organization_id = organization_id
70
+ self.cloud_ids = cloud_ids
71
+ if enable_rootless_dataplane_config is not None:
72
+ self.enable_rootless_dataplane_config = enable_rootless_dataplane_config
73
+ if spec is not None:
74
+ self.spec = spec
75
+
76
+ @property
77
+ def machine_pool_name(self):
78
+ """Gets the machine_pool_name of this MachinePoolSearchResult. # noqa: E501
79
+
80
+ The name of the machine pool. # noqa: E501
81
+
82
+ :return: The machine_pool_name of this MachinePoolSearchResult. # noqa: E501
83
+ :rtype: str
84
+ """
85
+ return self._machine_pool_name
86
+
87
+ @machine_pool_name.setter
88
+ def machine_pool_name(self, machine_pool_name):
89
+ """Sets the machine_pool_name of this MachinePoolSearchResult.
90
+
91
+ The name of the machine pool. # noqa: E501
92
+
93
+ :param machine_pool_name: The machine_pool_name of this MachinePoolSearchResult. # noqa: E501
94
+ :type: str
95
+ """
96
+ if self.local_vars_configuration.client_side_validation and machine_pool_name is None: # noqa: E501
97
+ raise ValueError("Invalid value for `machine_pool_name`, must not be `None`") # noqa: E501
98
+
99
+ self._machine_pool_name = machine_pool_name
100
+
101
+ @property
102
+ def machine_pool_id(self):
103
+ """Gets the machine_pool_id of this MachinePoolSearchResult. # noqa: E501
104
+
105
+ The unique identifier of the machine pool. # noqa: E501
106
+
107
+ :return: The machine_pool_id of this MachinePoolSearchResult. # noqa: E501
108
+ :rtype: str
109
+ """
110
+ return self._machine_pool_id
111
+
112
+ @machine_pool_id.setter
113
+ def machine_pool_id(self, machine_pool_id):
114
+ """Sets the machine_pool_id of this MachinePoolSearchResult.
115
+
116
+ The unique identifier of the machine pool. # noqa: E501
117
+
118
+ :param machine_pool_id: The machine_pool_id of this MachinePoolSearchResult. # noqa: E501
119
+ :type: str
120
+ """
121
+ if self.local_vars_configuration.client_side_validation and machine_pool_id is None: # noqa: E501
122
+ raise ValueError("Invalid value for `machine_pool_id`, must not be `None`") # noqa: E501
123
+
124
+ self._machine_pool_id = machine_pool_id
125
+
126
+ @property
127
+ def organization_id(self):
128
+ """Gets the organization_id of this MachinePoolSearchResult. # noqa: E501
129
+
130
+ The organization ID that owns the machine pool. # noqa: E501
131
+
132
+ :return: The organization_id of this MachinePoolSearchResult. # noqa: E501
133
+ :rtype: str
134
+ """
135
+ return self._organization_id
136
+
137
+ @organization_id.setter
138
+ def organization_id(self, organization_id):
139
+ """Sets the organization_id of this MachinePoolSearchResult.
140
+
141
+ The organization ID that owns the machine pool. # noqa: E501
142
+
143
+ :param organization_id: The organization_id of this MachinePoolSearchResult. # noqa: E501
144
+ :type: str
145
+ """
146
+ if self.local_vars_configuration.client_side_validation and organization_id is None: # noqa: E501
147
+ raise ValueError("Invalid value for `organization_id`, must not be `None`") # noqa: E501
148
+
149
+ self._organization_id = organization_id
150
+
151
+ @property
152
+ def cloud_ids(self):
153
+ """Gets the cloud_ids of this MachinePoolSearchResult. # noqa: E501
154
+
155
+ The cloud IDs that are attached to the machine pool. # noqa: E501
156
+
157
+ :return: The cloud_ids of this MachinePoolSearchResult. # noqa: E501
158
+ :rtype: list[str]
159
+ """
160
+ return self._cloud_ids
161
+
162
+ @cloud_ids.setter
163
+ def cloud_ids(self, cloud_ids):
164
+ """Sets the cloud_ids of this MachinePoolSearchResult.
165
+
166
+ The cloud IDs that are attached to the machine pool. # noqa: E501
167
+
168
+ :param cloud_ids: The cloud_ids of this MachinePoolSearchResult. # noqa: E501
169
+ :type: list[str]
170
+ """
171
+ if self.local_vars_configuration.client_side_validation and cloud_ids is None: # noqa: E501
172
+ raise ValueError("Invalid value for `cloud_ids`, must not be `None`") # noqa: E501
173
+
174
+ self._cloud_ids = cloud_ids
175
+
176
+ @property
177
+ def enable_rootless_dataplane_config(self):
178
+ """Gets the enable_rootless_dataplane_config of this MachinePoolSearchResult. # noqa: E501
179
+
180
+ Whether to enable rootless dataplane config nodes running under this machine pool. # noqa: E501
181
+
182
+ :return: The enable_rootless_dataplane_config of this MachinePoolSearchResult. # noqa: E501
183
+ :rtype: bool
184
+ """
185
+ return self._enable_rootless_dataplane_config
186
+
187
+ @enable_rootless_dataplane_config.setter
188
+ def enable_rootless_dataplane_config(self, enable_rootless_dataplane_config):
189
+ """Sets the enable_rootless_dataplane_config of this MachinePoolSearchResult.
190
+
191
+ Whether to enable rootless dataplane config nodes running under this machine pool. # noqa: E501
192
+
193
+ :param enable_rootless_dataplane_config: The enable_rootless_dataplane_config of this MachinePoolSearchResult. # noqa: E501
194
+ :type: bool
195
+ """
196
+
197
+ self._enable_rootless_dataplane_config = enable_rootless_dataplane_config
198
+
199
+ @property
200
+ def spec(self):
201
+ """Gets the spec of this MachinePoolSearchResult. # noqa: E501
202
+
203
+ A machine pool specification; schema and allowed fields are defined in Anyscale documentation. # noqa: E501
204
+
205
+ :return: The spec of this MachinePoolSearchResult. # noqa: E501
206
+ :rtype: object
207
+ """
208
+ return self._spec
209
+
210
+ @spec.setter
211
+ def spec(self, spec):
212
+ """Sets the spec of this MachinePoolSearchResult.
213
+
214
+ A machine pool specification; schema and allowed fields are defined in Anyscale documentation. # noqa: E501
215
+
216
+ :param spec: The spec of this MachinePoolSearchResult. # noqa: E501
217
+ :type: object
218
+ """
219
+
220
+ self._spec = spec
221
+
222
+ def to_dict(self):
223
+ """Returns the model properties as a dict"""
224
+ result = {}
225
+
226
+ for attr, _ in six.iteritems(self.openapi_types):
227
+ value = getattr(self, attr)
228
+ if isinstance(value, list):
229
+ result[attr] = list(map(
230
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
231
+ value
232
+ ))
233
+ elif hasattr(value, "to_dict"):
234
+ result[attr] = value.to_dict()
235
+ elif isinstance(value, dict):
236
+ result[attr] = dict(map(
237
+ lambda item: (item[0], item[1].to_dict())
238
+ if hasattr(item[1], "to_dict") else item,
239
+ value.items()
240
+ ))
241
+ else:
242
+ result[attr] = value
243
+
244
+ return result
245
+
246
+ def to_str(self):
247
+ """Returns the string representation of the model"""
248
+ return pprint.pformat(self.to_dict())
249
+
250
+ def __repr__(self):
251
+ """For `print` and `pprint`"""
252
+ return self.to_str()
253
+
254
+ def __eq__(self, other):
255
+ """Returns true if both objects are equal"""
256
+ if not isinstance(other, MachinePoolSearchResult):
257
+ return False
258
+
259
+ return self.to_dict() == other.to_dict()
260
+
261
+ def __ne__(self, other):
262
+ """Returns true if both objects are not equal"""
263
+ if not isinstance(other, MachinePoolSearchResult):
264
+ return True
265
+
266
+ return self.to_dict() != other.to_dict()
@@ -0,0 +1,147 @@
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 MachinepoolsearchresultListResponse(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
+ 'results': 'list[MachinePoolSearchResult]',
37
+ 'metadata': 'ListResponseMetadata'
38
+ }
39
+
40
+ attribute_map = {
41
+ 'results': 'results',
42
+ 'metadata': 'metadata'
43
+ }
44
+
45
+ def __init__(self, results=None, metadata=None, local_vars_configuration=None): # noqa: E501
46
+ """MachinepoolsearchresultListResponse - a model defined in OpenAPI""" # noqa: E501
47
+ if local_vars_configuration is None:
48
+ local_vars_configuration = Configuration()
49
+ self.local_vars_configuration = local_vars_configuration
50
+
51
+ self._results = None
52
+ self._metadata = None
53
+ self.discriminator = None
54
+
55
+ self.results = results
56
+ if metadata is not None:
57
+ self.metadata = metadata
58
+
59
+ @property
60
+ def results(self):
61
+ """Gets the results of this MachinepoolsearchresultListResponse. # noqa: E501
62
+
63
+
64
+ :return: The results of this MachinepoolsearchresultListResponse. # noqa: E501
65
+ :rtype: list[MachinePoolSearchResult]
66
+ """
67
+ return self._results
68
+
69
+ @results.setter
70
+ def results(self, results):
71
+ """Sets the results of this MachinepoolsearchresultListResponse.
72
+
73
+
74
+ :param results: The results of this MachinepoolsearchresultListResponse. # noqa: E501
75
+ :type: list[MachinePoolSearchResult]
76
+ """
77
+ if self.local_vars_configuration.client_side_validation and results is None: # noqa: E501
78
+ raise ValueError("Invalid value for `results`, must not be `None`") # noqa: E501
79
+
80
+ self._results = results
81
+
82
+ @property
83
+ def metadata(self):
84
+ """Gets the metadata of this MachinepoolsearchresultListResponse. # noqa: E501
85
+
86
+
87
+ :return: The metadata of this MachinepoolsearchresultListResponse. # noqa: E501
88
+ :rtype: ListResponseMetadata
89
+ """
90
+ return self._metadata
91
+
92
+ @metadata.setter
93
+ def metadata(self, metadata):
94
+ """Sets the metadata of this MachinepoolsearchresultListResponse.
95
+
96
+
97
+ :param metadata: The metadata of this MachinepoolsearchresultListResponse. # noqa: E501
98
+ :type: ListResponseMetadata
99
+ """
100
+
101
+ self._metadata = metadata
102
+
103
+ def to_dict(self):
104
+ """Returns the model properties as a dict"""
105
+ result = {}
106
+
107
+ for attr, _ in six.iteritems(self.openapi_types):
108
+ value = getattr(self, attr)
109
+ if isinstance(value, list):
110
+ result[attr] = list(map(
111
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
112
+ value
113
+ ))
114
+ elif hasattr(value, "to_dict"):
115
+ result[attr] = value.to_dict()
116
+ elif isinstance(value, dict):
117
+ result[attr] = dict(map(
118
+ lambda item: (item[0], item[1].to_dict())
119
+ if hasattr(item[1], "to_dict") else item,
120
+ value.items()
121
+ ))
122
+ else:
123
+ result[attr] = value
124
+
125
+ return result
126
+
127
+ def to_str(self):
128
+ """Returns the string representation of the model"""
129
+ return pprint.pformat(self.to_dict())
130
+
131
+ def __repr__(self):
132
+ """For `print` and `pprint`"""
133
+ return self.to_str()
134
+
135
+ def __eq__(self, other):
136
+ """Returns true if both objects are equal"""
137
+ if not isinstance(other, MachinepoolsearchresultListResponse):
138
+ return False
139
+
140
+ return self.to_dict() == other.to_dict()
141
+
142
+ def __ne__(self, other):
143
+ """Returns true if both objects are not equal"""
144
+ if not isinstance(other, MachinepoolsearchresultListResponse):
145
+ return True
146
+
147
+ return self.to_dict() != other.to_dict()
@@ -201,7 +201,7 @@ def list( # noqa: A001
201
201
  help=(
202
202
  "Get the details of a compute config.\n\n"
203
203
  "The name can contain an optional version, e.g., 'name:version'. "
204
- "If no version is provided, the latest one will be archived.\n\n"
204
+ "If no version is provided, the latest one will be returned.\n\n"
205
205
  ),
206
206
  cls=AnyscaleCommand,
207
207
  example=command_examples.COMPUTE_CONFIG_GET_EXAMPLE,
@@ -184,7 +184,7 @@ class PrivateComputeConfigSDK(BaseSDK):
184
184
  worker_node_types=self._convert_worker_node_group_configs_to_api_models(
185
185
  compute_config.worker_nodes, cloud=cloud,
186
186
  ),
187
- auto_select_worker_config=compute_config.worker_nodes is None,
187
+ auto_select_worker_config=compute_config.auto_select_worker_config,
188
188
  flags=flags,
189
189
  )
190
190
  self._populate_advanced_instance_config(
@@ -340,9 +340,14 @@ class PrivateComputeConfigSDK(BaseSDK):
340
340
 
341
341
  worker_nodes = None
342
342
  if not api_model_config.auto_select_worker_config:
343
- worker_nodes = self._convert_api_models_to_worker_node_group_configs(
344
- api_model_config.worker_node_types, cloud=cloud
345
- )
343
+ if api_model_config.worker_node_types is not None:
344
+ # Convert worker node types when they are present.
345
+ worker_nodes = self._convert_api_models_to_worker_node_group_configs(
346
+ api_model_config.worker_node_types, cloud=cloud,
347
+ )
348
+ else:
349
+ # An explicit head-node-only cluster (no worker nodes configured).
350
+ worker_nodes = []
346
351
 
347
352
  zones = None
348
353
  # NOTE(edoakes): the API returns '["any"]' if no AZs are passed in on the creation path.
@@ -379,6 +384,7 @@ class PrivateComputeConfigSDK(BaseSDK):
379
384
  worker_nodes=worker_nodes, # type: ignore
380
385
  min_resources=min_resources,
381
386
  max_resources=max_resources or None,
387
+ auto_select_worker_config=api_model_config.auto_select_worker_config,
382
388
  flags=flags,
383
389
  ),
384
390
  )
@@ -569,6 +569,22 @@ advanced_instance_config: # (Optional) Defaults to no advanced configurations.
569
569
  if not isinstance(flags, dict):
570
570
  raise TypeError("'flags' must be a dict")
571
571
 
572
+ auto_select_worker_config: bool = field(
573
+ default=False,
574
+ repr=False,
575
+ metadata={
576
+ "docstring": "Allow worker groups to be automatically configured based on workload. When false, worker groups must be explicitly configured.",
577
+ },
578
+ )
579
+
580
+ def _validate_auto_select_worker_config(self, auto_select_worker_config: bool):
581
+ if not isinstance(auto_select_worker_config, bool):
582
+ raise TypeError("'auto_select_worker_config' must be a boolean")
583
+ if auto_select_worker_config and self.worker_nodes is not None:
584
+ raise ValueError(
585
+ "'auto_select_worker_config' must be false when 'worker_nodes' are provided"
586
+ )
587
+
572
588
 
573
589
  @dataclass(frozen=True)
574
590
  class ComputeConfigVersion(ModelBase):
@@ -645,14 +645,18 @@ class CloudController(BaseController):
645
645
  gcp_cloud_storage_bucket_id = cloud_resources["storage.v1.bucket"]
646
646
  gcp_deployment_manager_id = deployment_name
647
647
 
648
- gcp_filestore_config = gcp_utils.get_gcp_filestore_config(
649
- factory,
650
- project_id,
651
- gcp_vpc_id,
652
- cloud_resources["filestore_location"],
653
- cloud_resources["filestore_instance"],
654
- self.log,
655
- )
648
+ gcp_filestore_config = None
649
+ if cloud_resources.get("filestore_location") and cloud_resources.get(
650
+ "filestore_instance"
651
+ ):
652
+ gcp_filestore_config = gcp_utils.get_gcp_filestore_config(
653
+ factory,
654
+ project_id,
655
+ gcp_vpc_id,
656
+ cloud_resources["filestore_location"],
657
+ cloud_resources["filestore_instance"],
658
+ self.log,
659
+ )
656
660
  memorystore_instance_config = gcp_utils.get_gcp_memorystore_config(
657
661
  factory, cloud_resources.get("memorystore_name"),
658
662
  )
@@ -78,6 +78,7 @@ class PrivateServiceSDK(WorkloadSDK):
78
78
  cloud_id=cloud_id,
79
79
  autopopulate_in_workspace=autopopulate_in_workspace,
80
80
  additional_py_modules=config.py_modules,
81
+ py_executable_override=config.py_executable,
81
82
  )
82
83
  new_runtime_envs = self.override_and_load_requirements_files(
83
84
  new_runtime_envs,
anyscale/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.26.38"
1
+ __version__ = "0.26.40"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: anyscale
3
- Version: 0.26.38
3
+ Version: 0.26.40
4
4
  Summary: Command Line Interface for Anyscale
5
5
  Author: Anyscale Inc.
6
6
  License: AS License
@@ -28,7 +28,7 @@ anyscale/snapshot.py,sha256=UGJT5C1s_4xmQxjWODK5DFpGxHRBX5jOCdSCqXESH8E,1685
28
28
  anyscale/tables.py,sha256=TV4F2uLnwehvbkAfaP7iuLlT2wLIo6ORH2LVdRGXW5g,2840
29
29
  anyscale/telemetry.py,sha256=wklWABN8wtq8Cq3ptPFEeQQC9xjKP5ytxybCuWAvNI0,15229
30
30
  anyscale/util.py,sha256=14AHIhl4c4hKAW4gLZIvy5w56-zDjcPmrdWqazsvnHU,41860
31
- anyscale/version.py,sha256=T9EcVGuAa84saTU3BB9eVaF8TdJCislPCFleKXw9y7A,24
31
+ anyscale/version.py,sha256=LRijOPIXofxbVPIc9EWkOslRaoGdu3kP6mzmI7k1UhE,24
32
32
  anyscale/workspace_utils.py,sha256=OViE88CnIF5ruVxd3kazQ0Mf2BxqtMq6wx-XQ5A2cp8,1204
33
33
  anyscale/_private/anyscale_client/README.md,sha256=gk8obk7kqg6VWoUHcqDMwJULh35tYKEZFC0UF_dixGA,718
34
34
  anyscale/_private/anyscale_client/__init__.py,sha256=807Blx3RHQeS8BmKZcsOQQ4dYoKlCnpm6Bdsif2CrHg,337
@@ -106,7 +106,7 @@ anyscale/background/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
106
106
  anyscale/background/job_runner.py,sha256=LTuv9JOahyv6C9i7DLQAONgQF6--FfYZEmJrKy-sUG8,2687
107
107
  anyscale/client/.gitignore,sha256=JZyvYEtT2DCSK9V5Joi6lQofhMik4PXiJRCWsg7SvqI,807
108
108
  anyscale/client/.openapi-generator-ignore,sha256=pu2PTide7pJtJ-DFLzDy0cTYQJRlrB-8RRH3zGLeUds,1040
109
- anyscale/client/README.md,sha256=1IcoSA9PA1kJMOiozVDvzU9Y2a_8CpNjbKDM9q20I-w,111700
109
+ anyscale/client/README.md,sha256=T7VKPWtM3NmaSlHxk1xZO_t4o2Qd4BvqcQlGnSrklBU,112057
110
110
  anyscale/client/git_push.sh,sha256=EDCZOTTiLxbtPHmiU63qC99rGH67B7dhdPZdNUKivF0,1827
111
111
  anyscale/client/requirements.txt,sha256=dkVKYUStC5h_g_87SH7pRdhXCj7ySozAJMGAFEzGgFc,126
112
112
  anyscale/client/setup.cfg,sha256=l7bdKSIedeBhhoDtupsBwx1xPrlBf2yYeTH7a8kMga4,28
@@ -114,14 +114,14 @@ anyscale/client/setup.py,sha256=tSxqw1kAL1B9adnrnOarjnQfSbwGmnTr_kg8ZXhlm5A,1109
114
114
  anyscale/client/test-requirements.txt,sha256=sTjmDTj5W9fh1ZAeo8UT2EBdeGDBNttj_PHiPBXg1D4,111
115
115
  anyscale/client/tox.ini,sha256=M6L3UmvAdvU65LsoAF-Oi7oRjwZlCJZn8I7ofdXn5Ok,156
116
116
  anyscale/client/.openapi-generator/VERSION,sha256=J0RzX-4u4jfin1kviKtmncjUePyjHm2kyvmkobOrt_E,5
117
- anyscale/client/openapi_client/__init__.py,sha256=q6w1EaFMOZPWVT3D0an1TcZPyMcc75-6wfEQxvR5tuw,50482
117
+ anyscale/client/openapi_client/__init__.py,sha256=CXmzVxS9spOhwEA2e-fVP6yIMt1_Ci4FHcOMQvedVZs,50675
118
118
  anyscale/client/openapi_client/api_client.py,sha256=d8Un6j2Ny2vlS2qBXPVFj6_ql0k36DFahpWt_28TfCk,25563
119
119
  anyscale/client/openapi_client/configuration.py,sha256=Dd5XrlHwv-wxnf0C35PG_-HBQoY3Yaz6hKrmkZz-m0E,12363
120
120
  anyscale/client/openapi_client/exceptions.py,sha256=3egwsXQG2j_vARbqgBxUO1xSltAhpfiHTYVP7VXTvU0,3792
121
121
  anyscale/client/openapi_client/rest.py,sha256=Ehj37v7GHW6SXV067Hze5HE42ayKaGi6a6ZlkR7u3Lg,12501
122
122
  anyscale/client/openapi_client/api/__init__.py,sha256=i8u7BI2xX1GrXTL3hN0pKpYIlnT-D_uDxH2ElOfYG1I,141
123
- anyscale/client/openapi_client/api/default_api.py,sha256=CgK0FQYGnIn4DbamQ3EsjHB47M1T7Txo3xBq7eHsLIQ,1788969
124
- anyscale/client/openapi_client/models/__init__.py,sha256=ETyxJbqQ5M0JOefgfixkLflycf3qOA2LTya9608N2Ro,49992
123
+ anyscale/client/openapi_client/api/default_api.py,sha256=G2KTYB--RpFi7XKVZup6EqFR6k4YD0tcpV0Npy9pl68,1797281
124
+ anyscale/client/openapi_client/models/__init__.py,sha256=3l404Qfuok2l1sAn1AmcLplcN4kHgSC9mpZIojFXmfg,50185
125
125
  anyscale/client/openapi_client/models/access_config.py,sha256=b2mA0qtuTA5PFbp6C61Jc_T2zUMaojM1v32IhZo0MfY,3648
126
126
  anyscale/client/openapi_client/models/actor_status.py,sha256=6xyX_aIqURj2raBdY9DmBxsdDACFrqqYvElGiM6YG2E,2813
127
127
  anyscale/client/openapi_client/models/admin_create_user.py,sha256=9DPr8D0lKgoEZ3Z2kGsAd8L7ocFCiP6woOGLVs8SRb8,7251
@@ -192,7 +192,7 @@ anyscale/client/openapi_client/models/cloud_data_bucket_file_type.py,sha256=3-qb
192
192
  anyscale/client/openapi_client/models/cloud_data_bucket_presigned_upload_info.py,sha256=oDuxszeCGe8_mMBx84yIE9uQypMRNDvUoN8CR84QaDQ,10068
193
193
  anyscale/client/openapi_client/models/cloud_data_bucket_presigned_upload_request.py,sha256=1a5lhtKDaXO46Mrdm6s5HMGFuoj5o_4kkEc7gFTadiI,5268
194
194
  anyscale/client/openapi_client/models/cloud_data_bucket_presigned_upload_scheme.py,sha256=5si79TIn1yIdm52omXlmNmyrfHgbCykKPmVXtOIlWXQ,2943
195
- anyscale/client/openapi_client/models/cloud_data_bucket_presigned_url_request.py,sha256=IyY3v4DWcX-w0D7aXLxj7kYOAhuMXXNYyZ76RHBaxvw,7407
195
+ anyscale/client/openapi_client/models/cloud_data_bucket_presigned_url_request.py,sha256=E2OwezVPluHQngJmM5MGxhExW58R6IefF0dO4T2di5Y,8708
196
196
  anyscale/client/openapi_client/models/cloud_data_bucket_presigned_url_response.py,sha256=zJA18_gxkpKOo1b4R7MakUBBM8DX-WLFuAVIfxRmP6U,10827
197
197
  anyscale/client/openapi_client/models/cloud_data_bucket_presigned_url_scheme.py,sha256=Vpnb4gAa6TBj0p5OfiIzLTWFGZ3Xd5s7jXdOJw06msM,2916
198
198
  anyscale/client/openapi_client/models/cloud_data_bucket_request_scope.py,sha256=IqPon7rEzfGPfSifMNzUZZDXv2NS-v9D0Zab57WFnYw,2901
@@ -210,7 +210,7 @@ anyscale/client/openapi_client/models/cloud_providers.py,sha256=EMPXMpHCwcm92tBf
210
210
  anyscale/client/openapi_client/models/cloud_region_and_zones.py,sha256=CPDxxNefYykUYBNbP0KvxzleiWhh0u0GdTCY2GhXxW4,3791
211
211
  anyscale/client/openapi_client/models/cloud_region_info.py,sha256=_Hc240FuAcwMFcl5crZGyRTXJd2zZ6T8wkX3wuVMOgw,4722
212
212
  anyscale/client/openapi_client/models/cloud_resource.py,sha256=NGKzcMZcYMDjzvoAFGVZWNl2NCH312kt0HMMNmioguY,29517
213
- anyscale/client/openapi_client/models/cloud_resource_gcp.py,sha256=ajZuwBKC1wTL4RqMzKLZnYdJpcU8Jcei8M4TE268Ad8,29776
213
+ anyscale/client/openapi_client/models/cloud_resource_gcp.py,sha256=ZDhRKJESczGGzdVCqUCUUhe2mUIFHdRgC6SucRpRr8Y,29606
214
214
  anyscale/client/openapi_client/models/cloud_response.py,sha256=qBy8shpAuBVc17jUbB9Ubvl5a8UZQopWQPzjjB4UcPE,3473
215
215
  anyscale/client/openapi_client/models/cloud_state.py,sha256=FurKK55RpZA1ZXRQnTMmYJiffPlr6qS-ZPvUsAH1d6g,2995
216
216
  anyscale/client/openapi_client/models/cloud_status.py,sha256=1AvIKdwH3wMPPLY0pi4qwZrRuS46qITx9lppPGc8HSs,2822
@@ -268,7 +268,7 @@ anyscale/client/openapi_client/models/create_byod_app_config_configuration_schem
268
268
  anyscale/client/openapi_client/models/create_byod_build.py,sha256=CcElaR_Lcdj98pl12ZVRchFSBXTj8GLNJBXJBxDkIO8,5105
269
269
  anyscale/client/openapi_client/models/create_cloud_collaborator.py,sha256=VLJCvE9r_TVRA_eduxr23dqdAsiPOllN2tRH3JZyzDg,4589
270
270
  anyscale/client/openapi_client/models/create_cloud_resource.py,sha256=EnaPZgnCZ4v-bhQICpiJIFsz98F_E7BuddC1IXloRTg,28285
271
- anyscale/client/openapi_client/models/create_cloud_resource_gcp.py,sha256=BykxhQ0TbHqkUY0DFd_bmprpR-b6hVrk_COddshHmcY,28472
271
+ anyscale/client/openapi_client/models/create_cloud_resource_gcp.py,sha256=-fpLY87FFlvMFo9bGNqQzqIsZKUKHalvoqSqfGXZxpI,28302
272
272
  anyscale/client/openapi_client/models/create_cluster_compute_config.py,sha256=zZXyfZKwx95GHS4Eavpd3HW3eRcebKzIiDaaLHkNQrU,20876
273
273
  anyscale/client/openapi_client/models/create_compute_template.py,sha256=NpjLX4CxR-7VCMqE2qGz-xI2rnWVpTIvpMvg-AlCs0M,6977
274
274
  anyscale/client/openapi_client/models/create_compute_template_config.py,sha256=CBaM5VgvQxqiv1Kgb2z4CootHUTbZnI6gS_Gc6aXsmY,20557
@@ -476,7 +476,9 @@ anyscale/client/openapi_client/models/machine_connection_state.py,sha256=dAY4g-I
476
476
  anyscale/client/openapi_client/models/machine_info.py,sha256=3L1vM8pOHOX4VZz-sIfawwrSJiQK-xTyESv50EX-TQU,15364
477
477
  anyscale/client/openapi_client/models/machine_launch_failure.py,sha256=9MMZ17hGYKR0xBfUKcVc2yhtVsBQFtxcNXSBmnnMU7Y,4601
478
478
  anyscale/client/openapi_client/models/machine_pool.py,sha256=0_tga2wp9DR-tGeGHg3AE1F1iiKn8N_ruWCr_aVtxX0,9135
479
+ anyscale/client/openapi_client/models/machine_pool_search_result.py,sha256=CB6qnDjS_WJ2kdWGQGwa4WJXq6nl3qrlGgh8yIWx2ww,9471
479
480
  anyscale/client/openapi_client/models/machine_state_info.py,sha256=vTwjL3buXuT7Qkub3bf4-OlAzUr7mj1Yh1ReUVk0XZk,11351
481
+ anyscale/client/openapi_client/models/machinepoolsearchresult_list_response.py,sha256=ipNZbR7ak2JZm5kkDLf-1w52b0packN8ZAmOzANzAec,4542
480
482
  anyscale/client/openapi_client/models/machinestateinfo_list_response.py,sha256=lelg5QcblkfQjRAHoTDGKRtcp8D0EReIFOTPP7I0MZo,4437
481
483
  anyscale/client/openapi_client/models/metric.py,sha256=q5GOXJFhGdpTj_Gg-V05Pc1E_VjjjKB8OZEV0Qof9G0,8921
482
484
  anyscale/client/openapi_client/models/metronome_customer_info_model.py,sha256=TNHzxUfadF8RDFkhNDSsasgXEEv0hjMoyrsFVKx50zM,4847
@@ -739,7 +741,7 @@ anyscale/commands/cloud_commands_util.py,sha256=d-6TSZ_syrGkZ3Fc1uRX6jG4dqYMebNk
739
741
  anyscale/commands/cluster_commands.py,sha256=taNcffyFfqJ1MgOQd0cz9kzRXWFTdp-wfLPM4l_2tBc,13487
740
742
  anyscale/commands/cluster_env_commands.py,sha256=KNWylyE8Ew1sDi7yu2Tp4RLcRu2_KJJJIzVGRyPflJo,3899
741
743
  anyscale/commands/command_examples.py,sha256=rcgaMTWLa0_-Yr7m041flguuDqsjRrdMtI9uW1Ei8og,27515
742
- anyscale/commands/compute_config_commands.py,sha256=vdyrtMcdP8eeK32p_Y6zF-qps6_SyzprhbjRZ9p18tQ,7828
744
+ anyscale/commands/compute_config_commands.py,sha256=f-kR7s3dYrFRdkSrKbIlgXt90ro7pllPCrDS04yVKTc,7828
743
745
  anyscale/commands/config_commands.py,sha256=p55uM6WrhfbFoRXC9hNAV-8c5ANghw7tBUYwaQDAtjE,7195
744
746
  anyscale/commands/exec_commands.py,sha256=cMOP1u6xQbl81h69Jug3y73XnNSwpbM6XC1X57SIp4c,465
745
747
  anyscale/commands/experimental_integrations_commands.py,sha256=_e1yESwRGu621Y5MUBqdC3S79YJUdEG1W67b_uQL8wY,2038
@@ -773,8 +775,8 @@ anyscale/commands/llm/group.py,sha256=L0N2NtyphUowb61Rad2TLeulTHwhFXBpcTH_IhkyrP
773
775
  anyscale/commands/llm/models_commands.py,sha256=xwkh56TyUsY_lTMzuerFmSkL-jmOor1jjeRCKkxZalo,3593
774
776
  anyscale/compute_config/__init__.py,sha256=p2Io4L9DOkoPskCBXLaN8V-D61VOAVuAdpsaXzWh8Ic,3161
775
777
  anyscale/compute_config/commands.py,sha256=jSU-BemFgr085b7r9-sA2_m63Oa2pN-6GeFJxaSWtKU,4266
776
- anyscale/compute_config/models.py,sha256=OpHbfeQ9Qpu6mccb2mSbd7T1d68IpaeRZ8ZOPnmlvFg,20701
777
- anyscale/compute_config/_private/compute_config_sdk.py,sha256=Rz6fWQbdcMfOGwRWJDmyLtptW4LHpddnQUkeVu_SWhw,17451
778
+ anyscale/compute_config/models.py,sha256=OzJK7UM64LDZCrvdpX57LAhAWQZ1KH6gKGOXX-uUopQ,21412
779
+ anyscale/compute_config/_private/compute_config_sdk.py,sha256=rG82k4J8yCyvC6Oomw6-KKEfMc1Zcysa2m1FdWxIK2A,17820
778
780
  anyscale/connect_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
779
781
  anyscale/connect_utils/prepare_cluster.py,sha256=uxBjxKuzcgbQdzGT0VWPpO_Iljeep8UcpQzc0oOvvVc,41792
780
782
  anyscale/connect_utils/project.py,sha256=LwcGqTQS_mZp6C79NMoMhmcWGR9j2C1Zi1S4PnPNzhQ,12239
@@ -782,7 +784,7 @@ anyscale/connect_utils/start_interactive_session.py,sha256=DbuIK2wuWofmbwJ9MLbsb
782
784
  anyscale/controllers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
783
785
  anyscale/controllers/auth_controller.py,sha256=hDY2sPvUP8pvh8PnlDYH5rCHjQes2v3b_KBVjMbrzeE,5127
784
786
  anyscale/controllers/base_controller.py,sha256=1QFJoScFUV7YTzpKarhwPOc1SvI-xqX3TZmwxKonW6I,1998
785
- anyscale/controllers/cloud_controller.py,sha256=BlF_sF-6xFHdWZtboz84m2R4FZWc-weHLJtNIQutiGk,177090
787
+ anyscale/controllers/cloud_controller.py,sha256=VkLSSuE4pgG-JXKgO2J_qynWrm6t8YQAIsPXZjVh0Wg,177280
786
788
  anyscale/controllers/cloud_functional_verification_controller.py,sha256=YsEfdHT9hPtxy_3a5Q62UlRXW0iFJ1lVS4IZ_NHoemE,33399
787
789
  anyscale/controllers/cluster_controller.py,sha256=Sb5wVjrjpycg5iqmENAVtZ4iy9Kr6kM97_ck-KH85LM,28745
788
790
  anyscale/controllers/cluster_env_controller.py,sha256=JalGzcmnFtMHefYL5U6ijMY3nX6W6BsMEfZSMtgBvtU,8048
@@ -1021,7 +1023,7 @@ anyscale/sdk/anyscale_client/models/worker_node_type.py,sha256=bI3sPVPA4t4axjdbj
1021
1023
  anyscale/service/__init__.py,sha256=8L7JynFGOfZ28WIDTUM-ipzbrChZ_ZqadJuIhApTvFM,7988
1022
1024
  anyscale/service/commands.py,sha256=cef52vv7KlUX_vOhQubUOM9t3rT4NbE_GNhllCFZWvg,14384
1023
1025
  anyscale/service/models.py,sha256=In9Nn6xYWSpKwjYaMe1zyRWs1gU-g9J-tNt74BQh0js,25985
1024
- anyscale/service/_private/service_sdk.py,sha256=7WiBusUKH942cO-W4aQOrJOegGsZyRgkJIQ5qA1B4Yw,34922
1026
+ anyscale/service/_private/service_sdk.py,sha256=FS9r3Ku-lf2yV6h9HrAiZr5gREWUV-7omdF9dWxoeVc,34979
1025
1027
  anyscale/service_account/__init__.py,sha256=jV1OFo_ZTxU3vuPztO1300TuoMz-Ocudm6_84ZtjPQ4,2764
1026
1028
  anyscale/service_account/commands.py,sha256=pkJjZwK8aRKFFVfE5swMTJrm9CTnPcNJETEFdMkPiic,3680
1027
1029
  anyscale/service_account/models.py,sha256=MhY-Fo5AZQ68brqtolTUMW3WQDrkNyL1udtNg70sNAU,2189
@@ -1088,10 +1090,10 @@ anyscale/workspace/__init__.py,sha256=Innbm5ZhCyADEVBiYSo_vbpKwUNcMzVSAfxIGKOYe6
1088
1090
  anyscale/workspace/commands.py,sha256=b1sqNseoPj-1VXznqQOLe0V_a663bOTvJX-TaOMJa1Y,14590
1089
1091
  anyscale/workspace/models.py,sha256=HBvM9ybOdJjqQeViQ30C36gdKT_AwH_JHPoL-DTkESo,9841
1090
1092
  anyscale/workspace/_private/workspace_sdk.py,sha256=2CMeYfJt0UtIFCocDn1ukw1iI5esKHdopLe6duEs-qE,27599
1091
- anyscale-0.26.38.dist-info/LICENSE,sha256=UOPu974Wzsna6frFv1mu4VrZgNdZT7lbcNPzo5ue3qs,3494
1092
- anyscale-0.26.38.dist-info/METADATA,sha256=cHOAPzcNRmrya8iTk1KT_befPMKZygrCVuVw_gv6l1Y,3269
1093
- anyscale-0.26.38.dist-info/NOTICE,sha256=gHqDhSnUYlRXX-mDOL5FtE7774oiKyV_HO80qM3r9Xo,196
1094
- anyscale-0.26.38.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
1095
- anyscale-0.26.38.dist-info/entry_points.txt,sha256=NqO18sCZn6zG6J0S38itjcN00s7aE3C3v3k5lMAfCLk,51
1096
- anyscale-0.26.38.dist-info/top_level.txt,sha256=g3NVNS8Oh0NZwbFFgeX696C5MZZkS5dqV2NqcsbDRJE,9
1097
- anyscale-0.26.38.dist-info/RECORD,,
1093
+ anyscale-0.26.40.dist-info/LICENSE,sha256=UOPu974Wzsna6frFv1mu4VrZgNdZT7lbcNPzo5ue3qs,3494
1094
+ anyscale-0.26.40.dist-info/METADATA,sha256=xzs9KlP1ffuJMXGKqB4JpGUmf2iPTFJWEmxLDgKDKKA,3269
1095
+ anyscale-0.26.40.dist-info/NOTICE,sha256=gHqDhSnUYlRXX-mDOL5FtE7774oiKyV_HO80qM3r9Xo,196
1096
+ anyscale-0.26.40.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
1097
+ anyscale-0.26.40.dist-info/entry_points.txt,sha256=NqO18sCZn6zG6J0S38itjcN00s7aE3C3v3k5lMAfCLk,51
1098
+ anyscale-0.26.40.dist-info/top_level.txt,sha256=g3NVNS8Oh0NZwbFFgeX696C5MZZkS5dqV2NqcsbDRJE,9
1099
+ anyscale-0.26.40.dist-info/RECORD,,