anyscale 0.26.46__py3-none-any.whl → 0.26.48__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 (73) hide show
  1. anyscale/__init__.py +0 -7
  2. anyscale/_private/anyscale_client/anyscale_client.py +1 -208
  3. anyscale/_private/anyscale_client/common.py +0 -55
  4. anyscale/_private/anyscale_client/fake_anyscale_client.py +19 -46
  5. anyscale/_private/docgen/__main__.py +24 -45
  6. anyscale/_private/docgen/generator.py +32 -16
  7. anyscale/_private/docgen/generator_legacy.py +58 -6
  8. anyscale/_private/docgen/models.md +3 -2
  9. anyscale/_private/workload/workload_config.py +16 -8
  10. anyscale/_private/workload/workload_sdk.py +22 -5
  11. anyscale/client/README.md +4 -1
  12. anyscale/client/openapi_client/__init__.py +2 -1
  13. anyscale/client/openapi_client/api/default_api.py +253 -4
  14. anyscale/client/openapi_client/models/__init__.py +2 -1
  15. anyscale/client/openapi_client/models/{alert_type.py → alert_issue_type.py} +8 -20
  16. anyscale/client/openapi_client/models/baseimagesenum.py +1 -2
  17. anyscale/client/openapi_client/models/cloud.py +31 -3
  18. anyscale/client/openapi_client/models/cloud_deployment.py +30 -3
  19. anyscale/client/openapi_client/models/cloud_with_cloud_resource.py +29 -1
  20. anyscale/client/openapi_client/models/cloud_with_cloud_resource_gcp.py +29 -1
  21. anyscale/client/openapi_client/models/dataset_metrics.py +6 -6
  22. anyscale/client/openapi_client/models/dataset_state.py +2 -1
  23. anyscale/client/openapi_client/models/describe_system_workload_response.py +32 -6
  24. anyscale/client/openapi_client/models/experimental_workspace.py +29 -1
  25. anyscale/client/openapi_client/models/experimental_workspaces_sort_field.py +2 -1
  26. anyscale/client/openapi_client/models/operator_metrics.py +8 -9
  27. anyscale/client/openapi_client/models/operator_status.py +102 -0
  28. anyscale/client/openapi_client/models/organization_usage_alert.py +20 -20
  29. anyscale/client/openapi_client/models/supportedbaseimagesenum.py +1 -2
  30. anyscale/cloud/models.py +330 -0
  31. anyscale/commands/cloud_commands.py +132 -43
  32. anyscale/commands/command_examples.py +54 -134
  33. anyscale/commands/compute_config_commands.py +7 -11
  34. anyscale/compute_config/__init__.py +2 -16
  35. anyscale/compute_config/_private/compute_config_sdk.py +27 -17
  36. anyscale/compute_config/commands.py +14 -44
  37. anyscale/compute_config/models.py +49 -26
  38. anyscale/controllers/cloud_controller.py +289 -171
  39. anyscale/controllers/cloud_file_storage_utils.py +204 -0
  40. anyscale/controllers/kubernetes_verifier.py +1567 -0
  41. anyscale/job/_private/job_sdk.py +17 -8
  42. anyscale/job/models.py +1 -1
  43. anyscale/scripts.py +0 -2
  44. anyscale/sdk/anyscale_client/models/baseimagesenum.py +1 -2
  45. anyscale/sdk/anyscale_client/models/cloud.py +31 -3
  46. anyscale/sdk/anyscale_client/models/supportedbaseimagesenum.py +1 -2
  47. anyscale/shared_anyscale_utils/utils/id_gen.py +1 -0
  48. anyscale/version.py +1 -1
  49. anyscale/workspace/models.py +14 -7
  50. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/METADATA +1 -1
  51. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/RECORD +56 -70
  52. anyscale/commands/llm/dataset_commands.py +0 -269
  53. anyscale/commands/llm/group.py +0 -15
  54. anyscale/commands/llm/models_commands.py +0 -123
  55. anyscale/controllers/llm/__init__.py +0 -0
  56. anyscale/controllers/llm/models_controller.py +0 -144
  57. anyscale/llm/__init__.py +0 -2
  58. anyscale/llm/dataset/__init__.py +0 -2
  59. anyscale/llm/dataset/_private/__init__.py +0 -0
  60. anyscale/llm/dataset/_private/docs.py +0 -63
  61. anyscale/llm/dataset/_private/models.py +0 -71
  62. anyscale/llm/dataset/_private/sdk.py +0 -147
  63. anyscale/llm/model/__init__.py +0 -2
  64. anyscale/llm/model/_private/models_sdk.py +0 -62
  65. anyscale/llm/model/commands.py +0 -93
  66. anyscale/llm/model/models.py +0 -171
  67. anyscale/llm/model/sdk.py +0 -62
  68. anyscale/llm/sdk.py +0 -27
  69. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/WHEEL +0 -0
  70. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/entry_points.txt +0 -0
  71. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/licenses/LICENSE +0 -0
  72. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/licenses/NOTICE +0 -0
  73. {anyscale-0.26.46.dist-info → anyscale-0.26.48.dist-info}/top_level.txt +0 -0
@@ -2,7 +2,12 @@ from dataclasses import dataclass, field
2
2
  from typing import Dict, List, Optional, Union
3
3
 
4
4
  from anyscale._private.models import ImageURI, ModelBase
5
- from anyscale.compute_config.models import ComputeConfig
5
+ from anyscale.compute_config.models import (
6
+ compute_config_type_from_dict,
7
+ ComputeConfig,
8
+ ComputeConfigType,
9
+ MultiDeploymentComputeConfig,
10
+ )
6
11
 
7
12
 
8
13
  @dataclass(frozen=True)
@@ -40,24 +45,27 @@ class WorkloadConfig(ModelBase):
40
45
  if containerfile is not None and not isinstance(containerfile, str):
41
46
  raise TypeError("'containerfile' must be a string.")
42
47
 
43
- compute_config: Union[ComputeConfig, Dict, str, None] = field(
48
+ compute_config: Union[ComputeConfigType, Dict, str, None] = field(
44
49
  default=None,
45
50
  metadata={
46
- "docstring": "The name of an existing registered compute config or an inlined ComputeConfig object."
51
+ "docstring": "The name of an existing registered compute config or an inlined ComputeConfig or MultiDeploymentComputeConfig object."
47
52
  },
48
53
  )
49
54
 
50
55
  def _validate_compute_config(
51
- self, compute_config: Union[ComputeConfig, Dict, str, None]
52
- ) -> Union[None, str, ComputeConfig]:
56
+ self, compute_config: Union[ComputeConfigType, Dict, str, None]
57
+ ) -> Union[None, str, ComputeConfigType]:
53
58
  if compute_config is None or isinstance(compute_config, str):
54
59
  return compute_config
55
60
 
56
61
  if isinstance(compute_config, dict):
57
- compute_config = ComputeConfig.from_dict(compute_config)
58
- if not isinstance(compute_config, ComputeConfig):
62
+ compute_config = compute_config_type_from_dict(compute_config)
63
+
64
+ if not isinstance(
65
+ compute_config, (ComputeConfig, MultiDeploymentComputeConfig)
66
+ ):
59
67
  raise TypeError(
60
- "'compute_config' must be a string, ComputeConfig, or corresponding dict"
68
+ "'compute_config' must be a string, ComputeConfig, MultiDeploymentComputeConfig, or corresponding dict"
61
69
  )
62
70
 
63
71
  return compute_config
@@ -10,7 +10,11 @@ from anyscale._private.anyscale_client import (
10
10
  from anyscale._private.sdk.base_sdk import BaseSDK, Timer
11
11
  from anyscale.cli_logger import BlockLogger
12
12
  from anyscale.compute_config._private.compute_config_sdk import PrivateComputeConfigSDK
13
- from anyscale.compute_config.models import ComputeConfig
13
+ from anyscale.compute_config.models import (
14
+ ComputeConfig,
15
+ ComputeConfigType,
16
+ MultiDeploymentComputeConfig,
17
+ )
14
18
  from anyscale.image._private.image_sdk import PrivateImageSDK
15
19
  from anyscale.utils.runtime_env import is_dir_remote_uri, parse_requirements_file
16
20
 
@@ -189,7 +193,9 @@ class WorkloadSDK(BaseSDK):
189
193
  return new_runtime_envs
190
194
 
191
195
  def _resolve_compute_config_id(
192
- self, compute_config: Union[str, ComputeConfig], cloud: Optional[str] = None,
196
+ self,
197
+ compute_config: Union[str, ComputeConfigType, None],
198
+ cloud: Optional[str] = None,
193
199
  ) -> str:
194
200
  """Resolve the passed compute config to its ID.
195
201
 
@@ -207,6 +213,15 @@ class WorkloadSDK(BaseSDK):
207
213
  raise ValueError(
208
214
  f"The compute config '{compute_config}' does not exist."
209
215
  )
216
+ elif compute_config is None:
217
+ cloud_id = self.client.get_cloud_id(cloud_name=cloud) # type: ignore
218
+ compute_config_id = self._client.get_default_compute_config(
219
+ cloud_id=cloud_id
220
+ ).id
221
+ if compute_config_id is None:
222
+ raise ValueError(
223
+ f"The default compute config for cloud '{cloud}' does not exist."
224
+ )
210
225
  else:
211
226
  _, compute_config_id = self._compute_config_sdk.create_compute_config(
212
227
  compute_config
@@ -217,7 +232,7 @@ class WorkloadSDK(BaseSDK):
217
232
  def resolve_compute_config_and_cloud_id(
218
233
  self,
219
234
  *,
220
- compute_config: Union[ComputeConfig, Dict, str, None],
235
+ compute_config: Union[ComputeConfigType, Dict, str, None],
221
236
  cloud: Union[None, str],
222
237
  ) -> Tuple[str, str]:
223
238
  """Resolve the passed compute config to its ID and corresponding cloud ID.
@@ -252,7 +267,9 @@ class WorkloadSDK(BaseSDK):
252
267
  else:
253
268
  # If we are creating a new compute config, ensure cloud is set accordingly
254
269
  if (
255
- isinstance(compute_config, ComputeConfig)
270
+ isinstance(
271
+ compute_config, (ComputeConfig, MultiDeploymentComputeConfig)
272
+ )
256
273
  and compute_config.cloud is None
257
274
  ):
258
275
  compute_config = replace(compute_config, cloud=cloud)
@@ -315,7 +332,7 @@ class WorkloadSDK(BaseSDK):
315
332
 
316
333
  def get_user_facing_compute_config(
317
334
  self, compute_config_id: str,
318
- ) -> Union[str, ComputeConfig]:
335
+ ) -> Union[str, ComputeConfigType]:
319
336
  """Get the compute config in a format to be displayed in a user-facing status.
320
337
 
321
338
  If the compute config refers to an anonymous compute config, its config
anyscale/client/README.md CHANGED
@@ -352,6 +352,7 @@ Class | Method | HTTP request | Description
352
352
  *DefaultApi* | [**try_claim_cloud_api_v2_aioa_cloud_waitlist_claim_cloud_post**](docs/DefaultApi.md#try_claim_cloud_api_v2_aioa_cloud_waitlist_claim_cloud_post) | **POST** /api/v2/aioa_cloud_waitlist/claim_cloud | Try Claim Cloud
353
353
  *DefaultApi* | [**try_login_api_v2_users_try_login_post**](docs/DefaultApi.md#try_login_api_v2_users_try_login_post) | **POST** /api/v2/users/try-login | Try Login
354
354
  *DefaultApi* | [**update_cloud_auto_add_user_api_v2_clouds_cloud_id_auto_add_user_put**](docs/DefaultApi.md#update_cloud_auto_add_user_api_v2_clouds_cloud_id_auto_add_user_put) | **PUT** /api/v2/clouds/{cloud_id}/auto_add_user | Update Cloud Auto Add User
355
+ *DefaultApi* | [**update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put**](docs/DefaultApi.md#update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put) | **PUT** /api/v2/clouds/{cloud_id}/update_deployment | Update Cloud Deployment
355
356
  *DefaultApi* | [**update_cloud_deployment_config_api_v2_clouds_cloud_id_deployment_cloud_deployment_id_config_put**](docs/DefaultApi.md#update_cloud_deployment_config_api_v2_clouds_cloud_id_deployment_cloud_deployment_id_config_put) | **PUT** /api/v2/clouds/{cloud_id}/deployment/{cloud_deployment_id}/config | Update Cloud Deployment Config
356
357
  *DefaultApi* | [**update_cloud_deployments_api_v2_clouds_cloud_id_deployments_put**](docs/DefaultApi.md#update_cloud_deployments_api_v2_clouds_cloud_id_deployments_put) | **PUT** /api/v2/clouds/{cloud_id}/deployments | Update Cloud Deployments
357
358
  *DefaultApi* | [**update_cloud_with_cloud_resource_api_v2_clouds_with_cloud_resource_gcp_router_cloud_id_put**](docs/DefaultApi.md#update_cloud_with_cloud_resource_api_v2_clouds_with_cloud_resource_gcp_router_cloud_id_put) | **PUT** /api/v2/clouds_with_cloud_resource_gcp_router/{cloud_id} | Update Cloud With Cloud Resource
@@ -366,6 +367,7 @@ Class | Method | HTTP request | Description
366
367
  *DefaultApi* | [**update_payment_info_api_v2_organization_billing_update_payment_info_post**](docs/DefaultApi.md#update_payment_info_api_v2_organization_billing_update_payment_info_post) | **POST** /api/v2/organization_billing/update_payment_info | Update Payment Info
367
368
  *DefaultApi* | [**update_resource_notification_api_v2_resource_notifications_resource_notification_id_put**](docs/DefaultApi.md#update_resource_notification_api_v2_resource_notifications_resource_notification_id_put) | **PUT** /api/v2/resource_notifications/{resource_notification_id} | Update Resource Notification
368
369
  *DefaultApi* | [**update_resource_quota_api_v2_resource_quotas_resource_quota_id_patch**](docs/DefaultApi.md#update_resource_quota_api_v2_resource_quotas_resource_quota_id_patch) | **PATCH** /api/v2/resource_quotas/{resource_quota_id} | Update Resource Quota
370
+ *DefaultApi* | [**update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put**](docs/DefaultApi.md#update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put) | **PUT** /api/v2/clouds/{cloud_id}/update_system_cluster_config | Update System Cluster Config
369
371
  *DefaultApi* | [**upload_session_command_logs_api_v2_session_commands_session_command_id_upload_logs_post**](docs/DefaultApi.md#upload_session_command_logs_api_v2_session_commands_session_command_id_upload_logs_post) | **POST** /api/v2/session_commands/{session_command_id}/upload_logs | Upload Session Command Logs
370
372
  *DefaultApi* | [**upsert_billing_version_api_v2_organization_billing_billing_versions_put**](docs/DefaultApi.md#upsert_billing_version_api_v2_organization_billing_billing_versions_put) | **PUT** /api/v2/organization_billing/billing_versions | Upsert Billing Version
371
373
  *DefaultApi* | [**upsert_support_request_for_user_organization_api_v2_support_requests_support_request_put**](docs/DefaultApi.md#upsert_support_request_for_user_organization_api_v2_support_requests_support_request_put) | **PUT** /api/v2/support_requests/support_request | Upsert Support Request For User Organization
@@ -394,7 +396,7 @@ Class | Method | HTTP request | Description
394
396
  - [AggregatedusageResponse](docs/AggregatedusageResponse.md)
395
397
  - [AioaCloudWaitlistRecord](docs/AioaCloudWaitlistRecord.md)
396
398
  - [AioacloudwaitlistrecordResponse](docs/AioacloudwaitlistrecordResponse.md)
397
- - [AlertType](docs/AlertType.md)
399
+ - [AlertIssueType](docs/AlertIssueType.md)
398
400
  - [AnyscaleAWSAccount](docs/AnyscaleAWSAccount.md)
399
401
  - [AnyscaleServiceAccount](docs/AnyscaleServiceAccount.md)
400
402
  - [AnyscaleawsaccountResponse](docs/AnyscaleawsaccountResponse.md)
@@ -783,6 +785,7 @@ Class | Method | HTTP request | Description
783
785
  - [OperatorBranch](docs/OperatorBranch.md)
784
786
  - [OperatorId](docs/OperatorId.md)
785
787
  - [OperatorMetrics](docs/OperatorMetrics.md)
788
+ - [OperatorStatus](docs/OperatorStatus.md)
786
789
  - [Organization](docs/Organization.md)
787
790
  - [OrganizationCollaborator](docs/OrganizationCollaborator.md)
788
791
  - [OrganizationConfiguration](docs/OrganizationConfiguration.md)
@@ -42,7 +42,7 @@ from openapi_client.models.aggregatedinstanceusagecsv_list_response import Aggre
42
42
  from openapi_client.models.aggregatedusage_response import AggregatedusageResponse
43
43
  from openapi_client.models.aioa_cloud_waitlist_record import AioaCloudWaitlistRecord
44
44
  from openapi_client.models.aioacloudwaitlistrecord_response import AioacloudwaitlistrecordResponse
45
- from openapi_client.models.alert_type import AlertType
45
+ from openapi_client.models.alert_issue_type import AlertIssueType
46
46
  from openapi_client.models.anyscale_aws_account import AnyscaleAWSAccount
47
47
  from openapi_client.models.anyscale_service_account import AnyscaleServiceAccount
48
48
  from openapi_client.models.anyscaleawsaccount_response import AnyscaleawsaccountResponse
@@ -431,6 +431,7 @@ from openapi_client.models.operation_result import OperationResult
431
431
  from openapi_client.models.operator_branch import OperatorBranch
432
432
  from openapi_client.models.operator_id import OperatorId
433
433
  from openapi_client.models.operator_metrics import OperatorMetrics
434
+ from openapi_client.models.operator_status import OperatorStatus
434
435
  from openapi_client.models.organization import Organization
435
436
  from openapi_client.models.organization_collaborator import OrganizationCollaborator
436
437
  from openapi_client.models.organization_configuration import OrganizationConfiguration
@@ -16822,8 +16822,8 @@ class DefaultApi(object):
16822
16822
  :param str session_name: (required)
16823
16823
  :param str dataset_id: (required)
16824
16824
  :param str operator_id: (required)
16825
- :param int dataset_start_time: (required)
16826
- :param int dataset_end_time: (required)
16825
+ :param float dataset_start_time: (required)
16826
+ :param float dataset_end_time: (required)
16827
16827
  :param _preload_content: if False, the urllib3.HTTPResponse object will
16828
16828
  be returned without reading/decoding response
16829
16829
  data. Default is True.
@@ -16851,8 +16851,8 @@ class DefaultApi(object):
16851
16851
  :param str session_name: (required)
16852
16852
  :param str dataset_id: (required)
16853
16853
  :param str operator_id: (required)
16854
- :param int dataset_start_time: (required)
16855
- :param int dataset_end_time: (required)
16854
+ :param float dataset_start_time: (required)
16855
+ :param float dataset_end_time: (required)
16856
16856
  :param _return_http_data_only: response data without head status code
16857
16857
  and headers
16858
16858
  :param _preload_content: if False, the urllib3.HTTPResponse object will
@@ -28061,6 +28061,7 @@ class DefaultApi(object):
28061
28061
  :param int end_time: The end time for the query as a nanosecond Unix epoch. If not set, the query will use the time now.
28062
28062
  :param str positive_search_filter: Positive search terms to filter in the logs. Defaults to no filter. This can be a regex and the search is case insensitive.
28063
28063
  :param str negative_search_filter: Negative search terms to filter out the logs. Defaults to no filter. This can be a regex and the search is case insensitive.
28064
+ :param str search_query: Advanced search query with syntax supporting NOT, AND, OR operators. Cannot be used together with positive_search_filter or negative_search_filter.
28064
28065
  :param str source: The source file (worker, raylet, dashboard, controller, proxy, replica, AUTOSCALER..) to filter the logs. Default to no filter.
28065
28066
  :param str filter_tags: The tags to filter the logs. Default to no filter. The format of this field is expected to be in json. The filer will apply to match each key of the object and do exact match on the value.
28066
28067
  :param bool reverse_sort: Whether the result should be sorted by descending timestamp. Also determines the query direction. When false, it will start to query from the start_time and return results until it reaches the page_size or the end_time. When true, it will start to query from the end_time and return results until it reaches the page_size or the start_time. Default to false.
@@ -28097,6 +28098,7 @@ class DefaultApi(object):
28097
28098
  :param int end_time: The end time for the query as a nanosecond Unix epoch. If not set, the query will use the time now.
28098
28099
  :param str positive_search_filter: Positive search terms to filter in the logs. Defaults to no filter. This can be a regex and the search is case insensitive.
28099
28100
  :param str negative_search_filter: Negative search terms to filter out the logs. Defaults to no filter. This can be a regex and the search is case insensitive.
28101
+ :param str search_query: Advanced search query with syntax supporting NOT, AND, OR operators. Cannot be used together with positive_search_filter or negative_search_filter.
28100
28102
  :param str source: The source file (worker, raylet, dashboard, controller, proxy, replica, AUTOSCALER..) to filter the logs. Default to no filter.
28101
28103
  :param str filter_tags: The tags to filter the logs. Default to no filter. The format of this field is expected to be in json. The filer will apply to match each key of the object and do exact match on the value.
28102
28104
  :param bool reverse_sort: Whether the result should be sorted by descending timestamp. Also determines the query direction. When false, it will start to query from the start_time and return results until it reaches the page_size or the end_time. When true, it will start to query from the end_time and return results until it reaches the page_size or the start_time. Default to false.
@@ -28126,6 +28128,7 @@ class DefaultApi(object):
28126
28128
  'end_time',
28127
28129
  'positive_search_filter',
28128
28130
  'negative_search_filter',
28131
+ 'search_query',
28129
28132
  'source',
28130
28133
  'filter_tags',
28131
28134
  'reverse_sort'
@@ -28173,6 +28176,8 @@ class DefaultApi(object):
28173
28176
  query_params.append(('positive_search_filter', local_var_params['positive_search_filter'])) # noqa: E501
28174
28177
  if 'negative_search_filter' in local_var_params and local_var_params['negative_search_filter'] is not None: # noqa: E501
28175
28178
  query_params.append(('negative_search_filter', local_var_params['negative_search_filter'])) # noqa: E501
28179
+ if 'search_query' in local_var_params and local_var_params['search_query'] is not None: # noqa: E501
28180
+ query_params.append(('search_query', local_var_params['search_query'])) # noqa: E501
28176
28181
  if 'source' in local_var_params and local_var_params['source'] is not None: # noqa: E501
28177
28182
  query_params.append(('source', local_var_params['source'])) # noqa: E501
28178
28183
  if 'filter_tags' in local_var_params and local_var_params['filter_tags'] is not None: # noqa: E501
@@ -33423,6 +33428,131 @@ class DefaultApi(object):
33423
33428
  _request_timeout=local_var_params.get('_request_timeout'),
33424
33429
  collection_formats=collection_formats)
33425
33430
 
33431
+ def update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put(self, cloud_id, cloud_deployment, **kwargs): # noqa: E501
33432
+ """Update Cloud Deployment # noqa: E501
33433
+
33434
+ This method makes a synchronous HTTP request by default. To make an
33435
+ asynchronous HTTP request, please pass async_req=True
33436
+ >>> thread = api.update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put(cloud_id, cloud_deployment, async_req=True)
33437
+ >>> result = thread.get()
33438
+
33439
+ :param async_req bool: execute request asynchronously
33440
+ :param str cloud_id: (required)
33441
+ :param CloudDeployment cloud_deployment: (required)
33442
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
33443
+ be returned without reading/decoding response
33444
+ data. Default is True.
33445
+ :param _request_timeout: timeout setting for this request. If one
33446
+ number provided, it will be total request
33447
+ timeout. It can also be a pair (tuple) of
33448
+ (connection, read) timeouts.
33449
+ :return: object
33450
+ If the method is called asynchronously,
33451
+ returns the request thread.
33452
+ """
33453
+ kwargs['_return_http_data_only'] = True
33454
+ return self.update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put_with_http_info(cloud_id, cloud_deployment, **kwargs) # noqa: E501
33455
+
33456
+ def update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put_with_http_info(self, cloud_id, cloud_deployment, **kwargs): # noqa: E501
33457
+ """Update Cloud Deployment # noqa: E501
33458
+
33459
+ This method makes a synchronous HTTP request by default. To make an
33460
+ asynchronous HTTP request, please pass async_req=True
33461
+ >>> thread = api.update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put_with_http_info(cloud_id, cloud_deployment, async_req=True)
33462
+ >>> result = thread.get()
33463
+
33464
+ :param async_req bool: execute request asynchronously
33465
+ :param str cloud_id: (required)
33466
+ :param CloudDeployment cloud_deployment: (required)
33467
+ :param _return_http_data_only: response data without head status code
33468
+ and headers
33469
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
33470
+ be returned without reading/decoding response
33471
+ data. Default is True.
33472
+ :param _request_timeout: timeout setting for this request. If one
33473
+ number provided, it will be total request
33474
+ timeout. It can also be a pair (tuple) of
33475
+ (connection, read) timeouts.
33476
+ :return: tuple(object, status_code(int), headers(HTTPHeaderDict))
33477
+ If the method is called asynchronously,
33478
+ returns the request thread.
33479
+ """
33480
+
33481
+ local_var_params = locals()
33482
+
33483
+ all_params = [
33484
+ 'cloud_id',
33485
+ 'cloud_deployment'
33486
+ ]
33487
+ all_params.extend(
33488
+ [
33489
+ 'async_req',
33490
+ '_return_http_data_only',
33491
+ '_preload_content',
33492
+ '_request_timeout'
33493
+ ]
33494
+ )
33495
+
33496
+ for key, val in six.iteritems(local_var_params['kwargs']):
33497
+ if key not in all_params:
33498
+ raise ApiTypeError(
33499
+ "Got an unexpected keyword argument '%s'"
33500
+ " to method update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put" % key
33501
+ )
33502
+ local_var_params[key] = val
33503
+ del local_var_params['kwargs']
33504
+ # verify the required parameter 'cloud_id' is set
33505
+ if self.api_client.client_side_validation and ('cloud_id' not in local_var_params or # noqa: E501
33506
+ local_var_params['cloud_id'] is None): # noqa: E501
33507
+ raise ApiValueError("Missing the required parameter `cloud_id` when calling `update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put`") # noqa: E501
33508
+ # verify the required parameter 'cloud_deployment' is set
33509
+ if self.api_client.client_side_validation and ('cloud_deployment' not in local_var_params or # noqa: E501
33510
+ local_var_params['cloud_deployment'] is None): # noqa: E501
33511
+ raise ApiValueError("Missing the required parameter `cloud_deployment` when calling `update_cloud_deployment_api_v2_clouds_cloud_id_update_deployment_put`") # noqa: E501
33512
+
33513
+ collection_formats = {}
33514
+
33515
+ path_params = {}
33516
+ if 'cloud_id' in local_var_params:
33517
+ path_params['cloud_id'] = local_var_params['cloud_id'] # noqa: E501
33518
+
33519
+ query_params = []
33520
+
33521
+ header_params = {}
33522
+
33523
+ form_params = []
33524
+ local_var_files = {}
33525
+
33526
+ body_params = None
33527
+ if 'cloud_deployment' in local_var_params:
33528
+ body_params = local_var_params['cloud_deployment']
33529
+ # HTTP header `Accept`
33530
+ header_params['Accept'] = self.api_client.select_header_accept(
33531
+ ['application/json']) # noqa: E501
33532
+
33533
+ # HTTP header `Content-Type`
33534
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
33535
+ ['application/json']) # noqa: E501
33536
+
33537
+ # Authentication setting
33538
+ auth_settings = [] # noqa: E501
33539
+
33540
+ return self.api_client.call_api(
33541
+ '/api/v2/clouds/{cloud_id}/update_deployment', 'PUT',
33542
+ path_params,
33543
+ query_params,
33544
+ header_params,
33545
+ body=body_params,
33546
+ post_params=form_params,
33547
+ files=local_var_files,
33548
+ response_type='object', # noqa: E501
33549
+ auth_settings=auth_settings,
33550
+ async_req=local_var_params.get('async_req'),
33551
+ _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
33552
+ _preload_content=local_var_params.get('_preload_content', True),
33553
+ _request_timeout=local_var_params.get('_request_timeout'),
33554
+ collection_formats=collection_formats)
33555
+
33426
33556
  def update_cloud_deployment_config_api_v2_clouds_cloud_id_deployment_cloud_deployment_id_config_put(self, cloud_id, cloud_deployment_id, cloud_deployment_config, **kwargs): # noqa: E501
33427
33557
  """Update Cloud Deployment Config # noqa: E501
33428
33558
 
@@ -35140,6 +35270,125 @@ class DefaultApi(object):
35140
35270
  _request_timeout=local_var_params.get('_request_timeout'),
35141
35271
  collection_formats=collection_formats)
35142
35272
 
35273
+ def update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put(self, cloud_id, **kwargs): # noqa: E501
35274
+ """Update System Cluster Config # noqa: E501
35275
+
35276
+ Update system cluster configuration for a cloud. # noqa: E501
35277
+ This method makes a synchronous HTTP request by default. To make an
35278
+ asynchronous HTTP request, please pass async_req=True
35279
+ >>> thread = api.update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put(cloud_id, async_req=True)
35280
+ >>> result = thread.get()
35281
+
35282
+ :param async_req bool: execute request asynchronously
35283
+ :param str cloud_id: (required)
35284
+ :param bool is_enabled:
35285
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
35286
+ be returned without reading/decoding response
35287
+ data. Default is True.
35288
+ :param _request_timeout: timeout setting for this request. If one
35289
+ number provided, it will be total request
35290
+ timeout. It can also be a pair (tuple) of
35291
+ (connection, read) timeouts.
35292
+ :return: object
35293
+ If the method is called asynchronously,
35294
+ returns the request thread.
35295
+ """
35296
+ kwargs['_return_http_data_only'] = True
35297
+ return self.update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put_with_http_info(cloud_id, **kwargs) # noqa: E501
35298
+
35299
+ def update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put_with_http_info(self, cloud_id, **kwargs): # noqa: E501
35300
+ """Update System Cluster Config # noqa: E501
35301
+
35302
+ Update system cluster configuration for a cloud. # noqa: E501
35303
+ This method makes a synchronous HTTP request by default. To make an
35304
+ asynchronous HTTP request, please pass async_req=True
35305
+ >>> thread = api.update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put_with_http_info(cloud_id, async_req=True)
35306
+ >>> result = thread.get()
35307
+
35308
+ :param async_req bool: execute request asynchronously
35309
+ :param str cloud_id: (required)
35310
+ :param bool is_enabled:
35311
+ :param _return_http_data_only: response data without head status code
35312
+ and headers
35313
+ :param _preload_content: if False, the urllib3.HTTPResponse object will
35314
+ be returned without reading/decoding response
35315
+ data. Default is True.
35316
+ :param _request_timeout: timeout setting for this request. If one
35317
+ number provided, it will be total request
35318
+ timeout. It can also be a pair (tuple) of
35319
+ (connection, read) timeouts.
35320
+ :return: tuple(object, status_code(int), headers(HTTPHeaderDict))
35321
+ If the method is called asynchronously,
35322
+ returns the request thread.
35323
+ """
35324
+
35325
+ local_var_params = locals()
35326
+
35327
+ all_params = [
35328
+ 'cloud_id',
35329
+ 'is_enabled'
35330
+ ]
35331
+ all_params.extend(
35332
+ [
35333
+ 'async_req',
35334
+ '_return_http_data_only',
35335
+ '_preload_content',
35336
+ '_request_timeout'
35337
+ ]
35338
+ )
35339
+
35340
+ for key, val in six.iteritems(local_var_params['kwargs']):
35341
+ if key not in all_params:
35342
+ raise ApiTypeError(
35343
+ "Got an unexpected keyword argument '%s'"
35344
+ " to method update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put" % key
35345
+ )
35346
+ local_var_params[key] = val
35347
+ del local_var_params['kwargs']
35348
+ # verify the required parameter 'cloud_id' is set
35349
+ if self.api_client.client_side_validation and ('cloud_id' not in local_var_params or # noqa: E501
35350
+ local_var_params['cloud_id'] is None): # noqa: E501
35351
+ raise ApiValueError("Missing the required parameter `cloud_id` when calling `update_system_cluster_config_api_v2_clouds_cloud_id_update_system_cluster_config_put`") # noqa: E501
35352
+
35353
+ collection_formats = {}
35354
+
35355
+ path_params = {}
35356
+ if 'cloud_id' in local_var_params:
35357
+ path_params['cloud_id'] = local_var_params['cloud_id'] # noqa: E501
35358
+
35359
+ query_params = []
35360
+ if 'is_enabled' in local_var_params and local_var_params['is_enabled'] is not None: # noqa: E501
35361
+ query_params.append(('is_enabled', local_var_params['is_enabled'])) # noqa: E501
35362
+
35363
+ header_params = {}
35364
+
35365
+ form_params = []
35366
+ local_var_files = {}
35367
+
35368
+ body_params = None
35369
+ # HTTP header `Accept`
35370
+ header_params['Accept'] = self.api_client.select_header_accept(
35371
+ ['application/json']) # noqa: E501
35372
+
35373
+ # Authentication setting
35374
+ auth_settings = [] # noqa: E501
35375
+
35376
+ return self.api_client.call_api(
35377
+ '/api/v2/clouds/{cloud_id}/update_system_cluster_config', 'PUT',
35378
+ path_params,
35379
+ query_params,
35380
+ header_params,
35381
+ body=body_params,
35382
+ post_params=form_params,
35383
+ files=local_var_files,
35384
+ response_type='object', # noqa: E501
35385
+ auth_settings=auth_settings,
35386
+ async_req=local_var_params.get('async_req'),
35387
+ _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
35388
+ _preload_content=local_var_params.get('_preload_content', True),
35389
+ _request_timeout=local_var_params.get('_request_timeout'),
35390
+ collection_formats=collection_formats)
35391
+
35143
35392
  def upload_session_command_logs_api_v2_session_commands_session_command_id_upload_logs_post(self, session_command_id, **kwargs): # noqa: E501
35144
35393
  """Upload Session Command Logs # noqa: E501
35145
35394
 
@@ -28,7 +28,7 @@ from openapi_client.models.aggregatedinstanceusagecsv_list_response import Aggre
28
28
  from openapi_client.models.aggregatedusage_response import AggregatedusageResponse
29
29
  from openapi_client.models.aioa_cloud_waitlist_record import AioaCloudWaitlistRecord
30
30
  from openapi_client.models.aioacloudwaitlistrecord_response import AioacloudwaitlistrecordResponse
31
- from openapi_client.models.alert_type import AlertType
31
+ from openapi_client.models.alert_issue_type import AlertIssueType
32
32
  from openapi_client.models.anyscale_aws_account import AnyscaleAWSAccount
33
33
  from openapi_client.models.anyscale_service_account import AnyscaleServiceAccount
34
34
  from openapi_client.models.anyscaleawsaccount_response import AnyscaleawsaccountResponse
@@ -417,6 +417,7 @@ from openapi_client.models.operation_result import OperationResult
417
417
  from openapi_client.models.operator_branch import OperatorBranch
418
418
  from openapi_client.models.operator_id import OperatorId
419
419
  from openapi_client.models.operator_metrics import OperatorMetrics
420
+ from openapi_client.models.operator_status import OperatorStatus
420
421
  from openapi_client.models.organization import Organization
421
422
  from openapi_client.models.organization_collaborator import OrganizationCollaborator
422
423
  from openapi_client.models.organization_configuration import OrganizationConfiguration
@@ -18,7 +18,7 @@ import six
18
18
  from openapi_client.configuration import Configuration
19
19
 
20
20
 
21
- class AlertType(object):
21
+ class AlertIssueType(object):
22
22
  """NOTE: This class is auto generated by OpenAPI Generator.
23
23
  Ref: https://openapi-generator.tech
24
24
 
@@ -28,22 +28,10 @@ class AlertType(object):
28
28
  """
29
29
  allowed enum values
30
30
  """
31
- LOW_CREDIT_BALANCE_REACHED = "low_credit_balance_reached"
32
- SPEND_THRESHOLD_REACHED = "spend_threshold_reached"
33
- LOW_REMAINING_DAYS_IN_PLAN_REACHED = "low_remaining_days_in_plan_reached"
34
- LOW_REMAINING_CREDIT_PERCENTAGE_REACHED = "low_remaining_credit_percentage_reached"
35
- USAGE_THRESHOLD_REACHED = "usage_threshold_reached"
36
- LOW_REMAINING_COMMIT_BALANCE_REACHED = "low_remaining_commit_balance_reached"
37
- LOW_REMAINING_COMMIT_PERCENTAGE_REACHED = "low_remaining_commit_percentage_reached"
38
- LOW_REMAINING_DAYS_FOR_COMMIT_SEGMENT_REACHED = "low_remaining_days_for_commit_segment_reached"
39
- LOW_REMAINING_CONTRACT_CREDIT_BALANCE_REACHED = "low_remaining_contract_credit_balance_reached"
40
- LOW_REMAINING_CONTRACT_CREDIT_PERCENTAGE_REACHED = "low_remaining_contract_credit_percentage_reached"
41
- LOW_REMAINING_DAYS_FOR_CONTRACT_CREDIT_SEGMENT_REACHED = "low_remaining_days_for_contract_credit_segment_reached"
42
- LOW_REMAINING_CONTRACT_CREDIT_AND_COMMIT_BALANCE_REACHED = "low_remaining_contract_credit_and_commit_balance_reached"
43
- MONTHLY_INVOICE_TOTAL_SPEND_THRESHOLD_REACHED = "monthly_invoice_total_spend_threshold_reached"
44
- INVOICE_TOTAL_REACHED = "invoice_total_reached"
45
-
46
- allowable_values = [LOW_CREDIT_BALANCE_REACHED, SPEND_THRESHOLD_REACHED, LOW_REMAINING_DAYS_IN_PLAN_REACHED, LOW_REMAINING_CREDIT_PERCENTAGE_REACHED, USAGE_THRESHOLD_REACHED, LOW_REMAINING_COMMIT_BALANCE_REACHED, LOW_REMAINING_COMMIT_PERCENTAGE_REACHED, LOW_REMAINING_DAYS_FOR_COMMIT_SEGMENT_REACHED, LOW_REMAINING_CONTRACT_CREDIT_BALANCE_REACHED, LOW_REMAINING_CONTRACT_CREDIT_PERCENTAGE_REACHED, LOW_REMAINING_DAYS_FOR_CONTRACT_CREDIT_SEGMENT_REACHED, LOW_REMAINING_CONTRACT_CREDIT_AND_COMMIT_BALANCE_REACHED, MONTHLY_INVOICE_TOTAL_SPEND_THRESHOLD_REACHED, INVOICE_TOTAL_REACHED] # noqa: E501
31
+ SPEND = "spend"
32
+ CREDIT = "credit"
33
+
34
+ allowable_values = [SPEND, CREDIT] # noqa: E501
47
35
 
48
36
  """
49
37
  Attributes:
@@ -59,7 +47,7 @@ class AlertType(object):
59
47
  }
60
48
 
61
49
  def __init__(self, local_vars_configuration=None): # noqa: E501
62
- """AlertType - a model defined in OpenAPI""" # noqa: E501
50
+ """AlertIssueType - a model defined in OpenAPI""" # noqa: E501
63
51
  if local_vars_configuration is None:
64
52
  local_vars_configuration = Configuration()
65
53
  self.local_vars_configuration = local_vars_configuration
@@ -99,14 +87,14 @@ class AlertType(object):
99
87
 
100
88
  def __eq__(self, other):
101
89
  """Returns true if both objects are equal"""
102
- if not isinstance(other, AlertType):
90
+ if not isinstance(other, AlertIssueType):
103
91
  return False
104
92
 
105
93
  return self.to_dict() == other.to_dict()
106
94
 
107
95
  def __ne__(self, other):
108
96
  """Returns true if both objects are not equal"""
109
- if not isinstance(other, AlertType):
97
+ if not isinstance(other, AlertIssueType):
110
98
  return True
111
99
 
112
100
  return self.to_dict() != other.to_dict()