lightning-sdk 0.1.57__py3-none-any.whl → 0.2.0__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 (118) hide show
  1. lightning_sdk/__init__.py +5 -3
  2. lightning_sdk/api/deployment_api.py +23 -11
  3. lightning_sdk/api/job_api.py +42 -7
  4. lightning_sdk/api/lit_container_api.py +88 -22
  5. lightning_sdk/api/mmt_api.py +46 -8
  6. lightning_sdk/api/pipeline_api.py +50 -0
  7. lightning_sdk/api/teamspace_api.py +2 -2
  8. lightning_sdk/api/utils.py +15 -5
  9. lightning_sdk/cli/ai_hub.py +30 -65
  10. lightning_sdk/cli/coloring.py +60 -0
  11. lightning_sdk/cli/configure.py +25 -40
  12. lightning_sdk/cli/connect.py +7 -20
  13. lightning_sdk/cli/create.py +83 -0
  14. lightning_sdk/cli/delete.py +72 -75
  15. lightning_sdk/cli/docker.py +77 -0
  16. lightning_sdk/cli/download.py +71 -111
  17. lightning_sdk/cli/entrypoint.py +44 -65
  18. lightning_sdk/cli/generate.py +28 -43
  19. lightning_sdk/cli/inspect.py +22 -50
  20. lightning_sdk/cli/list.py +281 -222
  21. lightning_sdk/cli/mmts_menu.py +1 -1
  22. lightning_sdk/cli/open.py +62 -0
  23. lightning_sdk/cli/run.py +430 -263
  24. lightning_sdk/cli/serve.py +162 -189
  25. lightning_sdk/cli/start.py +55 -36
  26. lightning_sdk/cli/stop.py +97 -55
  27. lightning_sdk/cli/switch.py +53 -36
  28. lightning_sdk/cli/upload.py +318 -245
  29. lightning_sdk/deployment/__init__.py +2 -0
  30. lightning_sdk/deployment/deployment.py +33 -8
  31. lightning_sdk/lightning_cloud/openapi/__init__.py +21 -0
  32. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  33. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +10 -6
  34. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +355 -4
  35. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +4 -4
  36. lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +14 -2
  37. lightning_sdk/lightning_cloud/openapi/api/pipelines_service_api.py +670 -0
  38. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +303 -4
  39. lightning_sdk/lightning_cloud/openapi/models/__init__.py +20 -0
  40. lightning_sdk/lightning_cloud/openapi/models/agents_id_body.py +17 -69
  41. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityreservations_body.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/create.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/create_deployment_request_defines_a_spec_for_the_job_that_allows_for_autoscaling_jobs.py +53 -1
  44. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +105 -1
  45. lightning_sdk/lightning_cloud/openapi/models/id_visibility_body1.py +1 -27
  46. lightning_sdk/lightning_cloud/openapi/models/id_visibility_body2.py +149 -0
  47. lightning_sdk/lightning_cloud/openapi/models/org_id_memberships_body.py +27 -1
  48. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +157 -1
  49. lightning_sdk/lightning_cloud/openapi/models/pipelines_id_body.py +435 -0
  50. lightning_sdk/lightning_cloud/openapi/models/project_id_pipelines_body.py +201 -0
  51. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +157 -1
  52. lightning_sdk/lightning_cloud/openapi/models/slurm_jobs_body.py +79 -1
  53. lightning_sdk/lightning_cloud/openapi/models/uploads_upload_id_body.py +1 -27
  54. lightning_sdk/lightning_cloud/openapi/models/uploads_upload_id_body1.py +175 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_agent_job.py +79 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_assistant.py +17 -69
  57. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_block_offering.py +27 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_artifact_event_type.py +1 -1
  59. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +131 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +79 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_complete_upload_temporary_artifact_request.py +175 -0
  63. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_request.py +461 -0
  64. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +27 -1
  65. lightning_sdk/lightning_cloud/openapi/models/v1_create_job_request.py +201 -0
  66. lightning_sdk/lightning_cloud/openapi/models/v1_create_managed_endpoint_response.py +149 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_create_multi_machine_job_request.py +253 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_delete_pipeline_response.py +149 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +105 -1
  71. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_details.py +175 -0
  72. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +53 -1
  73. lightning_sdk/lightning_cloud/openapi/models/v1_filestore_data_connection.py +201 -0
  74. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_job.py +27 -1
  75. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_mmt.py +27 -1
  76. lightning_sdk/lightning_cloud/openapi/models/v1_find_capacity_block_offering_response.py +29 -3
  77. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +133 -3
  78. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +53 -1
  79. lightning_sdk/lightning_cloud/openapi/models/v1_job_timing.py +27 -1
  80. lightning_sdk/lightning_cloud/openapi/models/v1_list_pipelines_response.py +123 -0
  81. lightning_sdk/lightning_cloud/openapi/models/v1_lit_registry_artifact.py +27 -1
  82. lightning_sdk/lightning_cloud/openapi/models/v1_lit_repository.py +29 -1
  83. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +27 -1
  84. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +27 -1
  85. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +2 -0
  86. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +157 -1
  87. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline.py +487 -0
  88. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_step.py +253 -0
  89. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_step_status.py +331 -0
  90. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_step_type.py +104 -0
  91. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +157 -1
  92. lightning_sdk/lightning_cloud/openapi/models/v1_restart_timing.py +27 -1
  93. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  94. lightning_sdk/lightning_cloud/openapi/models/v1_shared_filesystem.py +201 -0
  95. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_job.py +27 -1
  96. lightning_sdk/lightning_cloud/openapi/models/v1_update_job_visibility_response.py +97 -0
  97. lightning_sdk/lightning_cloud/openapi/models/v1_upload_temporary_artifact_request.py +123 -0
  98. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +95 -355
  99. lightning_sdk/lightning_cloud/openapi/models/validate.py +27 -1
  100. lightning_sdk/lightning_cloud/rest_client.py +4 -2
  101. lightning_sdk/machine.py +25 -1
  102. lightning_sdk/models.py +18 -12
  103. lightning_sdk/pipeline/__init__.py +4 -0
  104. lightning_sdk/pipeline/pipeline.py +109 -0
  105. lightning_sdk/pipeline/types.py +268 -0
  106. lightning_sdk/pipeline/utils.py +69 -0
  107. lightning_sdk/plugin.py +9 -10
  108. lightning_sdk/services/utilities.py +2 -2
  109. lightning_sdk/studio.py +5 -1
  110. lightning_sdk/teamspace.py +1 -1
  111. lightning_sdk/utils/resolve.py +12 -1
  112. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/METADATA +6 -8
  113. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/RECORD +117 -88
  114. lightning_sdk/cli/legacy.py +0 -135
  115. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/LICENSE +0 -0
  116. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/WHEEL +0 -0
  117. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/entry_points.txt +0 -0
  118. {lightning_sdk-0.1.57.dist-info → lightning_sdk-0.2.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,487 @@
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 V1Pipeline(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
+ 'cluster_id': 'str',
45
+ 'created_at': 'datetime',
46
+ 'display_name': 'str',
47
+ 'error': 'str',
48
+ 'id': 'str',
49
+ 'message': 'str',
50
+ 'name': 'str',
51
+ 'parent_id': 'str',
52
+ 'project_id': 'str',
53
+ 'shared_filesystem': 'V1SharedFilesystem',
54
+ 'state': 'str',
55
+ 'statuses': 'list[V1PipelineStepStatus]',
56
+ 'steps': 'list[V1PipelineStep]',
57
+ 'updated_at': 'datetime',
58
+ 'user_id': 'str'
59
+ }
60
+
61
+ attribute_map = {
62
+ 'cluster_id': 'clusterId',
63
+ 'created_at': 'createdAt',
64
+ 'display_name': 'displayName',
65
+ 'error': 'error',
66
+ 'id': 'id',
67
+ 'message': 'message',
68
+ 'name': 'name',
69
+ 'parent_id': 'parentId',
70
+ 'project_id': 'projectId',
71
+ 'shared_filesystem': 'sharedFilesystem',
72
+ 'state': 'state',
73
+ 'statuses': 'statuses',
74
+ 'steps': 'steps',
75
+ 'updated_at': 'updatedAt',
76
+ 'user_id': 'userId'
77
+ }
78
+
79
+ def __init__(self, cluster_id: 'str' =None, created_at: 'datetime' =None, display_name: 'str' =None, error: 'str' =None, id: 'str' =None, message: 'str' =None, name: 'str' =None, parent_id: 'str' =None, project_id: 'str' =None, shared_filesystem: 'V1SharedFilesystem' =None, state: 'str' =None, statuses: 'list[V1PipelineStepStatus]' =None, steps: 'list[V1PipelineStep]' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
80
+ """V1Pipeline - a model defined in Swagger""" # noqa: E501
81
+ self._cluster_id = None
82
+ self._created_at = None
83
+ self._display_name = None
84
+ self._error = None
85
+ self._id = None
86
+ self._message = None
87
+ self._name = None
88
+ self._parent_id = None
89
+ self._project_id = None
90
+ self._shared_filesystem = None
91
+ self._state = None
92
+ self._statuses = None
93
+ self._steps = None
94
+ self._updated_at = None
95
+ self._user_id = None
96
+ self.discriminator = None
97
+ if cluster_id is not None:
98
+ self.cluster_id = cluster_id
99
+ if created_at is not None:
100
+ self.created_at = created_at
101
+ if display_name is not None:
102
+ self.display_name = display_name
103
+ if error is not None:
104
+ self.error = error
105
+ if id is not None:
106
+ self.id = id
107
+ if message is not None:
108
+ self.message = message
109
+ if name is not None:
110
+ self.name = name
111
+ if parent_id is not None:
112
+ self.parent_id = parent_id
113
+ if project_id is not None:
114
+ self.project_id = project_id
115
+ if shared_filesystem is not None:
116
+ self.shared_filesystem = shared_filesystem
117
+ if state is not None:
118
+ self.state = state
119
+ if statuses is not None:
120
+ self.statuses = statuses
121
+ if steps is not None:
122
+ self.steps = steps
123
+ if updated_at is not None:
124
+ self.updated_at = updated_at
125
+ if user_id is not None:
126
+ self.user_id = user_id
127
+
128
+ @property
129
+ def cluster_id(self) -> 'str':
130
+ """Gets the cluster_id of this V1Pipeline. # noqa: E501
131
+
132
+
133
+ :return: The cluster_id of this V1Pipeline. # noqa: E501
134
+ :rtype: str
135
+ """
136
+ return self._cluster_id
137
+
138
+ @cluster_id.setter
139
+ def cluster_id(self, cluster_id: 'str'):
140
+ """Sets the cluster_id of this V1Pipeline.
141
+
142
+
143
+ :param cluster_id: The cluster_id of this V1Pipeline. # noqa: E501
144
+ :type: str
145
+ """
146
+
147
+ self._cluster_id = cluster_id
148
+
149
+ @property
150
+ def created_at(self) -> 'datetime':
151
+ """Gets the created_at of this V1Pipeline. # noqa: E501
152
+
153
+
154
+ :return: The created_at of this V1Pipeline. # noqa: E501
155
+ :rtype: datetime
156
+ """
157
+ return self._created_at
158
+
159
+ @created_at.setter
160
+ def created_at(self, created_at: 'datetime'):
161
+ """Sets the created_at of this V1Pipeline.
162
+
163
+
164
+ :param created_at: The created_at of this V1Pipeline. # noqa: E501
165
+ :type: datetime
166
+ """
167
+
168
+ self._created_at = created_at
169
+
170
+ @property
171
+ def display_name(self) -> 'str':
172
+ """Gets the display_name of this V1Pipeline. # noqa: E501
173
+
174
+
175
+ :return: The display_name of this V1Pipeline. # noqa: E501
176
+ :rtype: str
177
+ """
178
+ return self._display_name
179
+
180
+ @display_name.setter
181
+ def display_name(self, display_name: 'str'):
182
+ """Sets the display_name of this V1Pipeline.
183
+
184
+
185
+ :param display_name: The display_name of this V1Pipeline. # noqa: E501
186
+ :type: str
187
+ """
188
+
189
+ self._display_name = display_name
190
+
191
+ @property
192
+ def error(self) -> 'str':
193
+ """Gets the error of this V1Pipeline. # noqa: E501
194
+
195
+
196
+ :return: The error of this V1Pipeline. # noqa: E501
197
+ :rtype: str
198
+ """
199
+ return self._error
200
+
201
+ @error.setter
202
+ def error(self, error: 'str'):
203
+ """Sets the error of this V1Pipeline.
204
+
205
+
206
+ :param error: The error of this V1Pipeline. # noqa: E501
207
+ :type: str
208
+ """
209
+
210
+ self._error = error
211
+
212
+ @property
213
+ def id(self) -> 'str':
214
+ """Gets the id of this V1Pipeline. # noqa: E501
215
+
216
+
217
+ :return: The id of this V1Pipeline. # noqa: E501
218
+ :rtype: str
219
+ """
220
+ return self._id
221
+
222
+ @id.setter
223
+ def id(self, id: 'str'):
224
+ """Sets the id of this V1Pipeline.
225
+
226
+
227
+ :param id: The id of this V1Pipeline. # noqa: E501
228
+ :type: str
229
+ """
230
+
231
+ self._id = id
232
+
233
+ @property
234
+ def message(self) -> 'str':
235
+ """Gets the message of this V1Pipeline. # noqa: E501
236
+
237
+
238
+ :return: The message of this V1Pipeline. # noqa: E501
239
+ :rtype: str
240
+ """
241
+ return self._message
242
+
243
+ @message.setter
244
+ def message(self, message: 'str'):
245
+ """Sets the message of this V1Pipeline.
246
+
247
+
248
+ :param message: The message of this V1Pipeline. # noqa: E501
249
+ :type: str
250
+ """
251
+
252
+ self._message = message
253
+
254
+ @property
255
+ def name(self) -> 'str':
256
+ """Gets the name of this V1Pipeline. # noqa: E501
257
+
258
+
259
+ :return: The name of this V1Pipeline. # noqa: E501
260
+ :rtype: str
261
+ """
262
+ return self._name
263
+
264
+ @name.setter
265
+ def name(self, name: 'str'):
266
+ """Sets the name of this V1Pipeline.
267
+
268
+
269
+ :param name: The name of this V1Pipeline. # noqa: E501
270
+ :type: str
271
+ """
272
+
273
+ self._name = name
274
+
275
+ @property
276
+ def parent_id(self) -> 'str':
277
+ """Gets the parent_id of this V1Pipeline. # noqa: E501
278
+
279
+
280
+ :return: The parent_id of this V1Pipeline. # noqa: E501
281
+ :rtype: str
282
+ """
283
+ return self._parent_id
284
+
285
+ @parent_id.setter
286
+ def parent_id(self, parent_id: 'str'):
287
+ """Sets the parent_id of this V1Pipeline.
288
+
289
+
290
+ :param parent_id: The parent_id of this V1Pipeline. # noqa: E501
291
+ :type: str
292
+ """
293
+
294
+ self._parent_id = parent_id
295
+
296
+ @property
297
+ def project_id(self) -> 'str':
298
+ """Gets the project_id of this V1Pipeline. # noqa: E501
299
+
300
+
301
+ :return: The project_id of this V1Pipeline. # noqa: E501
302
+ :rtype: str
303
+ """
304
+ return self._project_id
305
+
306
+ @project_id.setter
307
+ def project_id(self, project_id: 'str'):
308
+ """Sets the project_id of this V1Pipeline.
309
+
310
+
311
+ :param project_id: The project_id of this V1Pipeline. # noqa: E501
312
+ :type: str
313
+ """
314
+
315
+ self._project_id = project_id
316
+
317
+ @property
318
+ def shared_filesystem(self) -> 'V1SharedFilesystem':
319
+ """Gets the shared_filesystem of this V1Pipeline. # noqa: E501
320
+
321
+
322
+ :return: The shared_filesystem of this V1Pipeline. # noqa: E501
323
+ :rtype: V1SharedFilesystem
324
+ """
325
+ return self._shared_filesystem
326
+
327
+ @shared_filesystem.setter
328
+ def shared_filesystem(self, shared_filesystem: 'V1SharedFilesystem'):
329
+ """Sets the shared_filesystem of this V1Pipeline.
330
+
331
+
332
+ :param shared_filesystem: The shared_filesystem of this V1Pipeline. # noqa: E501
333
+ :type: V1SharedFilesystem
334
+ """
335
+
336
+ self._shared_filesystem = shared_filesystem
337
+
338
+ @property
339
+ def state(self) -> 'str':
340
+ """Gets the state of this V1Pipeline. # noqa: E501
341
+
342
+
343
+ :return: The state of this V1Pipeline. # noqa: E501
344
+ :rtype: str
345
+ """
346
+ return self._state
347
+
348
+ @state.setter
349
+ def state(self, state: 'str'):
350
+ """Sets the state of this V1Pipeline.
351
+
352
+
353
+ :param state: The state of this V1Pipeline. # noqa: E501
354
+ :type: str
355
+ """
356
+
357
+ self._state = state
358
+
359
+ @property
360
+ def statuses(self) -> 'list[V1PipelineStepStatus]':
361
+ """Gets the statuses of this V1Pipeline. # noqa: E501
362
+
363
+
364
+ :return: The statuses of this V1Pipeline. # noqa: E501
365
+ :rtype: list[V1PipelineStepStatus]
366
+ """
367
+ return self._statuses
368
+
369
+ @statuses.setter
370
+ def statuses(self, statuses: 'list[V1PipelineStepStatus]'):
371
+ """Sets the statuses of this V1Pipeline.
372
+
373
+
374
+ :param statuses: The statuses of this V1Pipeline. # noqa: E501
375
+ :type: list[V1PipelineStepStatus]
376
+ """
377
+
378
+ self._statuses = statuses
379
+
380
+ @property
381
+ def steps(self) -> 'list[V1PipelineStep]':
382
+ """Gets the steps of this V1Pipeline. # noqa: E501
383
+
384
+
385
+ :return: The steps of this V1Pipeline. # noqa: E501
386
+ :rtype: list[V1PipelineStep]
387
+ """
388
+ return self._steps
389
+
390
+ @steps.setter
391
+ def steps(self, steps: 'list[V1PipelineStep]'):
392
+ """Sets the steps of this V1Pipeline.
393
+
394
+
395
+ :param steps: The steps of this V1Pipeline. # noqa: E501
396
+ :type: list[V1PipelineStep]
397
+ """
398
+
399
+ self._steps = steps
400
+
401
+ @property
402
+ def updated_at(self) -> 'datetime':
403
+ """Gets the updated_at of this V1Pipeline. # noqa: E501
404
+
405
+
406
+ :return: The updated_at of this V1Pipeline. # noqa: E501
407
+ :rtype: datetime
408
+ """
409
+ return self._updated_at
410
+
411
+ @updated_at.setter
412
+ def updated_at(self, updated_at: 'datetime'):
413
+ """Sets the updated_at of this V1Pipeline.
414
+
415
+
416
+ :param updated_at: The updated_at of this V1Pipeline. # noqa: E501
417
+ :type: datetime
418
+ """
419
+
420
+ self._updated_at = updated_at
421
+
422
+ @property
423
+ def user_id(self) -> 'str':
424
+ """Gets the user_id of this V1Pipeline. # noqa: E501
425
+
426
+
427
+ :return: The user_id of this V1Pipeline. # noqa: E501
428
+ :rtype: str
429
+ """
430
+ return self._user_id
431
+
432
+ @user_id.setter
433
+ def user_id(self, user_id: 'str'):
434
+ """Sets the user_id of this V1Pipeline.
435
+
436
+
437
+ :param user_id: The user_id of this V1Pipeline. # noqa: E501
438
+ :type: str
439
+ """
440
+
441
+ self._user_id = user_id
442
+
443
+ def to_dict(self) -> dict:
444
+ """Returns the model properties as a dict"""
445
+ result = {}
446
+
447
+ for attr, _ in six.iteritems(self.swagger_types):
448
+ value = getattr(self, attr)
449
+ if isinstance(value, list):
450
+ result[attr] = list(map(
451
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
452
+ value
453
+ ))
454
+ elif hasattr(value, "to_dict"):
455
+ result[attr] = value.to_dict()
456
+ elif isinstance(value, dict):
457
+ result[attr] = dict(map(
458
+ lambda item: (item[0], item[1].to_dict())
459
+ if hasattr(item[1], "to_dict") else item,
460
+ value.items()
461
+ ))
462
+ else:
463
+ result[attr] = value
464
+ if issubclass(V1Pipeline, dict):
465
+ for key, value in self.items():
466
+ result[key] = value
467
+
468
+ return result
469
+
470
+ def to_str(self) -> str:
471
+ """Returns the string representation of the model"""
472
+ return pprint.pformat(self.to_dict())
473
+
474
+ def __repr__(self) -> str:
475
+ """For `print` and `pprint`"""
476
+ return self.to_str()
477
+
478
+ def __eq__(self, other: 'V1Pipeline') -> bool:
479
+ """Returns true if both objects are equal"""
480
+ if not isinstance(other, V1Pipeline):
481
+ return False
482
+
483
+ return self.__dict__ == other.__dict__
484
+
485
+ def __ne__(self, other: 'V1Pipeline') -> bool:
486
+ """Returns true if both objects are not equal"""
487
+ return not self == other