lightning-sdk 0.2.22__py3-none-any.whl → 0.2.24rc0__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 (101) 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/license_api.py +2 -2
  5. lightning_sdk/api/llm_api.py +7 -11
  6. lightning_sdk/api/pipeline_api.py +31 -10
  7. lightning_sdk/api/studio_api.py +6 -0
  8. lightning_sdk/base_studio.py +22 -6
  9. lightning_sdk/cli/entrypoint.py +15 -13
  10. lightning_sdk/cli/start.py +5 -2
  11. lightning_sdk/deployment/deployment.py +17 -7
  12. lightning_sdk/lightning_cloud/openapi/__init__.py +20 -0
  13. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  14. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +114 -1
  15. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +206 -0
  16. lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +129 -0
  17. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +97 -0
  18. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +105 -0
  19. lightning_sdk/lightning_cloud/openapi/api/pipelines_service_api.py +118 -1
  20. lightning_sdk/lightning_cloud/openapi/api/user_service_api.py +105 -0
  21. lightning_sdk/lightning_cloud/openapi/configuration.py +1 -1
  22. lightning_sdk/lightning_cloud/openapi/models/__init__.py +19 -0
  23. lightning_sdk/lightning_cloud/openapi/models/agents_id_body.py +27 -1
  24. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +81 -3
  25. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_visibility_body.py +123 -0
  26. lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a_spec_for_the_job_that_allows_for_autoscaling_jobs.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/credits_autoreplenish_body.py +175 -0
  28. lightning_sdk/lightning_cloud/openapi/models/credits_autoreplenish_body1.py +175 -0
  29. lightning_sdk/lightning_cloud/openapi/models/externalv1_user_status.py +79 -1
  30. lightning_sdk/lightning_cloud/openapi/models/metricsstream_create_body.py +27 -1
  31. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/pipelines_id_body.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/pipelines_id_body1.py +123 -0
  34. lightning_sdk/lightning_cloud/openapi/models/project_id_agents_body.py +27 -1
  35. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +53 -1
  36. lightning_sdk/lightning_cloud/openapi/models/update.py +29 -3
  37. lightning_sdk/lightning_cloud/openapi/models/v1_assistant.py +27 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_check_cluster_name_availability_request.py +123 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_check_cluster_name_availability_response.py +123 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +2 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +79 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_config.py +29 -3
  43. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +29 -3
  44. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_session.py +29 -3
  46. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +104 -0
  47. lightning_sdk/lightning_cloud/openapi/models/v1_cloudy_expert.py +279 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +79 -1
  49. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +105 -1
  52. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_status.py +27 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +29 -3
  54. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +29 -3
  55. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_request.py +27 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_create_organization_request.py +79 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_status.py +47 -21
  58. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster.py +253 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +853 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_get_job_stats_response.py +53 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_instance_overprovisioning_spec.py +29 -27
  63. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +123 -0
  64. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1_status.py +149 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_lightning_run.py +53 -1
  66. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloudy_experts_response.py +123 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_list_clusters_response.py +6 -6
  68. lightning_sdk/lightning_cloud/openapi/models/v1_list_project_clusters_response.py +6 -6
  69. lightning_sdk/lightning_cloud/openapi/models/v1_lite_published_cloud_space_response.py +513 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_login_request.py +27 -1
  71. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +29 -3
  72. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_response.py +27 -1
  73. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +27 -1
  74. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  75. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline.py +27 -1
  76. lightning_sdk/lightning_cloud/openapi/models/v1_shared_filesystem.py +131 -1
  77. lightning_sdk/lightning_cloud/openapi/models/v1_token_usage.py +175 -0
  78. lightning_sdk/lightning_cloud/openapi/models/v1_update_cloud_space_visibility_response.py +97 -0
  79. lightning_sdk/lightning_cloud/openapi/models/v1_update_organization_credits_auto_replenish_response.py +97 -0
  80. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_credits_auto_replenish_response.py +97 -0
  81. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +27 -1
  82. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +234 -104
  83. lightning_sdk/lightning_cloud/openapi/models/v1_volume.py +78 -104
  84. lightning_sdk/lightning_cloud/openapi/models/v1_volume_state.py +104 -0
  85. lightning_sdk/llm/llm.py +113 -115
  86. lightning_sdk/llm/public_assistants.json +8 -0
  87. lightning_sdk/pipeline/__init__.py +11 -2
  88. lightning_sdk/pipeline/pipeline.py +54 -14
  89. lightning_sdk/pipeline/printer.py +36 -16
  90. lightning_sdk/pipeline/schedule.py +2 -1
  91. lightning_sdk/pipeline/{types.py → steps.py} +77 -56
  92. lightning_sdk/pipeline/utils.py +65 -3
  93. lightning_sdk/sandbox.py +157 -0
  94. lightning_sdk/services/license.py +12 -6
  95. lightning_sdk/studio.py +10 -1
  96. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/METADATA +1 -1
  97. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/RECORD +101 -79
  98. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/LICENSE +0 -0
  99. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/WHEEL +0 -0
  100. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/entry_points.txt +0 -0
  101. {lightning_sdk-0.2.22.dist-info → lightning_sdk-0.2.24rc0.dist-info}/top_level.txt +0 -0
@@ -43,21 +43,20 @@ class V1Volume(object):
43
43
  swagger_types = {
44
44
  'attached_at': 'datetime',
45
45
  'availability_zone': 'str',
46
- 'cluster_id': 'str',
47
- 'created_at': 'datetime',
48
46
  'detached_at': 'datetime',
49
47
  'encrypted': 'bool',
50
- 'id': 'str',
51
48
  'iops': 'str',
49
+ 'metadata': 'V1Metadata',
52
50
  'path': 'str',
53
- 'project_id': 'str',
54
51
  'provider': 'str',
55
52
  'provider_id': 'str',
56
53
  'region': 'str',
57
54
  'resource_id': 'str',
58
55
  'resource_type': 'str',
56
+ 'retention_period': 'str',
59
57
  'server_id': 'str',
60
58
  'size_gb': 'str',
59
+ 'state': 'V1VolumeState',
61
60
  'throughput': 'str',
62
61
  'type': 'str',
63
62
  'updated_at': 'datetime',
@@ -67,46 +66,44 @@ class V1Volume(object):
67
66
  attribute_map = {
68
67
  'attached_at': 'attachedAt',
69
68
  'availability_zone': 'availabilityZone',
70
- 'cluster_id': 'clusterId',
71
- 'created_at': 'createdAt',
72
69
  'detached_at': 'detachedAt',
73
70
  'encrypted': 'encrypted',
74
- 'id': 'id',
75
71
  'iops': 'iops',
72
+ 'metadata': 'metadata',
76
73
  'path': 'path',
77
- 'project_id': 'projectId',
78
74
  'provider': 'provider',
79
75
  'provider_id': 'providerId',
80
76
  'region': 'region',
81
77
  'resource_id': 'resourceId',
82
78
  'resource_type': 'resourceType',
79
+ 'retention_period': 'retentionPeriod',
83
80
  'server_id': 'serverId',
84
81
  'size_gb': 'sizeGb',
82
+ 'state': 'state',
85
83
  'throughput': 'throughput',
86
84
  'type': 'type',
87
85
  'updated_at': 'updatedAt',
88
86
  'user_id': 'userId'
89
87
  }
90
88
 
91
- def __init__(self, attached_at: 'datetime' =None, availability_zone: 'str' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, detached_at: 'datetime' =None, encrypted: 'bool' =None, id: 'str' =None, iops: 'str' =None, path: 'str' =None, project_id: 'str' =None, provider: 'str' =None, provider_id: 'str' =None, region: 'str' =None, resource_id: 'str' =None, resource_type: 'str' =None, server_id: 'str' =None, size_gb: 'str' =None, throughput: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
89
+ def __init__(self, attached_at: 'datetime' =None, availability_zone: 'str' =None, detached_at: 'datetime' =None, encrypted: 'bool' =None, iops: 'str' =None, metadata: 'V1Metadata' =None, path: 'str' =None, provider: 'str' =None, provider_id: 'str' =None, region: 'str' =None, resource_id: 'str' =None, resource_type: 'str' =None, retention_period: 'str' =None, server_id: 'str' =None, size_gb: 'str' =None, state: 'V1VolumeState' =None, throughput: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
92
90
  """V1Volume - a model defined in Swagger""" # noqa: E501
93
91
  self._attached_at = None
94
92
  self._availability_zone = None
95
- self._cluster_id = None
96
- self._created_at = None
97
93
  self._detached_at = None
98
94
  self._encrypted = None
99
- self._id = None
100
95
  self._iops = None
96
+ self._metadata = None
101
97
  self._path = None
102
- self._project_id = None
103
98
  self._provider = None
104
99
  self._provider_id = None
105
100
  self._region = None
106
101
  self._resource_id = None
107
102
  self._resource_type = None
103
+ self._retention_period = None
108
104
  self._server_id = None
109
105
  self._size_gb = None
106
+ self._state = None
110
107
  self._throughput = None
111
108
  self._type = None
112
109
  self._updated_at = None
@@ -116,22 +113,16 @@ class V1Volume(object):
116
113
  self.attached_at = attached_at
117
114
  if availability_zone is not None:
118
115
  self.availability_zone = availability_zone
119
- if cluster_id is not None:
120
- self.cluster_id = cluster_id
121
- if created_at is not None:
122
- self.created_at = created_at
123
116
  if detached_at is not None:
124
117
  self.detached_at = detached_at
125
118
  if encrypted is not None:
126
119
  self.encrypted = encrypted
127
- if id is not None:
128
- self.id = id
129
120
  if iops is not None:
130
121
  self.iops = iops
122
+ if metadata is not None:
123
+ self.metadata = metadata
131
124
  if path is not None:
132
125
  self.path = path
133
- if project_id is not None:
134
- self.project_id = project_id
135
126
  if provider is not None:
136
127
  self.provider = provider
137
128
  if provider_id is not None:
@@ -142,10 +133,14 @@ class V1Volume(object):
142
133
  self.resource_id = resource_id
143
134
  if resource_type is not None:
144
135
  self.resource_type = resource_type
136
+ if retention_period is not None:
137
+ self.retention_period = retention_period
145
138
  if server_id is not None:
146
139
  self.server_id = server_id
147
140
  if size_gb is not None:
148
141
  self.size_gb = size_gb
142
+ if state is not None:
143
+ self.state = state
149
144
  if throughput is not None:
150
145
  self.throughput = throughput
151
146
  if type is not None:
@@ -197,48 +192,6 @@ class V1Volume(object):
197
192
 
198
193
  self._availability_zone = availability_zone
199
194
 
200
- @property
201
- def cluster_id(self) -> 'str':
202
- """Gets the cluster_id of this V1Volume. # noqa: E501
203
-
204
-
205
- :return: The cluster_id of this V1Volume. # noqa: E501
206
- :rtype: str
207
- """
208
- return self._cluster_id
209
-
210
- @cluster_id.setter
211
- def cluster_id(self, cluster_id: 'str'):
212
- """Sets the cluster_id of this V1Volume.
213
-
214
-
215
- :param cluster_id: The cluster_id of this V1Volume. # noqa: E501
216
- :type: str
217
- """
218
-
219
- self._cluster_id = cluster_id
220
-
221
- @property
222
- def created_at(self) -> 'datetime':
223
- """Gets the created_at of this V1Volume. # noqa: E501
224
-
225
-
226
- :return: The created_at of this V1Volume. # noqa: E501
227
- :rtype: datetime
228
- """
229
- return self._created_at
230
-
231
- @created_at.setter
232
- def created_at(self, created_at: 'datetime'):
233
- """Sets the created_at of this V1Volume.
234
-
235
-
236
- :param created_at: The created_at of this V1Volume. # noqa: E501
237
- :type: datetime
238
- """
239
-
240
- self._created_at = created_at
241
-
242
195
  @property
243
196
  def detached_at(self) -> 'datetime':
244
197
  """Gets the detached_at of this V1Volume. # noqa: E501
@@ -281,27 +234,6 @@ class V1Volume(object):
281
234
 
282
235
  self._encrypted = encrypted
283
236
 
284
- @property
285
- def id(self) -> 'str':
286
- """Gets the id of this V1Volume. # noqa: E501
287
-
288
-
289
- :return: The id of this V1Volume. # noqa: E501
290
- :rtype: str
291
- """
292
- return self._id
293
-
294
- @id.setter
295
- def id(self, id: 'str'):
296
- """Sets the id of this V1Volume.
297
-
298
-
299
- :param id: The id of this V1Volume. # noqa: E501
300
- :type: str
301
- """
302
-
303
- self._id = id
304
-
305
237
  @property
306
238
  def iops(self) -> 'str':
307
239
  """Gets the iops of this V1Volume. # noqa: E501
@@ -324,46 +256,46 @@ class V1Volume(object):
324
256
  self._iops = iops
325
257
 
326
258
  @property
327
- def path(self) -> 'str':
328
- """Gets the path of this V1Volume. # noqa: E501
259
+ def metadata(self) -> 'V1Metadata':
260
+ """Gets the metadata of this V1Volume. # noqa: E501
329
261
 
330
262
 
331
- :return: The path of this V1Volume. # noqa: E501
332
- :rtype: str
263
+ :return: The metadata of this V1Volume. # noqa: E501
264
+ :rtype: V1Metadata
333
265
  """
334
- return self._path
266
+ return self._metadata
335
267
 
336
- @path.setter
337
- def path(self, path: 'str'):
338
- """Sets the path of this V1Volume.
268
+ @metadata.setter
269
+ def metadata(self, metadata: 'V1Metadata'):
270
+ """Sets the metadata of this V1Volume.
339
271
 
340
272
 
341
- :param path: The path of this V1Volume. # noqa: E501
342
- :type: str
273
+ :param metadata: The metadata of this V1Volume. # noqa: E501
274
+ :type: V1Metadata
343
275
  """
344
276
 
345
- self._path = path
277
+ self._metadata = metadata
346
278
 
347
279
  @property
348
- def project_id(self) -> 'str':
349
- """Gets the project_id of this V1Volume. # noqa: E501
280
+ def path(self) -> 'str':
281
+ """Gets the path of this V1Volume. # noqa: E501
350
282
 
351
283
 
352
- :return: The project_id of this V1Volume. # noqa: E501
284
+ :return: The path of this V1Volume. # noqa: E501
353
285
  :rtype: str
354
286
  """
355
- return self._project_id
287
+ return self._path
356
288
 
357
- @project_id.setter
358
- def project_id(self, project_id: 'str'):
359
- """Sets the project_id of this V1Volume.
289
+ @path.setter
290
+ def path(self, path: 'str'):
291
+ """Sets the path of this V1Volume.
360
292
 
361
293
 
362
- :param project_id: The project_id of this V1Volume. # noqa: E501
294
+ :param path: The path of this V1Volume. # noqa: E501
363
295
  :type: str
364
296
  """
365
297
 
366
- self._project_id = project_id
298
+ self._path = path
367
299
 
368
300
  @property
369
301
  def provider(self) -> 'str':
@@ -470,6 +402,27 @@ class V1Volume(object):
470
402
 
471
403
  self._resource_type = resource_type
472
404
 
405
+ @property
406
+ def retention_period(self) -> 'str':
407
+ """Gets the retention_period of this V1Volume. # noqa: E501
408
+
409
+
410
+ :return: The retention_period of this V1Volume. # noqa: E501
411
+ :rtype: str
412
+ """
413
+ return self._retention_period
414
+
415
+ @retention_period.setter
416
+ def retention_period(self, retention_period: 'str'):
417
+ """Sets the retention_period of this V1Volume.
418
+
419
+
420
+ :param retention_period: The retention_period of this V1Volume. # noqa: E501
421
+ :type: str
422
+ """
423
+
424
+ self._retention_period = retention_period
425
+
473
426
  @property
474
427
  def server_id(self) -> 'str':
475
428
  """Gets the server_id of this V1Volume. # noqa: E501
@@ -512,6 +465,27 @@ class V1Volume(object):
512
465
 
513
466
  self._size_gb = size_gb
514
467
 
468
+ @property
469
+ def state(self) -> 'V1VolumeState':
470
+ """Gets the state of this V1Volume. # noqa: E501
471
+
472
+
473
+ :return: The state of this V1Volume. # noqa: E501
474
+ :rtype: V1VolumeState
475
+ """
476
+ return self._state
477
+
478
+ @state.setter
479
+ def state(self, state: 'V1VolumeState'):
480
+ """Sets the state of this V1Volume.
481
+
482
+
483
+ :param state: The state of this V1Volume. # noqa: E501
484
+ :type: V1VolumeState
485
+ """
486
+
487
+ self._state = state
488
+
515
489
  @property
516
490
  def throughput(self) -> 'str':
517
491
  """Gets the throughput of this V1Volume. # noqa: E501
@@ -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 V1VolumeState(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 = "VOLUME_STATE_UNSPECIFIED"
41
+ ATTACHED = "VOLUME_STATE_ATTACHED"
42
+ DETACHED = "VOLUME_STATE_DETACHED"
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
+ """V1VolumeState - 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(V1VolumeState, 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: 'V1VolumeState') -> bool:
96
+ """Returns true if both objects are equal"""
97
+ if not isinstance(other, V1VolumeState):
98
+ return False
99
+
100
+ return self.__dict__ == other.__dict__
101
+
102
+ def __ne__(self, other: 'V1VolumeState') -> bool:
103
+ """Returns true if both objects are not equal"""
104
+ return not self == other