lightning-sdk 0.2.23__py3-none-any.whl → 0.2.24rc1__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 (83) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/base_studio_api.py +9 -2
  3. lightning_sdk/api/deployment_api.py +9 -9
  4. lightning_sdk/api/llm_api.py +23 -13
  5. lightning_sdk/api/pipeline_api.py +31 -11
  6. lightning_sdk/api/studio_api.py +4 -0
  7. lightning_sdk/base_studio.py +22 -6
  8. lightning_sdk/deployment/deployment.py +17 -7
  9. lightning_sdk/lightning_cloud/openapi/__init__.py +18 -0
  10. lightning_sdk/lightning_cloud/openapi/api/__init__.py +2 -0
  11. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +114 -1
  12. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +129 -0
  13. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +9 -1
  14. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +13 -1
  15. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +105 -0
  16. lightning_sdk/lightning_cloud/openapi/api/pipelines_service_api.py +4 -4
  17. lightning_sdk/lightning_cloud/openapi/api/user_service_api.py +105 -0
  18. lightning_sdk/lightning_cloud/openapi/api/volume_service_api.py +258 -0
  19. lightning_sdk/lightning_cloud/openapi/models/__init__.py +16 -0
  20. lightning_sdk/lightning_cloud/openapi/models/agents_id_body.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +79 -1
  22. lightning_sdk/lightning_cloud/openapi/models/credits_autoreplenish_body.py +175 -0
  23. lightning_sdk/lightning_cloud/openapi/models/credits_autoreplenish_body1.py +175 -0
  24. lightning_sdk/lightning_cloud/openapi/models/externalv1_user_status.py +53 -1
  25. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +27 -1
  26. lightning_sdk/lightning_cloud/openapi/models/pipelines_id_body1.py +123 -0
  27. lightning_sdk/lightning_cloud/openapi/models/project_id_agents_body.py +27 -1
  28. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  29. lightning_sdk/lightning_cloud/openapi/models/project_id_schedules_body.py +27 -1
  30. lightning_sdk/lightning_cloud/openapi/models/schedules_id_body.py +27 -1
  31. lightning_sdk/lightning_cloud/openapi/models/update.py +29 -3
  32. lightning_sdk/lightning_cloud/openapi/models/v1_assistant.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +1 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +1 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +27 -1
  36. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_config.py +29 -3
  37. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +29 -3
  38. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +104 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_cloudy_expert.py +279 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +79 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +53 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_status.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +29 -3
  46. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +29 -3
  47. lightning_sdk/lightning_cloud/openapi/models/v1_create_organization_request.py +79 -1
  48. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection_tier.py +103 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_status.py +47 -21
  50. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/v1_filestore_data_connection.py +29 -3
  52. lightning_sdk/lightning_cloud/openapi/models/v1_get_job_stats_response.py +53 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_get_volume_response.py +123 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_instance_overprovisioning_spec.py +1 -27
  56. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +149 -0
  57. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1_status.py +149 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloudy_experts_response.py +123 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_response.py +27 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  62. lightning_sdk/lightning_cloud/openapi/models/v1_schedule.py +27 -1
  63. lightning_sdk/lightning_cloud/openapi/models/v1_schedule_action_type.py +104 -0
  64. lightning_sdk/lightning_cloud/openapi/models/v1_schedule_resource_type.py +1 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_token_usage.py +175 -0
  66. lightning_sdk/lightning_cloud/openapi/models/v1_update_organization_credits_auto_replenish_response.py +97 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_credits_auto_replenish_response.py +97 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_update_volume_response.py +123 -0
  69. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +317 -31
  70. lightning_sdk/lightning_cloud/openapi/models/volumes_id_body.py +123 -0
  71. lightning_sdk/llm/llm.py +118 -115
  72. lightning_sdk/llm/public_assistants.json +8 -0
  73. lightning_sdk/pipeline/pipeline.py +17 -2
  74. lightning_sdk/pipeline/printer.py +11 -10
  75. lightning_sdk/pipeline/steps.py +4 -1
  76. lightning_sdk/pipeline/utils.py +29 -4
  77. lightning_sdk/studio.py +3 -0
  78. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/METADATA +1 -1
  79. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/RECORD +83 -64
  80. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/LICENSE +0 -0
  81. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/WHEEL +0 -0
  82. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/entry_points.txt +0 -0
  83. {lightning_sdk-0.2.23.dist-info → lightning_sdk-0.2.24rc1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,104 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1CloudSpaceSpecializedView(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+
37
+ """
38
+ allowed enum values
39
+ """
40
+ UNSPECIFIED = "CLOUD_SPACE_SPECIALIZED_VIEW_UNSPECIFIED"
41
+ DEFAULT = "CLOUD_SPACE_SPECIALIZED_VIEW_DEFAULT"
42
+ STREAMLIT = "CLOUD_SPACE_SPECIALIZED_VIEW_STREAMLIT"
43
+ """
44
+ Attributes:
45
+ swagger_types (dict): The key is attribute name
46
+ and the value is attribute type.
47
+ attribute_map (dict): The key is attribute name
48
+ and the value is json key in definition.
49
+ """
50
+ swagger_types = {
51
+ }
52
+
53
+ attribute_map = {
54
+ }
55
+
56
+ def __init__(self): # noqa: E501
57
+ """V1CloudSpaceSpecializedView - a model defined in Swagger""" # noqa: E501
58
+ self.discriminator = None
59
+
60
+ def to_dict(self) -> dict:
61
+ """Returns the model properties as a dict"""
62
+ result = {}
63
+
64
+ for attr, _ in six.iteritems(self.swagger_types):
65
+ value = getattr(self, attr)
66
+ if isinstance(value, list):
67
+ result[attr] = list(map(
68
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
69
+ value
70
+ ))
71
+ elif hasattr(value, "to_dict"):
72
+ result[attr] = value.to_dict()
73
+ elif isinstance(value, dict):
74
+ result[attr] = dict(map(
75
+ lambda item: (item[0], item[1].to_dict())
76
+ if hasattr(item[1], "to_dict") else item,
77
+ value.items()
78
+ ))
79
+ else:
80
+ result[attr] = value
81
+ if issubclass(V1CloudSpaceSpecializedView, dict):
82
+ for key, value in self.items():
83
+ result[key] = value
84
+
85
+ return result
86
+
87
+ def to_str(self) -> str:
88
+ """Returns the string representation of the model"""
89
+ return pprint.pformat(self.to_dict())
90
+
91
+ def __repr__(self) -> str:
92
+ """For `print` and `pprint`"""
93
+ return self.to_str()
94
+
95
+ def __eq__(self, other: 'V1CloudSpaceSpecializedView') -> bool:
96
+ """Returns true if both objects are equal"""
97
+ if not isinstance(other, V1CloudSpaceSpecializedView):
98
+ return False
99
+
100
+ return self.__dict__ == other.__dict__
101
+
102
+ def __ne__(self, other: 'V1CloudSpaceSpecializedView') -> bool:
103
+ """Returns true if both objects are not equal"""
104
+ return not self == other
@@ -0,0 +1,279 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1CloudyExpert(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'avatar_url': 'str',
45
+ 'category': 'str',
46
+ 'description': 'str',
47
+ 'id': 'str',
48
+ 'name': 'str',
49
+ 'personality': 'str',
50
+ 'sources': 'list[str]'
51
+ }
52
+
53
+ attribute_map = {
54
+ 'avatar_url': 'avatarUrl',
55
+ 'category': 'category',
56
+ 'description': 'description',
57
+ 'id': 'id',
58
+ 'name': 'name',
59
+ 'personality': 'personality',
60
+ 'sources': 'sources'
61
+ }
62
+
63
+ def __init__(self, avatar_url: 'str' =None, category: 'str' =None, description: 'str' =None, id: 'str' =None, name: 'str' =None, personality: 'str' =None, sources: 'list[str]' =None): # noqa: E501
64
+ """V1CloudyExpert - a model defined in Swagger""" # noqa: E501
65
+ self._avatar_url = None
66
+ self._category = None
67
+ self._description = None
68
+ self._id = None
69
+ self._name = None
70
+ self._personality = None
71
+ self._sources = None
72
+ self.discriminator = None
73
+ if avatar_url is not None:
74
+ self.avatar_url = avatar_url
75
+ if category is not None:
76
+ self.category = category
77
+ if description is not None:
78
+ self.description = description
79
+ if id is not None:
80
+ self.id = id
81
+ if name is not None:
82
+ self.name = name
83
+ if personality is not None:
84
+ self.personality = personality
85
+ if sources is not None:
86
+ self.sources = sources
87
+
88
+ @property
89
+ def avatar_url(self) -> 'str':
90
+ """Gets the avatar_url of this V1CloudyExpert. # noqa: E501
91
+
92
+
93
+ :return: The avatar_url of this V1CloudyExpert. # noqa: E501
94
+ :rtype: str
95
+ """
96
+ return self._avatar_url
97
+
98
+ @avatar_url.setter
99
+ def avatar_url(self, avatar_url: 'str'):
100
+ """Sets the avatar_url of this V1CloudyExpert.
101
+
102
+
103
+ :param avatar_url: The avatar_url of this V1CloudyExpert. # noqa: E501
104
+ :type: str
105
+ """
106
+
107
+ self._avatar_url = avatar_url
108
+
109
+ @property
110
+ def category(self) -> 'str':
111
+ """Gets the category of this V1CloudyExpert. # noqa: E501
112
+
113
+
114
+ :return: The category of this V1CloudyExpert. # noqa: E501
115
+ :rtype: str
116
+ """
117
+ return self._category
118
+
119
+ @category.setter
120
+ def category(self, category: 'str'):
121
+ """Sets the category of this V1CloudyExpert.
122
+
123
+
124
+ :param category: The category of this V1CloudyExpert. # noqa: E501
125
+ :type: str
126
+ """
127
+
128
+ self._category = category
129
+
130
+ @property
131
+ def description(self) -> 'str':
132
+ """Gets the description of this V1CloudyExpert. # noqa: E501
133
+
134
+
135
+ :return: The description of this V1CloudyExpert. # noqa: E501
136
+ :rtype: str
137
+ """
138
+ return self._description
139
+
140
+ @description.setter
141
+ def description(self, description: 'str'):
142
+ """Sets the description of this V1CloudyExpert.
143
+
144
+
145
+ :param description: The description of this V1CloudyExpert. # noqa: E501
146
+ :type: str
147
+ """
148
+
149
+ self._description = description
150
+
151
+ @property
152
+ def id(self) -> 'str':
153
+ """Gets the id of this V1CloudyExpert. # noqa: E501
154
+
155
+
156
+ :return: The id of this V1CloudyExpert. # noqa: E501
157
+ :rtype: str
158
+ """
159
+ return self._id
160
+
161
+ @id.setter
162
+ def id(self, id: 'str'):
163
+ """Sets the id of this V1CloudyExpert.
164
+
165
+
166
+ :param id: The id of this V1CloudyExpert. # noqa: E501
167
+ :type: str
168
+ """
169
+
170
+ self._id = id
171
+
172
+ @property
173
+ def name(self) -> 'str':
174
+ """Gets the name of this V1CloudyExpert. # noqa: E501
175
+
176
+
177
+ :return: The name of this V1CloudyExpert. # noqa: E501
178
+ :rtype: str
179
+ """
180
+ return self._name
181
+
182
+ @name.setter
183
+ def name(self, name: 'str'):
184
+ """Sets the name of this V1CloudyExpert.
185
+
186
+
187
+ :param name: The name of this V1CloudyExpert. # noqa: E501
188
+ :type: str
189
+ """
190
+
191
+ self._name = name
192
+
193
+ @property
194
+ def personality(self) -> 'str':
195
+ """Gets the personality of this V1CloudyExpert. # noqa: E501
196
+
197
+
198
+ :return: The personality of this V1CloudyExpert. # noqa: E501
199
+ :rtype: str
200
+ """
201
+ return self._personality
202
+
203
+ @personality.setter
204
+ def personality(self, personality: 'str'):
205
+ """Sets the personality of this V1CloudyExpert.
206
+
207
+
208
+ :param personality: The personality of this V1CloudyExpert. # noqa: E501
209
+ :type: str
210
+ """
211
+
212
+ self._personality = personality
213
+
214
+ @property
215
+ def sources(self) -> 'list[str]':
216
+ """Gets the sources of this V1CloudyExpert. # noqa: E501
217
+
218
+
219
+ :return: The sources of this V1CloudyExpert. # noqa: E501
220
+ :rtype: list[str]
221
+ """
222
+ return self._sources
223
+
224
+ @sources.setter
225
+ def sources(self, sources: 'list[str]'):
226
+ """Sets the sources of this V1CloudyExpert.
227
+
228
+
229
+ :param sources: The sources of this V1CloudyExpert. # noqa: E501
230
+ :type: list[str]
231
+ """
232
+
233
+ self._sources = sources
234
+
235
+ def to_dict(self) -> dict:
236
+ """Returns the model properties as a dict"""
237
+ result = {}
238
+
239
+ for attr, _ in six.iteritems(self.swagger_types):
240
+ value = getattr(self, attr)
241
+ if isinstance(value, list):
242
+ result[attr] = list(map(
243
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
244
+ value
245
+ ))
246
+ elif hasattr(value, "to_dict"):
247
+ result[attr] = value.to_dict()
248
+ elif isinstance(value, dict):
249
+ result[attr] = dict(map(
250
+ lambda item: (item[0], item[1].to_dict())
251
+ if hasattr(item[1], "to_dict") else item,
252
+ value.items()
253
+ ))
254
+ else:
255
+ result[attr] = value
256
+ if issubclass(V1CloudyExpert, dict):
257
+ for key, value in self.items():
258
+ result[key] = value
259
+
260
+ return result
261
+
262
+ def to_str(self) -> str:
263
+ """Returns the string representation of the model"""
264
+ return pprint.pformat(self.to_dict())
265
+
266
+ def __repr__(self) -> str:
267
+ """For `print` and `pprint`"""
268
+ return self.to_str()
269
+
270
+ def __eq__(self, other: 'V1CloudyExpert') -> bool:
271
+ """Returns true if both objects are equal"""
272
+ if not isinstance(other, V1CloudyExpert):
273
+ return False
274
+
275
+ return self.__dict__ == other.__dict__
276
+
277
+ def __ne__(self, other: 'V1CloudyExpert') -> bool:
278
+ """Returns true if both objects are not equal"""
279
+ return not self == other
@@ -56,7 +56,9 @@ class V1ClusterAccelerator(object):
56
56
  'device_card': 'str',
57
57
  'device_info': 'str',
58
58
  'display_name': 'str',
59
+ 'dws_cost': 'float',
59
60
  'dws_only': 'bool',
61
+ 'dws_supported': 'bool',
60
62
  'enabled': 'bool',
61
63
  'family': 'str',
62
64
  'instance_id': 'str',
@@ -69,6 +71,7 @@ class V1ClusterAccelerator(object):
69
71
  'max_available_quota': 'str',
70
72
  'non_spot': 'bool',
71
73
  'out_of_capacity': 'bool',
74
+ 'persistent_disk_supported': 'bool',
72
75
  'provider': 'V1CloudProvider',
73
76
  'quota_checked_at': 'datetime',
74
77
  'quota_code': 'str',
@@ -108,7 +111,9 @@ class V1ClusterAccelerator(object):
108
111
  'device_card': 'deviceCard',
109
112
  'device_info': 'deviceInfo',
110
113
  'display_name': 'displayName',
114
+ 'dws_cost': 'dwsCost',
111
115
  'dws_only': 'dwsOnly',
116
+ 'dws_supported': 'dwsSupported',
112
117
  'enabled': 'enabled',
113
118
  'family': 'family',
114
119
  'instance_id': 'instanceId',
@@ -121,6 +126,7 @@ class V1ClusterAccelerator(object):
121
126
  'max_available_quota': 'maxAvailableQuota',
122
127
  'non_spot': 'nonSpot',
123
128
  'out_of_capacity': 'outOfCapacity',
129
+ 'persistent_disk_supported': 'persistentDiskSupported',
124
130
  'provider': 'provider',
125
131
  'quota_checked_at': 'quotaCheckedAt',
126
132
  'quota_code': 'quotaCode',
@@ -144,7 +150,7 @@ class V1ClusterAccelerator(object):
144
150
  'spot_quota_page_url': 'spotQuotaPageUrl'
145
151
  }
146
152
 
147
- def __init__(self, accelerator_type: 'str' =None, allowed_resources: 'list[str]' =None, available_in_seconds: 'str' =None, available_in_seconds_spot: 'str' =None, available_zones: 'list[str]' =None, byoc_only: 'bool' =None, capacity_block_only: 'bool' =None, capacity_block_price: 'float' =None, capacity_blocks_available: 'list[V1ClusterCapacityReservation]' =None, cluster_id: 'str' =None, cost: 'float' =None, detailed_quotas_info: 'list[V1AcceleratorQuotaInfo]' =None, device_card: 'str' =None, device_info: 'str' =None, display_name: 'str' =None, dws_only: 'bool' =None, enabled: 'bool' =None, family: 'str' =None, instance_id: 'str' =None, is_custom: 'bool' =None, is_tier_restricted: 'bool' =None, local_disk_included: 'bool' =None, local_disk_size: 'str' =None, local_disk_supported: 'bool' =None, local_disks_count: 'str' =None, max_available_quota: 'str' =None, non_spot: 'bool' =None, out_of_capacity: 'bool' =None, provider: 'V1CloudProvider' =None, quota_checked_at: 'datetime' =None, quota_code: 'str' =None, quota_name: 'str' =None, quota_page_url: 'str' =None, quota_service_code: 'str' =None, quota_utilization: 'str' =None, quota_value: 'str' =None, reservable: 'bool' =None, reservation_available_zones: 'list[str]' =None, reservation_quota_code: 'str' =None, reservation_quota_name: 'str' =None, reservation_quota_page_url: 'str' =None, resources: 'V1Resources' =None, secondary_instance_id: 'str' =None, slug: 'str' =None, slug_multi_cloud: 'str' =None, spot_price: 'float' =None, spot_quota_code: 'str' =None, spot_quota_name: 'str' =None, spot_quota_page_url: 'str' =None): # noqa: E501
153
+ def __init__(self, accelerator_type: 'str' =None, allowed_resources: 'list[str]' =None, available_in_seconds: 'str' =None, available_in_seconds_spot: 'str' =None, available_zones: 'list[str]' =None, byoc_only: 'bool' =None, capacity_block_only: 'bool' =None, capacity_block_price: 'float' =None, capacity_blocks_available: 'list[V1ClusterCapacityReservation]' =None, cluster_id: 'str' =None, cost: 'float' =None, detailed_quotas_info: 'list[V1AcceleratorQuotaInfo]' =None, device_card: 'str' =None, device_info: 'str' =None, display_name: 'str' =None, dws_cost: 'float' =None, dws_only: 'bool' =None, dws_supported: 'bool' =None, enabled: 'bool' =None, family: 'str' =None, instance_id: 'str' =None, is_custom: 'bool' =None, is_tier_restricted: 'bool' =None, local_disk_included: 'bool' =None, local_disk_size: 'str' =None, local_disk_supported: 'bool' =None, local_disks_count: 'str' =None, max_available_quota: 'str' =None, non_spot: 'bool' =None, out_of_capacity: 'bool' =None, persistent_disk_supported: 'bool' =None, provider: 'V1CloudProvider' =None, quota_checked_at: 'datetime' =None, quota_code: 'str' =None, quota_name: 'str' =None, quota_page_url: 'str' =None, quota_service_code: 'str' =None, quota_utilization: 'str' =None, quota_value: 'str' =None, reservable: 'bool' =None, reservation_available_zones: 'list[str]' =None, reservation_quota_code: 'str' =None, reservation_quota_name: 'str' =None, reservation_quota_page_url: 'str' =None, resources: 'V1Resources' =None, secondary_instance_id: 'str' =None, slug: 'str' =None, slug_multi_cloud: 'str' =None, spot_price: 'float' =None, spot_quota_code: 'str' =None, spot_quota_name: 'str' =None, spot_quota_page_url: 'str' =None): # noqa: E501
148
154
  """V1ClusterAccelerator - a model defined in Swagger""" # noqa: E501
149
155
  self._accelerator_type = None
150
156
  self._allowed_resources = None
@@ -161,7 +167,9 @@ class V1ClusterAccelerator(object):
161
167
  self._device_card = None
162
168
  self._device_info = None
163
169
  self._display_name = None
170
+ self._dws_cost = None
164
171
  self._dws_only = None
172
+ self._dws_supported = None
165
173
  self._enabled = None
166
174
  self._family = None
167
175
  self._instance_id = None
@@ -174,6 +182,7 @@ class V1ClusterAccelerator(object):
174
182
  self._max_available_quota = None
175
183
  self._non_spot = None
176
184
  self._out_of_capacity = None
185
+ self._persistent_disk_supported = None
177
186
  self._provider = None
178
187
  self._quota_checked_at = None
179
188
  self._quota_code = None
@@ -226,8 +235,12 @@ class V1ClusterAccelerator(object):
226
235
  self.device_info = device_info
227
236
  if display_name is not None:
228
237
  self.display_name = display_name
238
+ if dws_cost is not None:
239
+ self.dws_cost = dws_cost
229
240
  if dws_only is not None:
230
241
  self.dws_only = dws_only
242
+ if dws_supported is not None:
243
+ self.dws_supported = dws_supported
231
244
  if enabled is not None:
232
245
  self.enabled = enabled
233
246
  if family is not None:
@@ -252,6 +265,8 @@ class V1ClusterAccelerator(object):
252
265
  self.non_spot = non_spot
253
266
  if out_of_capacity is not None:
254
267
  self.out_of_capacity = out_of_capacity
268
+ if persistent_disk_supported is not None:
269
+ self.persistent_disk_supported = persistent_disk_supported
255
270
  if provider is not None:
256
271
  self.provider = provider
257
272
  if quota_checked_at is not None:
@@ -610,6 +625,27 @@ class V1ClusterAccelerator(object):
610
625
 
611
626
  self._display_name = display_name
612
627
 
628
+ @property
629
+ def dws_cost(self) -> 'float':
630
+ """Gets the dws_cost of this V1ClusterAccelerator. # noqa: E501
631
+
632
+
633
+ :return: The dws_cost of this V1ClusterAccelerator. # noqa: E501
634
+ :rtype: float
635
+ """
636
+ return self._dws_cost
637
+
638
+ @dws_cost.setter
639
+ def dws_cost(self, dws_cost: 'float'):
640
+ """Sets the dws_cost of this V1ClusterAccelerator.
641
+
642
+
643
+ :param dws_cost: The dws_cost of this V1ClusterAccelerator. # noqa: E501
644
+ :type: float
645
+ """
646
+
647
+ self._dws_cost = dws_cost
648
+
613
649
  @property
614
650
  def dws_only(self) -> 'bool':
615
651
  """Gets the dws_only of this V1ClusterAccelerator. # noqa: E501
@@ -631,6 +667,27 @@ class V1ClusterAccelerator(object):
631
667
 
632
668
  self._dws_only = dws_only
633
669
 
670
+ @property
671
+ def dws_supported(self) -> 'bool':
672
+ """Gets the dws_supported of this V1ClusterAccelerator. # noqa: E501
673
+
674
+
675
+ :return: The dws_supported of this V1ClusterAccelerator. # noqa: E501
676
+ :rtype: bool
677
+ """
678
+ return self._dws_supported
679
+
680
+ @dws_supported.setter
681
+ def dws_supported(self, dws_supported: 'bool'):
682
+ """Sets the dws_supported of this V1ClusterAccelerator.
683
+
684
+
685
+ :param dws_supported: The dws_supported of this V1ClusterAccelerator. # noqa: E501
686
+ :type: bool
687
+ """
688
+
689
+ self._dws_supported = dws_supported
690
+
634
691
  @property
635
692
  def enabled(self) -> 'bool':
636
693
  """Gets the enabled of this V1ClusterAccelerator. # noqa: E501
@@ -883,6 +940,27 @@ class V1ClusterAccelerator(object):
883
940
 
884
941
  self._out_of_capacity = out_of_capacity
885
942
 
943
+ @property
944
+ def persistent_disk_supported(self) -> 'bool':
945
+ """Gets the persistent_disk_supported of this V1ClusterAccelerator. # noqa: E501
946
+
947
+
948
+ :return: The persistent_disk_supported of this V1ClusterAccelerator. # noqa: E501
949
+ :rtype: bool
950
+ """
951
+ return self._persistent_disk_supported
952
+
953
+ @persistent_disk_supported.setter
954
+ def persistent_disk_supported(self, persistent_disk_supported: 'bool'):
955
+ """Sets the persistent_disk_supported of this V1ClusterAccelerator.
956
+
957
+
958
+ :param persistent_disk_supported: The persistent_disk_supported of this V1ClusterAccelerator. # noqa: E501
959
+ :type: bool
960
+ """
961
+
962
+ self._persistent_disk_supported = persistent_disk_supported
963
+
886
964
  @property
887
965
  def provider(self) -> 'V1CloudProvider':
888
966
  """Gets the provider of this V1ClusterAccelerator. # noqa: E501
@@ -41,6 +41,7 @@ class V1ClusterCapacityReservation(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'aggregate_availability': 'str',
44
45
  'capacity_reservation_type': 'str',
45
46
  'cloud_provider_capacity_reservation_id': 'str',
46
47
  'cluster_id': 'str',
@@ -48,6 +49,7 @@ class V1ClusterCapacityReservation(object):
48
49
  'full_cloud_provider_reservation_string': 'str',
49
50
  'id': 'str',
50
51
  'in_use': 'str',
52
+ 'in_use_aggregate': 'str',
51
53
  'instance_type': 'str',
52
54
  'match_pattern': 'str',
53
55
  'num_instances': 'str',
@@ -58,6 +60,7 @@ class V1ClusterCapacityReservation(object):
58
60
  }
59
61
 
60
62
  attribute_map = {
63
+ 'aggregate_availability': 'aggregateAvailability',
61
64
  'capacity_reservation_type': 'capacityReservationType',
62
65
  'cloud_provider_capacity_reservation_id': 'cloudProviderCapacityReservationId',
63
66
  'cluster_id': 'clusterId',
@@ -65,6 +68,7 @@ class V1ClusterCapacityReservation(object):
65
68
  'full_cloud_provider_reservation_string': 'fullCloudProviderReservationString',
66
69
  'id': 'id',
67
70
  'in_use': 'inUse',
71
+ 'in_use_aggregate': 'inUseAggregate',
68
72
  'instance_type': 'instanceType',
69
73
  'match_pattern': 'matchPattern',
70
74
  'num_instances': 'numInstances',
@@ -74,8 +78,9 @@ class V1ClusterCapacityReservation(object):
74
78
  'zone': 'zone'
75
79
  }
76
80
 
77
- def __init__(self, capacity_reservation_type: 'str' =None, cloud_provider_capacity_reservation_id: 'str' =None, cluster_id: 'str' =None, end_time: 'datetime' =None, full_cloud_provider_reservation_string: 'str' =None, id: 'str' =None, in_use: 'str' =None, instance_type: 'str' =None, match_pattern: 'str' =None, num_instances: 'str' =None, project_id: 'str' =None, region: 'str' =None, start_time: 'datetime' =None, zone: 'str' =None): # noqa: E501
81
+ def __init__(self, aggregate_availability: 'str' =None, capacity_reservation_type: 'str' =None, cloud_provider_capacity_reservation_id: 'str' =None, cluster_id: 'str' =None, end_time: 'datetime' =None, full_cloud_provider_reservation_string: 'str' =None, id: 'str' =None, in_use: 'str' =None, in_use_aggregate: 'str' =None, instance_type: 'str' =None, match_pattern: 'str' =None, num_instances: 'str' =None, project_id: 'str' =None, region: 'str' =None, start_time: 'datetime' =None, zone: 'str' =None): # noqa: E501
78
82
  """V1ClusterCapacityReservation - a model defined in Swagger""" # noqa: E501
83
+ self._aggregate_availability = None
79
84
  self._capacity_reservation_type = None
80
85
  self._cloud_provider_capacity_reservation_id = None
81
86
  self._cluster_id = None
@@ -83,6 +88,7 @@ class V1ClusterCapacityReservation(object):
83
88
  self._full_cloud_provider_reservation_string = None
84
89
  self._id = None
85
90
  self._in_use = None
91
+ self._in_use_aggregate = None
86
92
  self._instance_type = None
87
93
  self._match_pattern = None
88
94
  self._num_instances = None
@@ -91,6 +97,8 @@ class V1ClusterCapacityReservation(object):
91
97
  self._start_time = None
92
98
  self._zone = None
93
99
  self.discriminator = None
100
+ if aggregate_availability is not None:
101
+ self.aggregate_availability = aggregate_availability
94
102
  if capacity_reservation_type is not None:
95
103
  self.capacity_reservation_type = capacity_reservation_type
96
104
  if cloud_provider_capacity_reservation_id is not None:
@@ -105,6 +113,8 @@ class V1ClusterCapacityReservation(object):
105
113
  self.id = id
106
114
  if in_use is not None:
107
115
  self.in_use = in_use
116
+ if in_use_aggregate is not None:
117
+ self.in_use_aggregate = in_use_aggregate
108
118
  if instance_type is not None:
109
119
  self.instance_type = instance_type
110
120
  if match_pattern is not None:
@@ -120,6 +130,27 @@ class V1ClusterCapacityReservation(object):
120
130
  if zone is not None:
121
131
  self.zone = zone
122
132
 
133
+ @property
134
+ def aggregate_availability(self) -> 'str':
135
+ """Gets the aggregate_availability of this V1ClusterCapacityReservation. # noqa: E501
136
+
137
+
138
+ :return: The aggregate_availability of this V1ClusterCapacityReservation. # noqa: E501
139
+ :rtype: str
140
+ """
141
+ return self._aggregate_availability
142
+
143
+ @aggregate_availability.setter
144
+ def aggregate_availability(self, aggregate_availability: 'str'):
145
+ """Sets the aggregate_availability of this V1ClusterCapacityReservation.
146
+
147
+
148
+ :param aggregate_availability: The aggregate_availability of this V1ClusterCapacityReservation. # noqa: E501
149
+ :type: str
150
+ """
151
+
152
+ self._aggregate_availability = aggregate_availability
153
+
123
154
  @property
124
155
  def capacity_reservation_type(self) -> 'str':
125
156
  """Gets the capacity_reservation_type of this V1ClusterCapacityReservation. # noqa: E501
@@ -267,6 +298,27 @@ class V1ClusterCapacityReservation(object):
267
298
 
268
299
  self._in_use = in_use
269
300
 
301
+ @property
302
+ def in_use_aggregate(self) -> 'str':
303
+ """Gets the in_use_aggregate of this V1ClusterCapacityReservation. # noqa: E501
304
+
305
+
306
+ :return: The in_use_aggregate of this V1ClusterCapacityReservation. # noqa: E501
307
+ :rtype: str
308
+ """
309
+ return self._in_use_aggregate
310
+
311
+ @in_use_aggregate.setter
312
+ def in_use_aggregate(self, in_use_aggregate: 'str'):
313
+ """Sets the in_use_aggregate of this V1ClusterCapacityReservation.
314
+
315
+
316
+ :param in_use_aggregate: The in_use_aggregate of this V1ClusterCapacityReservation. # noqa: E501
317
+ :type: str
318
+ """
319
+
320
+ self._in_use_aggregate = in_use_aggregate
321
+
270
322
  @property
271
323
  def instance_type(self) -> 'str':
272
324
  """Gets the instance_type of this V1ClusterCapacityReservation. # noqa: E501