lightning-sdk 0.2.8__py3-none-any.whl → 0.2.10__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 (60) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/cluster_api.py +22 -0
  3. lightning_sdk/api/deployment_api.py +1 -0
  4. lightning_sdk/api/lit_container_api.py +24 -5
  5. lightning_sdk/api/teamspace_api.py +22 -17
  6. lightning_sdk/api/utils.py +1 -1
  7. lightning_sdk/cli/clusters_menu.py +46 -0
  8. lightning_sdk/cli/entrypoint.py +2 -2
  9. lightning_sdk/cli/list.py +25 -5
  10. lightning_sdk/cli/serve.py +232 -24
  11. lightning_sdk/cli/upload.py +4 -1
  12. lightning_sdk/deployment/deployment.py +5 -2
  13. lightning_sdk/lightning_cloud/openapi/__init__.py +10 -0
  14. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +303 -0
  15. lightning_sdk/lightning_cloud/openapi/models/__init__.py +10 -0
  16. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_systemmetrics_body.py +149 -0
  17. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityreservations_body.py +55 -3
  18. lightning_sdk/lightning_cloud/openapi/models/create.py +53 -1
  19. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +55 -3
  20. lightning_sdk/lightning_cloud/openapi/models/update.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +1 -0
  22. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +53 -1
  23. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_cold_start_metrics.py +53 -1
  24. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_cold_start_metrics_stats.py +357 -0
  25. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +29 -3
  26. lightning_sdk/lightning_cloud/openapi/models/v1_cloudflare_v1.py +227 -0
  27. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  28. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +55 -3
  29. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +79 -1
  30. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  31. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +29 -3
  32. lightning_sdk/lightning_cloud/openapi/models/v1_create_cluster_capacity_reservation_response.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +53 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_gcp_direct_vpc.py +149 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_cold_start_metrics_stats_response.py +123 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_instance_system_metrics_aggregate_response.py +123 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +53 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +43 -17
  39. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +55 -3
  40. lightning_sdk/lightning_cloud/openapi/models/v1_project_cluster_binding.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_r2_data_connection.py +253 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_report_cloud_space_instance_system_metrics_response.py +97 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_phase.py +1 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_system_metrics_aggregated.py +227 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +27 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +104 -208
  47. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +27 -1
  48. lightning_sdk/lightning_cloud/openapi/models/v1_weka_data_connection.py +201 -0
  49. lightning_sdk/lightning_cloud/openapi/models/validate.py +27 -1
  50. lightning_sdk/lit_container.py +25 -7
  51. lightning_sdk/models.py +26 -8
  52. lightning_sdk/serve.py +3 -20
  53. lightning_sdk/teamspace.py +21 -4
  54. lightning_sdk/utils/resolve.py +11 -4
  55. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/METADATA +1 -1
  56. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/RECORD +60 -48
  57. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/LICENSE +0 -0
  58. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/WHEEL +0 -0
  59. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/entry_points.txt +0 -0
  60. {lightning_sdk-0.2.8.dist-info → lightning_sdk-0.2.10.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,227 @@
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 V1CloudflareV1(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
+ 'access_key_id': 'str',
45
+ 'account_id': 'str',
46
+ 'api_token_id': 'str',
47
+ 'r2_endpoint': 'str',
48
+ 'secret_access_key': 'str'
49
+ }
50
+
51
+ attribute_map = {
52
+ 'access_key_id': 'accessKeyId',
53
+ 'account_id': 'accountId',
54
+ 'api_token_id': 'apiTokenId',
55
+ 'r2_endpoint': 'r2Endpoint',
56
+ 'secret_access_key': 'secretAccessKey'
57
+ }
58
+
59
+ def __init__(self, access_key_id: 'str' =None, account_id: 'str' =None, api_token_id: 'str' =None, r2_endpoint: 'str' =None, secret_access_key: 'str' =None): # noqa: E501
60
+ """V1CloudflareV1 - a model defined in Swagger""" # noqa: E501
61
+ self._access_key_id = None
62
+ self._account_id = None
63
+ self._api_token_id = None
64
+ self._r2_endpoint = None
65
+ self._secret_access_key = None
66
+ self.discriminator = None
67
+ if access_key_id is not None:
68
+ self.access_key_id = access_key_id
69
+ if account_id is not None:
70
+ self.account_id = account_id
71
+ if api_token_id is not None:
72
+ self.api_token_id = api_token_id
73
+ if r2_endpoint is not None:
74
+ self.r2_endpoint = r2_endpoint
75
+ if secret_access_key is not None:
76
+ self.secret_access_key = secret_access_key
77
+
78
+ @property
79
+ def access_key_id(self) -> 'str':
80
+ """Gets the access_key_id of this V1CloudflareV1. # noqa: E501
81
+
82
+
83
+ :return: The access_key_id of this V1CloudflareV1. # noqa: E501
84
+ :rtype: str
85
+ """
86
+ return self._access_key_id
87
+
88
+ @access_key_id.setter
89
+ def access_key_id(self, access_key_id: 'str'):
90
+ """Sets the access_key_id of this V1CloudflareV1.
91
+
92
+
93
+ :param access_key_id: The access_key_id of this V1CloudflareV1. # noqa: E501
94
+ :type: str
95
+ """
96
+
97
+ self._access_key_id = access_key_id
98
+
99
+ @property
100
+ def account_id(self) -> 'str':
101
+ """Gets the account_id of this V1CloudflareV1. # noqa: E501
102
+
103
+
104
+ :return: The account_id of this V1CloudflareV1. # noqa: E501
105
+ :rtype: str
106
+ """
107
+ return self._account_id
108
+
109
+ @account_id.setter
110
+ def account_id(self, account_id: 'str'):
111
+ """Sets the account_id of this V1CloudflareV1.
112
+
113
+
114
+ :param account_id: The account_id of this V1CloudflareV1. # noqa: E501
115
+ :type: str
116
+ """
117
+
118
+ self._account_id = account_id
119
+
120
+ @property
121
+ def api_token_id(self) -> 'str':
122
+ """Gets the api_token_id of this V1CloudflareV1. # noqa: E501
123
+
124
+
125
+ :return: The api_token_id of this V1CloudflareV1. # noqa: E501
126
+ :rtype: str
127
+ """
128
+ return self._api_token_id
129
+
130
+ @api_token_id.setter
131
+ def api_token_id(self, api_token_id: 'str'):
132
+ """Sets the api_token_id of this V1CloudflareV1.
133
+
134
+
135
+ :param api_token_id: The api_token_id of this V1CloudflareV1. # noqa: E501
136
+ :type: str
137
+ """
138
+
139
+ self._api_token_id = api_token_id
140
+
141
+ @property
142
+ def r2_endpoint(self) -> 'str':
143
+ """Gets the r2_endpoint of this V1CloudflareV1. # noqa: E501
144
+
145
+
146
+ :return: The r2_endpoint of this V1CloudflareV1. # noqa: E501
147
+ :rtype: str
148
+ """
149
+ return self._r2_endpoint
150
+
151
+ @r2_endpoint.setter
152
+ def r2_endpoint(self, r2_endpoint: 'str'):
153
+ """Sets the r2_endpoint of this V1CloudflareV1.
154
+
155
+
156
+ :param r2_endpoint: The r2_endpoint of this V1CloudflareV1. # noqa: E501
157
+ :type: str
158
+ """
159
+
160
+ self._r2_endpoint = r2_endpoint
161
+
162
+ @property
163
+ def secret_access_key(self) -> 'str':
164
+ """Gets the secret_access_key of this V1CloudflareV1. # noqa: E501
165
+
166
+
167
+ :return: The secret_access_key of this V1CloudflareV1. # noqa: E501
168
+ :rtype: str
169
+ """
170
+ return self._secret_access_key
171
+
172
+ @secret_access_key.setter
173
+ def secret_access_key(self, secret_access_key: 'str'):
174
+ """Sets the secret_access_key of this V1CloudflareV1.
175
+
176
+
177
+ :param secret_access_key: The secret_access_key of this V1CloudflareV1. # noqa: E501
178
+ :type: str
179
+ """
180
+
181
+ self._secret_access_key = secret_access_key
182
+
183
+ def to_dict(self) -> dict:
184
+ """Returns the model properties as a dict"""
185
+ result = {}
186
+
187
+ for attr, _ in six.iteritems(self.swagger_types):
188
+ value = getattr(self, attr)
189
+ if isinstance(value, list):
190
+ result[attr] = list(map(
191
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
192
+ value
193
+ ))
194
+ elif hasattr(value, "to_dict"):
195
+ result[attr] = value.to_dict()
196
+ elif isinstance(value, dict):
197
+ result[attr] = dict(map(
198
+ lambda item: (item[0], item[1].to_dict())
199
+ if hasattr(item[1], "to_dict") else item,
200
+ value.items()
201
+ ))
202
+ else:
203
+ result[attr] = value
204
+ if issubclass(V1CloudflareV1, dict):
205
+ for key, value in self.items():
206
+ result[key] = value
207
+
208
+ return result
209
+
210
+ def to_str(self) -> str:
211
+ """Returns the string representation of the model"""
212
+ return pprint.pformat(self.to_dict())
213
+
214
+ def __repr__(self) -> str:
215
+ """For `print` and `pprint`"""
216
+ return self.to_str()
217
+
218
+ def __eq__(self, other: 'V1CloudflareV1') -> bool:
219
+ """Returns true if both objects are equal"""
220
+ if not isinstance(other, V1CloudflareV1):
221
+ return False
222
+
223
+ return self.__dict__ == other.__dict__
224
+
225
+ def __ne__(self, other: 'V1CloudflareV1') -> bool:
226
+ """Returns true if both objects are not equal"""
227
+ return not self == other
@@ -82,6 +82,7 @@ class V1ClusterAccelerator(object):
82
82
  'reservation_quota_name': 'str',
83
83
  'reservation_quota_page_url': 'str',
84
84
  'resources': 'V1Resources',
85
+ 'secondary_instance_id': 'str',
85
86
  'slug': 'str',
86
87
  'slug_multi_cloud': 'str',
87
88
  'spot_price': 'float',
@@ -132,6 +133,7 @@ class V1ClusterAccelerator(object):
132
133
  'reservation_quota_name': 'reservationQuotaName',
133
134
  'reservation_quota_page_url': 'reservationQuotaPageUrl',
134
135
  'resources': 'resources',
136
+ 'secondary_instance_id': 'secondaryInstanceId',
135
137
  'slug': 'slug',
136
138
  'slug_multi_cloud': 'slugMultiCloud',
137
139
  'spot_price': 'spotPrice',
@@ -140,7 +142,7 @@ class V1ClusterAccelerator(object):
140
142
  'spot_quota_page_url': 'spotQuotaPageUrl'
141
143
  }
142
144
 
143
- 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, 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, 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
145
+ 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, 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
144
146
  """V1ClusterAccelerator - a model defined in Swagger""" # noqa: E501
145
147
  self._accelerator_type = None
146
148
  self._allowed_resources = None
@@ -183,6 +185,7 @@ class V1ClusterAccelerator(object):
183
185
  self._reservation_quota_name = None
184
186
  self._reservation_quota_page_url = None
185
187
  self._resources = None
188
+ self._secondary_instance_id = None
186
189
  self._slug = None
187
190
  self._slug_multi_cloud = None
188
191
  self._spot_price = None
@@ -272,6 +275,8 @@ class V1ClusterAccelerator(object):
272
275
  self.reservation_quota_page_url = reservation_quota_page_url
273
276
  if resources is not None:
274
277
  self.resources = resources
278
+ if secondary_instance_id is not None:
279
+ self.secondary_instance_id = secondary_instance_id
275
280
  if slug is not None:
276
281
  self.slug = slug
277
282
  if slug_multi_cloud is not None:
@@ -1146,6 +1151,27 @@ class V1ClusterAccelerator(object):
1146
1151
 
1147
1152
  self._resources = resources
1148
1153
 
1154
+ @property
1155
+ def secondary_instance_id(self) -> 'str':
1156
+ """Gets the secondary_instance_id of this V1ClusterAccelerator. # noqa: E501
1157
+
1158
+
1159
+ :return: The secondary_instance_id of this V1ClusterAccelerator. # noqa: E501
1160
+ :rtype: str
1161
+ """
1162
+ return self._secondary_instance_id
1163
+
1164
+ @secondary_instance_id.setter
1165
+ def secondary_instance_id(self, secondary_instance_id: 'str'):
1166
+ """Sets the secondary_instance_id of this V1ClusterAccelerator.
1167
+
1168
+
1169
+ :param secondary_instance_id: The secondary_instance_id of this V1ClusterAccelerator. # noqa: E501
1170
+ :type: str
1171
+ """
1172
+
1173
+ self._secondary_instance_id = secondary_instance_id
1174
+
1149
1175
  @property
1150
1176
  def slug(self) -> 'str':
1151
1177
  """Gets the slug of this V1ClusterAccelerator. # noqa: E501
@@ -45,6 +45,7 @@ class V1ClusterCapacityReservation(object):
45
45
  'cloud_provider_capacity_reservation_id': 'str',
46
46
  'cluster_id': 'str',
47
47
  'end_time': 'datetime',
48
+ 'full_cloud_provider_reservation_string': 'str',
48
49
  'id': 'str',
49
50
  'in_use': 'str',
50
51
  'instance_type': 'str',
@@ -52,7 +53,8 @@ class V1ClusterCapacityReservation(object):
52
53
  'num_instances': 'str',
53
54
  'project_id': 'str',
54
55
  'region': 'str',
55
- 'start_time': 'datetime'
56
+ 'start_time': 'datetime',
57
+ 'zone': 'str'
56
58
  }
57
59
 
58
60
  attribute_map = {
@@ -60,6 +62,7 @@ class V1ClusterCapacityReservation(object):
60
62
  'cloud_provider_capacity_reservation_id': 'cloudProviderCapacityReservationId',
61
63
  'cluster_id': 'clusterId',
62
64
  'end_time': 'endTime',
65
+ 'full_cloud_provider_reservation_string': 'fullCloudProviderReservationString',
63
66
  'id': 'id',
64
67
  'in_use': 'inUse',
65
68
  'instance_type': 'instanceType',
@@ -67,15 +70,17 @@ class V1ClusterCapacityReservation(object):
67
70
  'num_instances': 'numInstances',
68
71
  'project_id': 'projectId',
69
72
  'region': 'region',
70
- 'start_time': 'startTime'
73
+ 'start_time': 'startTime',
74
+ 'zone': 'zone'
71
75
  }
72
76
 
73
- def __init__(self, capacity_reservation_type: 'str' =None, cloud_provider_capacity_reservation_id: 'str' =None, cluster_id: 'str' =None, end_time: 'datetime' =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): # noqa: E501
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
74
78
  """V1ClusterCapacityReservation - a model defined in Swagger""" # noqa: E501
75
79
  self._capacity_reservation_type = None
76
80
  self._cloud_provider_capacity_reservation_id = None
77
81
  self._cluster_id = None
78
82
  self._end_time = None
83
+ self._full_cloud_provider_reservation_string = None
79
84
  self._id = None
80
85
  self._in_use = None
81
86
  self._instance_type = None
@@ -84,6 +89,7 @@ class V1ClusterCapacityReservation(object):
84
89
  self._project_id = None
85
90
  self._region = None
86
91
  self._start_time = None
92
+ self._zone = None
87
93
  self.discriminator = None
88
94
  if capacity_reservation_type is not None:
89
95
  self.capacity_reservation_type = capacity_reservation_type
@@ -93,6 +99,8 @@ class V1ClusterCapacityReservation(object):
93
99
  self.cluster_id = cluster_id
94
100
  if end_time is not None:
95
101
  self.end_time = end_time
102
+ if full_cloud_provider_reservation_string is not None:
103
+ self.full_cloud_provider_reservation_string = full_cloud_provider_reservation_string
96
104
  if id is not None:
97
105
  self.id = id
98
106
  if in_use is not None:
@@ -109,6 +117,8 @@ class V1ClusterCapacityReservation(object):
109
117
  self.region = region
110
118
  if start_time is not None:
111
119
  self.start_time = start_time
120
+ if zone is not None:
121
+ self.zone = zone
112
122
 
113
123
  @property
114
124
  def capacity_reservation_type(self) -> 'str':
@@ -194,6 +204,27 @@ class V1ClusterCapacityReservation(object):
194
204
 
195
205
  self._end_time = end_time
196
206
 
207
+ @property
208
+ def full_cloud_provider_reservation_string(self) -> 'str':
209
+ """Gets the full_cloud_provider_reservation_string of this V1ClusterCapacityReservation. # noqa: E501
210
+
211
+
212
+ :return: The full_cloud_provider_reservation_string of this V1ClusterCapacityReservation. # noqa: E501
213
+ :rtype: str
214
+ """
215
+ return self._full_cloud_provider_reservation_string
216
+
217
+ @full_cloud_provider_reservation_string.setter
218
+ def full_cloud_provider_reservation_string(self, full_cloud_provider_reservation_string: 'str'):
219
+ """Sets the full_cloud_provider_reservation_string of this V1ClusterCapacityReservation.
220
+
221
+
222
+ :param full_cloud_provider_reservation_string: The full_cloud_provider_reservation_string of this V1ClusterCapacityReservation. # noqa: E501
223
+ :type: str
224
+ """
225
+
226
+ self._full_cloud_provider_reservation_string = full_cloud_provider_reservation_string
227
+
197
228
  @property
198
229
  def id(self) -> 'str':
199
230
  """Gets the id of this V1ClusterCapacityReservation. # noqa: E501
@@ -362,6 +393,27 @@ class V1ClusterCapacityReservation(object):
362
393
 
363
394
  self._start_time = start_time
364
395
 
396
+ @property
397
+ def zone(self) -> 'str':
398
+ """Gets the zone of this V1ClusterCapacityReservation. # noqa: E501
399
+
400
+
401
+ :return: The zone of this V1ClusterCapacityReservation. # noqa: E501
402
+ :rtype: str
403
+ """
404
+ return self._zone
405
+
406
+ @zone.setter
407
+ def zone(self, zone: 'str'):
408
+ """Sets the zone of this V1ClusterCapacityReservation.
409
+
410
+
411
+ :param zone: The zone of this V1ClusterCapacityReservation. # noqa: E501
412
+ :type: str
413
+ """
414
+
415
+ self._zone = zone
416
+
365
417
  def to_dict(self) -> dict:
366
418
  """Returns the model properties as a dict"""
367
419
  result = {}
@@ -42,8 +42,11 @@ class V1ClusterSecurityOptions(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'bucket_kms_key': 'str',
45
+ 'cloud_init_boot_cmds': 'list[str]',
46
+ 'cloud_init_run_cmds': 'list[str]',
45
47
  'containers_non_privileged': 'bool',
46
48
  'disable_public_ip': 'bool',
49
+ 'disabled_services': 'list[str]',
47
50
  'encrypt_cluster_bucket': 'bool',
48
51
  'encrypt_instance_volumes': 'bool',
49
52
  'extra_firewall_cidr_ranges': 'list[str]',
@@ -57,8 +60,11 @@ class V1ClusterSecurityOptions(object):
57
60
 
58
61
  attribute_map = {
59
62
  'bucket_kms_key': 'bucketKmsKey',
63
+ 'cloud_init_boot_cmds': 'cloudInitBootCmds',
64
+ 'cloud_init_run_cmds': 'cloudInitRunCmds',
60
65
  'containers_non_privileged': 'containersNonPrivileged',
61
66
  'disable_public_ip': 'disablePublicIp',
67
+ 'disabled_services': 'disabledServices',
62
68
  'encrypt_cluster_bucket': 'encryptClusterBucket',
63
69
  'encrypt_instance_volumes': 'encryptInstanceVolumes',
64
70
  'extra_firewall_cidr_ranges': 'extraFirewallCidrRanges',
@@ -70,11 +76,14 @@ class V1ClusterSecurityOptions(object):
70
76
  'ssh_disabled': 'sshDisabled'
71
77
  }
72
78
 
73
- def __init__(self, bucket_kms_key: 'str' =None, containers_non_privileged: 'bool' =None, disable_public_ip: 'bool' =None, encrypt_cluster_bucket: 'bool' =None, encrypt_instance_volumes: 'bool' =None, extra_firewall_cidr_ranges: 'list[str]' =None, extra_policy: 'str' =None, kms_key_id: 'str' =None, protect_instance_metadata: 'bool' =None, rootless_docker: 'bool' =None, setup_network_load_balancer: 'bool' =None, ssh_disabled: 'bool' =None): # noqa: E501
79
+ def __init__(self, bucket_kms_key: 'str' =None, cloud_init_boot_cmds: 'list[str]' =None, cloud_init_run_cmds: 'list[str]' =None, containers_non_privileged: 'bool' =None, disable_public_ip: 'bool' =None, disabled_services: 'list[str]' =None, encrypt_cluster_bucket: 'bool' =None, encrypt_instance_volumes: 'bool' =None, extra_firewall_cidr_ranges: 'list[str]' =None, extra_policy: 'str' =None, kms_key_id: 'str' =None, protect_instance_metadata: 'bool' =None, rootless_docker: 'bool' =None, setup_network_load_balancer: 'bool' =None, ssh_disabled: 'bool' =None): # noqa: E501
74
80
  """V1ClusterSecurityOptions - a model defined in Swagger""" # noqa: E501
75
81
  self._bucket_kms_key = None
82
+ self._cloud_init_boot_cmds = None
83
+ self._cloud_init_run_cmds = None
76
84
  self._containers_non_privileged = None
77
85
  self._disable_public_ip = None
86
+ self._disabled_services = None
78
87
  self._encrypt_cluster_bucket = None
79
88
  self._encrypt_instance_volumes = None
80
89
  self._extra_firewall_cidr_ranges = None
@@ -87,10 +96,16 @@ class V1ClusterSecurityOptions(object):
87
96
  self.discriminator = None
88
97
  if bucket_kms_key is not None:
89
98
  self.bucket_kms_key = bucket_kms_key
99
+ if cloud_init_boot_cmds is not None:
100
+ self.cloud_init_boot_cmds = cloud_init_boot_cmds
101
+ if cloud_init_run_cmds is not None:
102
+ self.cloud_init_run_cmds = cloud_init_run_cmds
90
103
  if containers_non_privileged is not None:
91
104
  self.containers_non_privileged = containers_non_privileged
92
105
  if disable_public_ip is not None:
93
106
  self.disable_public_ip = disable_public_ip
107
+ if disabled_services is not None:
108
+ self.disabled_services = disabled_services
94
109
  if encrypt_cluster_bucket is not None:
95
110
  self.encrypt_cluster_bucket = encrypt_cluster_bucket
96
111
  if encrypt_instance_volumes is not None:
@@ -131,6 +146,48 @@ class V1ClusterSecurityOptions(object):
131
146
 
132
147
  self._bucket_kms_key = bucket_kms_key
133
148
 
149
+ @property
150
+ def cloud_init_boot_cmds(self) -> 'list[str]':
151
+ """Gets the cloud_init_boot_cmds of this V1ClusterSecurityOptions. # noqa: E501
152
+
153
+
154
+ :return: The cloud_init_boot_cmds of this V1ClusterSecurityOptions. # noqa: E501
155
+ :rtype: list[str]
156
+ """
157
+ return self._cloud_init_boot_cmds
158
+
159
+ @cloud_init_boot_cmds.setter
160
+ def cloud_init_boot_cmds(self, cloud_init_boot_cmds: 'list[str]'):
161
+ """Sets the cloud_init_boot_cmds of this V1ClusterSecurityOptions.
162
+
163
+
164
+ :param cloud_init_boot_cmds: The cloud_init_boot_cmds of this V1ClusterSecurityOptions. # noqa: E501
165
+ :type: list[str]
166
+ """
167
+
168
+ self._cloud_init_boot_cmds = cloud_init_boot_cmds
169
+
170
+ @property
171
+ def cloud_init_run_cmds(self) -> 'list[str]':
172
+ """Gets the cloud_init_run_cmds of this V1ClusterSecurityOptions. # noqa: E501
173
+
174
+
175
+ :return: The cloud_init_run_cmds of this V1ClusterSecurityOptions. # noqa: E501
176
+ :rtype: list[str]
177
+ """
178
+ return self._cloud_init_run_cmds
179
+
180
+ @cloud_init_run_cmds.setter
181
+ def cloud_init_run_cmds(self, cloud_init_run_cmds: 'list[str]'):
182
+ """Sets the cloud_init_run_cmds of this V1ClusterSecurityOptions.
183
+
184
+
185
+ :param cloud_init_run_cmds: The cloud_init_run_cmds of this V1ClusterSecurityOptions. # noqa: E501
186
+ :type: list[str]
187
+ """
188
+
189
+ self._cloud_init_run_cmds = cloud_init_run_cmds
190
+
134
191
  @property
135
192
  def containers_non_privileged(self) -> 'bool':
136
193
  """Gets the containers_non_privileged of this V1ClusterSecurityOptions. # noqa: E501
@@ -173,6 +230,27 @@ class V1ClusterSecurityOptions(object):
173
230
 
174
231
  self._disable_public_ip = disable_public_ip
175
232
 
233
+ @property
234
+ def disabled_services(self) -> 'list[str]':
235
+ """Gets the disabled_services of this V1ClusterSecurityOptions. # noqa: E501
236
+
237
+
238
+ :return: The disabled_services of this V1ClusterSecurityOptions. # noqa: E501
239
+ :rtype: list[str]
240
+ """
241
+ return self._disabled_services
242
+
243
+ @disabled_services.setter
244
+ def disabled_services(self, disabled_services: 'list[str]'):
245
+ """Sets the disabled_services of this V1ClusterSecurityOptions.
246
+
247
+
248
+ :param disabled_services: The disabled_services of this V1ClusterSecurityOptions. # noqa: E501
249
+ :type: list[str]
250
+ """
251
+
252
+ self._disabled_services = disabled_services
253
+
176
254
  @property
177
255
  def encrypt_cluster_bucket(self) -> 'bool':
178
256
  """Gets the encrypt_cluster_bucket of this V1ClusterSecurityOptions. # noqa: E501
@@ -44,6 +44,7 @@ class V1ClusterSpec(object):
44
44
  'auth_token': 'str',
45
45
  'available_accelerators': 'list[str]',
46
46
  'aws_v1': 'V1AWSDirectV1',
47
+ 'cloudflare_v1': 'V1CloudflareV1',
47
48
  'cluster_type': 'V1ClusterType',
48
49
  'deletion_options': 'V1ClusterDeletionOptions',
49
50
  'desired_state': 'V1ClusterState',
@@ -71,6 +72,7 @@ class V1ClusterSpec(object):
71
72
  'auth_token': 'authToken',
72
73
  'available_accelerators': 'availableAccelerators',
73
74
  'aws_v1': 'awsV1',
75
+ 'cloudflare_v1': 'cloudflareV1',
74
76
  'cluster_type': 'clusterType',
75
77
  'deletion_options': 'deletionOptions',
76
78
  'desired_state': 'desiredState',
@@ -94,11 +96,12 @@ class V1ClusterSpec(object):
94
96
  'vultr_v1': 'vultrV1'
95
97
  }
96
98
 
97
- def __init__(self, auth_token: 'str' =None, available_accelerators: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cluster_type: 'V1ClusterType' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, freeze_accelerators: 'bool' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, insurer_disabled: 'bool' =None, lambda_labs_v1: 'V1LambdaLabsDirectV1' =None, locked_zones: 'list[str]' =None, monitor_deletion_disabled: 'bool' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, parent_cluster_id: 'str' =None, pause_automation: 'bool' =None, reservation_details: 'V1ReservationDetails' =None, reserved_capacity_provider: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None, voltage_park_v1: 'V1VoltageParkDirectV1' =None, vultr_v1: 'V1VultrDirectV1' =None): # noqa: E501
99
+ def __init__(self, auth_token: 'str' =None, available_accelerators: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cloudflare_v1: 'V1CloudflareV1' =None, cluster_type: 'V1ClusterType' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, freeze_accelerators: 'bool' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, insurer_disabled: 'bool' =None, lambda_labs_v1: 'V1LambdaLabsDirectV1' =None, locked_zones: 'list[str]' =None, monitor_deletion_disabled: 'bool' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, parent_cluster_id: 'str' =None, pause_automation: 'bool' =None, reservation_details: 'V1ReservationDetails' =None, reserved_capacity_provider: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None, voltage_park_v1: 'V1VoltageParkDirectV1' =None, vultr_v1: 'V1VultrDirectV1' =None): # noqa: E501
98
100
  """V1ClusterSpec - a model defined in Swagger""" # noqa: E501
99
101
  self._auth_token = None
100
102
  self._available_accelerators = None
101
103
  self._aws_v1 = None
104
+ self._cloudflare_v1 = None
102
105
  self._cluster_type = None
103
106
  self._deletion_options = None
104
107
  self._desired_state = None
@@ -127,6 +130,8 @@ class V1ClusterSpec(object):
127
130
  self.available_accelerators = available_accelerators
128
131
  if aws_v1 is not None:
129
132
  self.aws_v1 = aws_v1
133
+ if cloudflare_v1 is not None:
134
+ self.cloudflare_v1 = cloudflare_v1
130
135
  if cluster_type is not None:
131
136
  self.cluster_type = cluster_type
132
137
  if deletion_options is not None:
@@ -233,6 +238,27 @@ class V1ClusterSpec(object):
233
238
 
234
239
  self._aws_v1 = aws_v1
235
240
 
241
+ @property
242
+ def cloudflare_v1(self) -> 'V1CloudflareV1':
243
+ """Gets the cloudflare_v1 of this V1ClusterSpec. # noqa: E501
244
+
245
+
246
+ :return: The cloudflare_v1 of this V1ClusterSpec. # noqa: E501
247
+ :rtype: V1CloudflareV1
248
+ """
249
+ return self._cloudflare_v1
250
+
251
+ @cloudflare_v1.setter
252
+ def cloudflare_v1(self, cloudflare_v1: 'V1CloudflareV1'):
253
+ """Sets the cloudflare_v1 of this V1ClusterSpec.
254
+
255
+
256
+ :param cloudflare_v1: The cloudflare_v1 of this V1ClusterSpec. # noqa: E501
257
+ :type: V1CloudflareV1
258
+ """
259
+
260
+ self._cloudflare_v1 = cloudflare_v1
261
+
236
262
  @property
237
263
  def cluster_type(self) -> 'V1ClusterType':
238
264
  """Gets the cluster_type of this V1ClusterSpec. # noqa: E501