lightning-sdk 2025.11.13.post0__py3-none-any.whl → 2025.11.24__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 (61) hide show
  1. lightning_sdk/__init__.py +2 -0
  2. lightning_sdk/__version__.py +1 -1
  3. lightning_sdk/api/__init__.py +2 -9
  4. lightning_sdk/api/k8s_api.py +105 -0
  5. lightning_sdk/api/studio_api.py +19 -0
  6. lightning_sdk/api/utils.py +19 -0
  7. lightning_sdk/exceptions.py +2 -0
  8. lightning_sdk/k8s_cluster.py +83 -0
  9. lightning_sdk/lightning_cloud/openapi/__init__.py +15 -0
  10. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +134 -1
  11. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  12. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +539 -2
  13. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +114 -0
  14. lightning_sdk/lightning_cloud/openapi/api/markets_service_api.py +5 -1
  15. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +99 -2
  16. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +5 -1
  17. lightning_sdk/lightning_cloud/openapi/models/__init__.py +15 -0
  18. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +29 -3
  19. lightning_sdk/lightning_cloud/openapi/models/deployments_deployment_id_body.py +149 -0
  20. lightning_sdk/lightning_cloud/openapi/models/id_content_body.py +123 -0
  21. lightning_sdk/lightning_cloud/openapi/models/job_id_systemmetrics_body.py +123 -0
  22. lightning_sdk/lightning_cloud/openapi/models/message_id_actions_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +1 -27
  24. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +107 -3
  26. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_machines.py +149 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_request.py +149 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +1 -27
  30. lightning_sdk/lightning_cloud/openapi/models/v1_generic_job.py +305 -0
  31. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +435 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_list_all_jobs_response.py +175 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_by.py +104 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_order.py +104 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +149 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_list_pipelines_response.py +55 -3
  39. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +1 -27
  42. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_message_action.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_org_deployment_visibility.py +227 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_pod_preemption_event.py +305 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +1 -27
  47. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +1 -27
  48. lightning_sdk/lightning_cloud/openapi/models/v1_report_job_system_metrics_response.py +97 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_message_content_response.py +123 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +133 -107
  53. lightning_sdk/lightning_cloud/openapi/models/v1_validate_storage_transfer_response.py +15 -15
  54. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  55. lightning_sdk/studio.py +12 -0
  56. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/METADATA +2 -1
  57. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/RECORD +61 -43
  58. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/LICENSE +0 -0
  59. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/WHEEL +0 -0
  60. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/entry_points.txt +0 -0
  61. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.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 V1OrgDeploymentVisibility(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
+ 'allowed_project_ids': 'list[str]',
45
+ 'deployment_id': 'str',
46
+ 'is_allowed_to_all': 'bool',
47
+ 'org_id': 'str',
48
+ 'updated_at': 'datetime'
49
+ }
50
+
51
+ attribute_map = {
52
+ 'allowed_project_ids': 'allowedProjectIds',
53
+ 'deployment_id': 'deploymentId',
54
+ 'is_allowed_to_all': 'isAllowedToAll',
55
+ 'org_id': 'orgId',
56
+ 'updated_at': 'updatedAt'
57
+ }
58
+
59
+ def __init__(self, allowed_project_ids: 'list[str]' =None, deployment_id: 'str' =None, is_allowed_to_all: 'bool' =None, org_id: 'str' =None, updated_at: 'datetime' =None): # noqa: E501
60
+ """V1OrgDeploymentVisibility - a model defined in Swagger""" # noqa: E501
61
+ self._allowed_project_ids = None
62
+ self._deployment_id = None
63
+ self._is_allowed_to_all = None
64
+ self._org_id = None
65
+ self._updated_at = None
66
+ self.discriminator = None
67
+ if allowed_project_ids is not None:
68
+ self.allowed_project_ids = allowed_project_ids
69
+ if deployment_id is not None:
70
+ self.deployment_id = deployment_id
71
+ if is_allowed_to_all is not None:
72
+ self.is_allowed_to_all = is_allowed_to_all
73
+ if org_id is not None:
74
+ self.org_id = org_id
75
+ if updated_at is not None:
76
+ self.updated_at = updated_at
77
+
78
+ @property
79
+ def allowed_project_ids(self) -> 'list[str]':
80
+ """Gets the allowed_project_ids of this V1OrgDeploymentVisibility. # noqa: E501
81
+
82
+
83
+ :return: The allowed_project_ids of this V1OrgDeploymentVisibility. # noqa: E501
84
+ :rtype: list[str]
85
+ """
86
+ return self._allowed_project_ids
87
+
88
+ @allowed_project_ids.setter
89
+ def allowed_project_ids(self, allowed_project_ids: 'list[str]'):
90
+ """Sets the allowed_project_ids of this V1OrgDeploymentVisibility.
91
+
92
+
93
+ :param allowed_project_ids: The allowed_project_ids of this V1OrgDeploymentVisibility. # noqa: E501
94
+ :type: list[str]
95
+ """
96
+
97
+ self._allowed_project_ids = allowed_project_ids
98
+
99
+ @property
100
+ def deployment_id(self) -> 'str':
101
+ """Gets the deployment_id of this V1OrgDeploymentVisibility. # noqa: E501
102
+
103
+
104
+ :return: The deployment_id of this V1OrgDeploymentVisibility. # noqa: E501
105
+ :rtype: str
106
+ """
107
+ return self._deployment_id
108
+
109
+ @deployment_id.setter
110
+ def deployment_id(self, deployment_id: 'str'):
111
+ """Sets the deployment_id of this V1OrgDeploymentVisibility.
112
+
113
+
114
+ :param deployment_id: The deployment_id of this V1OrgDeploymentVisibility. # noqa: E501
115
+ :type: str
116
+ """
117
+
118
+ self._deployment_id = deployment_id
119
+
120
+ @property
121
+ def is_allowed_to_all(self) -> 'bool':
122
+ """Gets the is_allowed_to_all of this V1OrgDeploymentVisibility. # noqa: E501
123
+
124
+
125
+ :return: The is_allowed_to_all of this V1OrgDeploymentVisibility. # noqa: E501
126
+ :rtype: bool
127
+ """
128
+ return self._is_allowed_to_all
129
+
130
+ @is_allowed_to_all.setter
131
+ def is_allowed_to_all(self, is_allowed_to_all: 'bool'):
132
+ """Sets the is_allowed_to_all of this V1OrgDeploymentVisibility.
133
+
134
+
135
+ :param is_allowed_to_all: The is_allowed_to_all of this V1OrgDeploymentVisibility. # noqa: E501
136
+ :type: bool
137
+ """
138
+
139
+ self._is_allowed_to_all = is_allowed_to_all
140
+
141
+ @property
142
+ def org_id(self) -> 'str':
143
+ """Gets the org_id of this V1OrgDeploymentVisibility. # noqa: E501
144
+
145
+
146
+ :return: The org_id of this V1OrgDeploymentVisibility. # noqa: E501
147
+ :rtype: str
148
+ """
149
+ return self._org_id
150
+
151
+ @org_id.setter
152
+ def org_id(self, org_id: 'str'):
153
+ """Sets the org_id of this V1OrgDeploymentVisibility.
154
+
155
+
156
+ :param org_id: The org_id of this V1OrgDeploymentVisibility. # noqa: E501
157
+ :type: str
158
+ """
159
+
160
+ self._org_id = org_id
161
+
162
+ @property
163
+ def updated_at(self) -> 'datetime':
164
+ """Gets the updated_at of this V1OrgDeploymentVisibility. # noqa: E501
165
+
166
+
167
+ :return: The updated_at of this V1OrgDeploymentVisibility. # noqa: E501
168
+ :rtype: datetime
169
+ """
170
+ return self._updated_at
171
+
172
+ @updated_at.setter
173
+ def updated_at(self, updated_at: 'datetime'):
174
+ """Sets the updated_at of this V1OrgDeploymentVisibility.
175
+
176
+
177
+ :param updated_at: The updated_at of this V1OrgDeploymentVisibility. # noqa: E501
178
+ :type: datetime
179
+ """
180
+
181
+ self._updated_at = updated_at
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(V1OrgDeploymentVisibility, 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: 'V1OrgDeploymentVisibility') -> bool:
219
+ """Returns true if both objects are equal"""
220
+ if not isinstance(other, V1OrgDeploymentVisibility):
221
+ return False
222
+
223
+ return self.__dict__ == other.__dict__
224
+
225
+ def __ne__(self, other: 'V1OrgDeploymentVisibility') -> bool:
226
+ """Returns true if both objects are not equal"""
227
+ return not self == other
@@ -0,0 +1,305 @@
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 V1PodPreemptionEvent(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
+ 'event_id': 'str',
45
+ 'namespace': 'str',
46
+ 'preempted_by_workload': 'str',
47
+ 'preempted_by_workload_uid': 'str',
48
+ 'preempted_pod': 'str',
49
+ 'preempted_pod_uid': 'str',
50
+ 'queue': 'str',
51
+ 'timestamp': 'datetime'
52
+ }
53
+
54
+ attribute_map = {
55
+ 'event_id': 'eventId',
56
+ 'namespace': 'namespace',
57
+ 'preempted_by_workload': 'preemptedByWorkload',
58
+ 'preempted_by_workload_uid': 'preemptedByWorkloadUid',
59
+ 'preempted_pod': 'preemptedPod',
60
+ 'preempted_pod_uid': 'preemptedPodUid',
61
+ 'queue': 'queue',
62
+ 'timestamp': 'timestamp'
63
+ }
64
+
65
+ def __init__(self, event_id: 'str' =None, namespace: 'str' =None, preempted_by_workload: 'str' =None, preempted_by_workload_uid: 'str' =None, preempted_pod: 'str' =None, preempted_pod_uid: 'str' =None, queue: 'str' =None, timestamp: 'datetime' =None): # noqa: E501
66
+ """V1PodPreemptionEvent - a model defined in Swagger""" # noqa: E501
67
+ self._event_id = None
68
+ self._namespace = None
69
+ self._preempted_by_workload = None
70
+ self._preempted_by_workload_uid = None
71
+ self._preempted_pod = None
72
+ self._preempted_pod_uid = None
73
+ self._queue = None
74
+ self._timestamp = None
75
+ self.discriminator = None
76
+ if event_id is not None:
77
+ self.event_id = event_id
78
+ if namespace is not None:
79
+ self.namespace = namespace
80
+ if preempted_by_workload is not None:
81
+ self.preempted_by_workload = preempted_by_workload
82
+ if preempted_by_workload_uid is not None:
83
+ self.preempted_by_workload_uid = preempted_by_workload_uid
84
+ if preempted_pod is not None:
85
+ self.preempted_pod = preempted_pod
86
+ if preempted_pod_uid is not None:
87
+ self.preempted_pod_uid = preempted_pod_uid
88
+ if queue is not None:
89
+ self.queue = queue
90
+ if timestamp is not None:
91
+ self.timestamp = timestamp
92
+
93
+ @property
94
+ def event_id(self) -> 'str':
95
+ """Gets the event_id of this V1PodPreemptionEvent. # noqa: E501
96
+
97
+
98
+ :return: The event_id of this V1PodPreemptionEvent. # noqa: E501
99
+ :rtype: str
100
+ """
101
+ return self._event_id
102
+
103
+ @event_id.setter
104
+ def event_id(self, event_id: 'str'):
105
+ """Sets the event_id of this V1PodPreemptionEvent.
106
+
107
+
108
+ :param event_id: The event_id of this V1PodPreemptionEvent. # noqa: E501
109
+ :type: str
110
+ """
111
+
112
+ self._event_id = event_id
113
+
114
+ @property
115
+ def namespace(self) -> 'str':
116
+ """Gets the namespace of this V1PodPreemptionEvent. # noqa: E501
117
+
118
+
119
+ :return: The namespace of this V1PodPreemptionEvent. # noqa: E501
120
+ :rtype: str
121
+ """
122
+ return self._namespace
123
+
124
+ @namespace.setter
125
+ def namespace(self, namespace: 'str'):
126
+ """Sets the namespace of this V1PodPreemptionEvent.
127
+
128
+
129
+ :param namespace: The namespace of this V1PodPreemptionEvent. # noqa: E501
130
+ :type: str
131
+ """
132
+
133
+ self._namespace = namespace
134
+
135
+ @property
136
+ def preempted_by_workload(self) -> 'str':
137
+ """Gets the preempted_by_workload of this V1PodPreemptionEvent. # noqa: E501
138
+
139
+
140
+ :return: The preempted_by_workload of this V1PodPreemptionEvent. # noqa: E501
141
+ :rtype: str
142
+ """
143
+ return self._preempted_by_workload
144
+
145
+ @preempted_by_workload.setter
146
+ def preempted_by_workload(self, preempted_by_workload: 'str'):
147
+ """Sets the preempted_by_workload of this V1PodPreemptionEvent.
148
+
149
+
150
+ :param preempted_by_workload: The preempted_by_workload of this V1PodPreemptionEvent. # noqa: E501
151
+ :type: str
152
+ """
153
+
154
+ self._preempted_by_workload = preempted_by_workload
155
+
156
+ @property
157
+ def preempted_by_workload_uid(self) -> 'str':
158
+ """Gets the preempted_by_workload_uid of this V1PodPreemptionEvent. # noqa: E501
159
+
160
+
161
+ :return: The preempted_by_workload_uid of this V1PodPreemptionEvent. # noqa: E501
162
+ :rtype: str
163
+ """
164
+ return self._preempted_by_workload_uid
165
+
166
+ @preempted_by_workload_uid.setter
167
+ def preempted_by_workload_uid(self, preempted_by_workload_uid: 'str'):
168
+ """Sets the preempted_by_workload_uid of this V1PodPreemptionEvent.
169
+
170
+
171
+ :param preempted_by_workload_uid: The preempted_by_workload_uid of this V1PodPreemptionEvent. # noqa: E501
172
+ :type: str
173
+ """
174
+
175
+ self._preempted_by_workload_uid = preempted_by_workload_uid
176
+
177
+ @property
178
+ def preempted_pod(self) -> 'str':
179
+ """Gets the preempted_pod of this V1PodPreemptionEvent. # noqa: E501
180
+
181
+
182
+ :return: The preempted_pod of this V1PodPreemptionEvent. # noqa: E501
183
+ :rtype: str
184
+ """
185
+ return self._preempted_pod
186
+
187
+ @preempted_pod.setter
188
+ def preempted_pod(self, preempted_pod: 'str'):
189
+ """Sets the preempted_pod of this V1PodPreemptionEvent.
190
+
191
+
192
+ :param preempted_pod: The preempted_pod of this V1PodPreemptionEvent. # noqa: E501
193
+ :type: str
194
+ """
195
+
196
+ self._preempted_pod = preempted_pod
197
+
198
+ @property
199
+ def preempted_pod_uid(self) -> 'str':
200
+ """Gets the preempted_pod_uid of this V1PodPreemptionEvent. # noqa: E501
201
+
202
+
203
+ :return: The preempted_pod_uid of this V1PodPreemptionEvent. # noqa: E501
204
+ :rtype: str
205
+ """
206
+ return self._preempted_pod_uid
207
+
208
+ @preempted_pod_uid.setter
209
+ def preempted_pod_uid(self, preempted_pod_uid: 'str'):
210
+ """Sets the preempted_pod_uid of this V1PodPreemptionEvent.
211
+
212
+
213
+ :param preempted_pod_uid: The preempted_pod_uid of this V1PodPreemptionEvent. # noqa: E501
214
+ :type: str
215
+ """
216
+
217
+ self._preempted_pod_uid = preempted_pod_uid
218
+
219
+ @property
220
+ def queue(self) -> 'str':
221
+ """Gets the queue of this V1PodPreemptionEvent. # noqa: E501
222
+
223
+
224
+ :return: The queue of this V1PodPreemptionEvent. # noqa: E501
225
+ :rtype: str
226
+ """
227
+ return self._queue
228
+
229
+ @queue.setter
230
+ def queue(self, queue: 'str'):
231
+ """Sets the queue of this V1PodPreemptionEvent.
232
+
233
+
234
+ :param queue: The queue of this V1PodPreemptionEvent. # noqa: E501
235
+ :type: str
236
+ """
237
+
238
+ self._queue = queue
239
+
240
+ @property
241
+ def timestamp(self) -> 'datetime':
242
+ """Gets the timestamp of this V1PodPreemptionEvent. # noqa: E501
243
+
244
+
245
+ :return: The timestamp of this V1PodPreemptionEvent. # noqa: E501
246
+ :rtype: datetime
247
+ """
248
+ return self._timestamp
249
+
250
+ @timestamp.setter
251
+ def timestamp(self, timestamp: 'datetime'):
252
+ """Sets the timestamp of this V1PodPreemptionEvent.
253
+
254
+
255
+ :param timestamp: The timestamp of this V1PodPreemptionEvent. # noqa: E501
256
+ :type: datetime
257
+ """
258
+
259
+ self._timestamp = timestamp
260
+
261
+ def to_dict(self) -> dict:
262
+ """Returns the model properties as a dict"""
263
+ result = {}
264
+
265
+ for attr, _ in six.iteritems(self.swagger_types):
266
+ value = getattr(self, attr)
267
+ if isinstance(value, list):
268
+ result[attr] = list(map(
269
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
270
+ value
271
+ ))
272
+ elif hasattr(value, "to_dict"):
273
+ result[attr] = value.to_dict()
274
+ elif isinstance(value, dict):
275
+ result[attr] = dict(map(
276
+ lambda item: (item[0], item[1].to_dict())
277
+ if hasattr(item[1], "to_dict") else item,
278
+ value.items()
279
+ ))
280
+ else:
281
+ result[attr] = value
282
+ if issubclass(V1PodPreemptionEvent, dict):
283
+ for key, value in self.items():
284
+ result[key] = value
285
+
286
+ return result
287
+
288
+ def to_str(self) -> str:
289
+ """Returns the string representation of the model"""
290
+ return pprint.pformat(self.to_dict())
291
+
292
+ def __repr__(self) -> str:
293
+ """For `print` and `pprint`"""
294
+ return self.to_str()
295
+
296
+ def __eq__(self, other: 'V1PodPreemptionEvent') -> bool:
297
+ """Returns true if both objects are equal"""
298
+ if not isinstance(other, V1PodPreemptionEvent):
299
+ return False
300
+
301
+ return self.__dict__ == other.__dict__
302
+
303
+ def __ne__(self, other: 'V1PodPreemptionEvent') -> bool:
304
+ """Returns true if both objects are not equal"""
305
+ return not self == other
@@ -63,7 +63,6 @@ class V1ProjectMembership(object):
63
63
  'name': 'str',
64
64
  'next_free_credits_grant': 'str',
65
65
  'organization': 'str',
66
- 'organization_billing_enabled': 'bool',
67
66
  'owner_id': 'str',
68
67
  'owner_type': 'V1OwnerType',
69
68
  'project_id': 'str',
@@ -97,7 +96,6 @@ class V1ProjectMembership(object):
97
96
  'name': 'name',
98
97
  'next_free_credits_grant': 'nextFreeCreditsGrant',
99
98
  'organization': 'organization',
100
- 'organization_billing_enabled': 'organizationBillingEnabled',
101
99
  'owner_id': 'ownerId',
102
100
  'owner_type': 'ownerType',
103
101
  'project_id': 'projectId',
@@ -108,7 +106,7 @@ class V1ProjectMembership(object):
108
106
  'username': 'username'
109
107
  }
110
108
 
111
- def __init__(self, avatar_url: 'str' =None, balance: 'float' =None, budgeting_enabled: 'bool' =None, created_at: 'datetime' =None, creator_id: 'str' =None, current_storage_bytes: 'str' =None, datastore_count: 'str' =None, description: 'str' =None, display_name: 'str' =None, email: 'str' =None, first_name: 'str' =None, free_credits_enabled: 'bool' =None, free_storage_bytes: 'str' =None, inactive: 'bool' =None, is_default: 'bool' =None, job_count: 'str' =None, job_title: 'str' =None, last_name: 'str' =None, membership_count: 'str' =None, name: 'str' =None, next_free_credits_grant: 'str' =None, organization: 'str' =None, organization_billing_enabled: 'bool' =None, owner_id: 'str' =None, owner_type: 'V1OwnerType' =None, project_id: 'str' =None, quotas: 'V1Quotas' =None, roles: 'list[V1Role]' =None, updated_at: 'datetime' =None, user_id: 'str' =None, username: 'str' =None): # noqa: E501
109
+ def __init__(self, avatar_url: 'str' =None, balance: 'float' =None, budgeting_enabled: 'bool' =None, created_at: 'datetime' =None, creator_id: 'str' =None, current_storage_bytes: 'str' =None, datastore_count: 'str' =None, description: 'str' =None, display_name: 'str' =None, email: 'str' =None, first_name: 'str' =None, free_credits_enabled: 'bool' =None, free_storage_bytes: 'str' =None, inactive: 'bool' =None, is_default: 'bool' =None, job_count: 'str' =None, job_title: 'str' =None, last_name: 'str' =None, membership_count: 'str' =None, name: 'str' =None, next_free_credits_grant: 'str' =None, organization: 'str' =None, owner_id: 'str' =None, owner_type: 'V1OwnerType' =None, project_id: 'str' =None, quotas: 'V1Quotas' =None, roles: 'list[V1Role]' =None, updated_at: 'datetime' =None, user_id: 'str' =None, username: 'str' =None): # noqa: E501
112
110
  """V1ProjectMembership - a model defined in Swagger""" # noqa: E501
113
111
  self._avatar_url = None
114
112
  self._balance = None
@@ -132,7 +130,6 @@ class V1ProjectMembership(object):
132
130
  self._name = None
133
131
  self._next_free_credits_grant = None
134
132
  self._organization = None
135
- self._organization_billing_enabled = None
136
133
  self._owner_id = None
137
134
  self._owner_type = None
138
135
  self._project_id = None
@@ -186,8 +183,6 @@ class V1ProjectMembership(object):
186
183
  self.next_free_credits_grant = next_free_credits_grant
187
184
  if organization is not None:
188
185
  self.organization = organization
189
- if organization_billing_enabled is not None:
190
- self.organization_billing_enabled = organization_billing_enabled
191
186
  if owner_id is not None:
192
187
  self.owner_id = owner_id
193
188
  if owner_type is not None:
@@ -667,27 +662,6 @@ class V1ProjectMembership(object):
667
662
 
668
663
  self._organization = organization
669
664
 
670
- @property
671
- def organization_billing_enabled(self) -> 'bool':
672
- """Gets the organization_billing_enabled of this V1ProjectMembership. # noqa: E501
673
-
674
-
675
- :return: The organization_billing_enabled of this V1ProjectMembership. # noqa: E501
676
- :rtype: bool
677
- """
678
- return self._organization_billing_enabled
679
-
680
- @organization_billing_enabled.setter
681
- def organization_billing_enabled(self, organization_billing_enabled: 'bool'):
682
- """Sets the organization_billing_enabled of this V1ProjectMembership.
683
-
684
-
685
- :param organization_billing_enabled: The organization_billing_enabled of this V1ProjectMembership. # noqa: E501
686
- :type: bool
687
- """
688
-
689
- self._organization_billing_enabled = organization_billing_enabled
690
-
691
665
  @property
692
666
  def owner_id(self) -> 'str':
693
667
  """Gets the owner_id of this V1ProjectMembership. # noqa: E501
@@ -57,7 +57,6 @@ class V1ProjectSettings(object):
57
57
  'budgeting_enabled': 'bool',
58
58
  'default_machine_image_version': 'str',
59
59
  'default_machine_type': 'str',
60
- 'organization_billing_enabled': 'bool',
61
60
  'preferred_cluster': 'str',
62
61
  'preferred_deployment_provider': 'str',
63
62
  'preferred_studio_provider': 'str',
@@ -83,7 +82,6 @@ class V1ProjectSettings(object):
83
82
  'budgeting_enabled': 'budgetingEnabled',
84
83
  'default_machine_image_version': 'defaultMachineImageVersion',
85
84
  'default_machine_type': 'defaultMachineType',
86
- 'organization_billing_enabled': 'organizationBillingEnabled',
87
85
  'preferred_cluster': 'preferredCluster',
88
86
  'preferred_deployment_provider': 'preferredDeploymentProvider',
89
87
  'preferred_studio_provider': 'preferredStudioProvider',
@@ -92,7 +90,7 @@ class V1ProjectSettings(object):
92
90
  'switch_to_default_machine_on_idle': 'switchToDefaultMachineOnIdle'
93
91
  }
94
92
 
95
- def __init__(self, allow_aws_saas: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_nebius_saas: 'bool' =None, allow_voltage_park_saas: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, auto_switch_machine: 'bool' =None, budgeting_enabled: 'bool' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, organization_billing_enabled: 'bool' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, same_compute_on_resume: 'bool' =None, start_studio_on_spot_instance: 'bool' =None, switch_to_default_machine_on_idle: 'bool' =None): # noqa: E501
93
+ def __init__(self, allow_aws_saas: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_nebius_saas: 'bool' =None, allow_voltage_park_saas: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, auto_switch_machine: 'bool' =None, budgeting_enabled: 'bool' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, same_compute_on_resume: 'bool' =None, start_studio_on_spot_instance: 'bool' =None, switch_to_default_machine_on_idle: 'bool' =None): # noqa: E501
96
94
  """V1ProjectSettings - a model defined in Swagger""" # noqa: E501
97
95
  self._allow_aws_saas = None
98
96
  self._allow_credits_auto_replenish = None
@@ -110,7 +108,6 @@ class V1ProjectSettings(object):
110
108
  self._budgeting_enabled = None
111
109
  self._default_machine_image_version = None
112
110
  self._default_machine_type = None
113
- self._organization_billing_enabled = None
114
111
  self._preferred_cluster = None
115
112
  self._preferred_deployment_provider = None
116
113
  self._preferred_studio_provider = None
@@ -150,8 +147,6 @@ class V1ProjectSettings(object):
150
147
  self.default_machine_image_version = default_machine_image_version
151
148
  if default_machine_type is not None:
152
149
  self.default_machine_type = default_machine_type
153
- if organization_billing_enabled is not None:
154
- self.organization_billing_enabled = organization_billing_enabled
155
150
  if preferred_cluster is not None:
156
151
  self.preferred_cluster = preferred_cluster
157
152
  if preferred_deployment_provider is not None:
@@ -503,27 +498,6 @@ class V1ProjectSettings(object):
503
498
 
504
499
  self._default_machine_type = default_machine_type
505
500
 
506
- @property
507
- def organization_billing_enabled(self) -> 'bool':
508
- """Gets the organization_billing_enabled of this V1ProjectSettings. # noqa: E501
509
-
510
-
511
- :return: The organization_billing_enabled of this V1ProjectSettings. # noqa: E501
512
- :rtype: bool
513
- """
514
- return self._organization_billing_enabled
515
-
516
- @organization_billing_enabled.setter
517
- def organization_billing_enabled(self, organization_billing_enabled: 'bool'):
518
- """Sets the organization_billing_enabled of this V1ProjectSettings.
519
-
520
-
521
- :param organization_billing_enabled: The organization_billing_enabled of this V1ProjectSettings. # noqa: E501
522
- :type: bool
523
- """
524
-
525
- self._organization_billing_enabled = organization_billing_enabled
526
-
527
501
  @property
528
502
  def preferred_cluster(self) -> 'str':
529
503
  """Gets the preferred_cluster of this V1ProjectSettings. # noqa: E501