lightning-sdk 0.1.37__py3-none-any.whl → 0.1.38__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 (62) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/ai_hub.py +21 -23
  3. lightning_sdk/api/ai_hub_api.py +29 -4
  4. lightning_sdk/api/job_api.py +6 -2
  5. lightning_sdk/api/teamspace_api.py +18 -14
  6. lightning_sdk/api/utils.py +19 -0
  7. lightning_sdk/cli/ai_hub.py +1 -1
  8. lightning_sdk/cli/run.py +8 -0
  9. lightning_sdk/job/base.py +13 -0
  10. lightning_sdk/job/job.py +8 -0
  11. lightning_sdk/job/v1.py +5 -1
  12. lightning_sdk/job/v2.py +4 -0
  13. lightning_sdk/lightning_cloud/openapi/__init__.py +13 -2
  14. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  15. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +680 -62
  16. lightning_sdk/lightning_cloud/openapi/models/__init__.py +13 -2
  17. lightning_sdk/lightning_cloud/openapi/models/create.py +6 -32
  18. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +32 -6
  19. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  20. lightning_sdk/lightning_cloud/openapi/models/multimachinejobs_id_body.py +123 -0
  21. lightning_sdk/lightning_cloud/openapi/models/project_id_agents_body.py +53 -1
  22. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py +201 -0
  24. lightning_sdk/lightning_cloud/openapi/models/update.py +6 -32
  25. lightning_sdk/lightning_cloud/openapi/models/v1_api_pricing_spec.py +149 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +32 -6
  28. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +6 -32
  29. lightning_sdk/lightning_cloud/openapi/models/v1_delete_multi_machine_job_response.py +97 -0
  30. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_metrics.py +43 -17
  31. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_performance.py +305 -0
  32. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +32 -6
  33. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter.py +27 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_type.py +1 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_summary.py +27 -1
  36. lightning_sdk/lightning_cloud/openapi/models/{v1_efs_data_connection.py → v1_efs_config.py} +22 -22
  37. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +27 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +53 -1
  39. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +125 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_jobs_response.py +123 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_machines_selector.py +149 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +6 -6
  43. lightning_sdk/lightning_cloud/openapi/models/v1_message_content.py +6 -6
  44. lightning_sdk/lightning_cloud/openapi/models/v1_message_content_type.py +103 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +53 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +383 -0
  47. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +108 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py +279 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +2 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_system_info.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +53 -1
  52. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py +27 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +6 -32
  54. lightning_sdk/lightning_cloud/openapi/models/validate.py +6 -32
  55. lightning_sdk/teamspace.py +5 -0
  56. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/METADATA +1 -1
  57. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/RECORD +61 -50
  58. lightning_sdk/lightning_cloud/openapi/models/v1_efs_folder_data_connection.py +0 -201
  59. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/LICENSE +0 -0
  60. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/WHEEL +0 -0
  61. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/entry_points.txt +0 -0
  62. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.38.dist-info}/top_level.txt +0 -0
@@ -46,6 +46,7 @@ class V1DeploymentTemplateParameter(object):
46
46
  'display_name': 'str',
47
47
  'input': 'V1Input',
48
48
  'long_description': 'str',
49
+ 'machines_selector': 'V1MachinesSelector',
49
50
  'name': 'str',
50
51
  'placements': 'list[V1DeploymentTemplateParameterPlacement]',
51
52
  'readonly': 'bool',
@@ -61,6 +62,7 @@ class V1DeploymentTemplateParameter(object):
61
62
  'display_name': 'displayName',
62
63
  'input': 'input',
63
64
  'long_description': 'longDescription',
65
+ 'machines_selector': 'machinesSelector',
64
66
  'name': 'name',
65
67
  'placements': 'placements',
66
68
  'readonly': 'readonly',
@@ -70,13 +72,14 @@ class V1DeploymentTemplateParameter(object):
70
72
  'type': 'type'
71
73
  }
72
74
 
73
- def __init__(self, checkbox: 'V1Checkbox' =None, data_path: 'V1DataPath' =None, display_name: 'str' =None, input: 'V1Input' =None, long_description: 'str' =None, name: 'str' =None, placements: 'list[V1DeploymentTemplateParameterPlacement]' =None, readonly: 'bool' =None, required: 'bool' =None, select: 'V1Select' =None, short_description: 'str' =None, type: 'V1DeploymentTemplateParameterType' =None): # noqa: E501
75
+ def __init__(self, checkbox: 'V1Checkbox' =None, data_path: 'V1DataPath' =None, display_name: 'str' =None, input: 'V1Input' =None, long_description: 'str' =None, machines_selector: 'V1MachinesSelector' =None, name: 'str' =None, placements: 'list[V1DeploymentTemplateParameterPlacement]' =None, readonly: 'bool' =None, required: 'bool' =None, select: 'V1Select' =None, short_description: 'str' =None, type: 'V1DeploymentTemplateParameterType' =None): # noqa: E501
74
76
  """V1DeploymentTemplateParameter - a model defined in Swagger""" # noqa: E501
75
77
  self._checkbox = None
76
78
  self._data_path = None
77
79
  self._display_name = None
78
80
  self._input = None
79
81
  self._long_description = None
82
+ self._machines_selector = None
80
83
  self._name = None
81
84
  self._placements = None
82
85
  self._readonly = None
@@ -95,6 +98,8 @@ class V1DeploymentTemplateParameter(object):
95
98
  self.input = input
96
99
  if long_description is not None:
97
100
  self.long_description = long_description
101
+ if machines_selector is not None:
102
+ self.machines_selector = machines_selector
98
103
  if name is not None:
99
104
  self.name = name
100
105
  if placements is not None:
@@ -215,6 +220,27 @@ class V1DeploymentTemplateParameter(object):
215
220
 
216
221
  self._long_description = long_description
217
222
 
223
+ @property
224
+ def machines_selector(self) -> 'V1MachinesSelector':
225
+ """Gets the machines_selector of this V1DeploymentTemplateParameter. # noqa: E501
226
+
227
+
228
+ :return: The machines_selector of this V1DeploymentTemplateParameter. # noqa: E501
229
+ :rtype: V1MachinesSelector
230
+ """
231
+ return self._machines_selector
232
+
233
+ @machines_selector.setter
234
+ def machines_selector(self, machines_selector: 'V1MachinesSelector'):
235
+ """Sets the machines_selector of this V1DeploymentTemplateParameter.
236
+
237
+
238
+ :param machines_selector: The machines_selector of this V1DeploymentTemplateParameter. # noqa: E501
239
+ :type: V1MachinesSelector
240
+ """
241
+
242
+ self._machines_selector = machines_selector
243
+
218
244
  @property
219
245
  def name(self) -> 'str':
220
246
  """Gets the name of this V1DeploymentTemplateParameter. # noqa: E501
@@ -41,6 +41,7 @@ class V1DeploymentTemplateParameterType(object):
41
41
  INPUT = "DEPLOYMENT_TEMPLATE_INPUT"
42
42
  DATA_PATH = "DEPLOYMENT_TEMPLATE_DATA_PATH"
43
43
  CHECKBOX = "DEPLOYMENT_TEMPLATE_CHECKBOX"
44
+ MACHINES_SELECTOR = "DEPLOYMENT_TEMPLATE_MACHINES_SELECTOR"
44
45
  """
45
46
  Attributes:
46
47
  swagger_types (dict): The key is attribute name
@@ -53,6 +53,7 @@ class V1DeploymentTemplateSummary(object):
53
53
  'image_url': 'str',
54
54
  'name': 'str',
55
55
  'org_id': 'str',
56
+ 'pricing': 'V1ApiPricingSpec',
56
57
  'project_id': 'str',
57
58
  'thumbnail_url': 'str',
58
59
  'unpublished': 'bool',
@@ -74,6 +75,7 @@ class V1DeploymentTemplateSummary(object):
74
75
  'image_url': 'imageUrl',
75
76
  'name': 'name',
76
77
  'org_id': 'orgId',
78
+ 'pricing': 'pricing',
77
79
  'project_id': 'projectId',
78
80
  'thumbnail_url': 'thumbnailUrl',
79
81
  'unpublished': 'unpublished',
@@ -82,7 +84,7 @@ class V1DeploymentTemplateSummary(object):
82
84
  'version': 'version'
83
85
  }
84
86
 
85
- def __init__(self, about_page_content: 'str' =None, about_page_id: 'str' =None, categories: 'list[str]' =None, created_at: 'datetime' =None, deployment_id: 'str' =None, description: 'str' =None, featured: 'bool' =None, globally_visible: 'bool' =None, id: 'str' =None, image_url: 'str' =None, name: 'str' =None, org_id: 'str' =None, project_id: 'str' =None, thumbnail_url: 'str' =None, unpublished: 'bool' =None, updated_at: 'datetime' =None, user_id: 'str' =None, version: 'str' =None): # noqa: E501
87
+ def __init__(self, about_page_content: 'str' =None, about_page_id: 'str' =None, categories: 'list[str]' =None, created_at: 'datetime' =None, deployment_id: 'str' =None, description: 'str' =None, featured: 'bool' =None, globally_visible: 'bool' =None, id: 'str' =None, image_url: 'str' =None, name: 'str' =None, org_id: 'str' =None, pricing: 'V1ApiPricingSpec' =None, project_id: 'str' =None, thumbnail_url: 'str' =None, unpublished: 'bool' =None, updated_at: 'datetime' =None, user_id: 'str' =None, version: 'str' =None): # noqa: E501
86
88
  """V1DeploymentTemplateSummary - a model defined in Swagger""" # noqa: E501
87
89
  self._about_page_content = None
88
90
  self._about_page_id = None
@@ -96,6 +98,7 @@ class V1DeploymentTemplateSummary(object):
96
98
  self._image_url = None
97
99
  self._name = None
98
100
  self._org_id = None
101
+ self._pricing = None
99
102
  self._project_id = None
100
103
  self._thumbnail_url = None
101
104
  self._unpublished = None
@@ -127,6 +130,8 @@ class V1DeploymentTemplateSummary(object):
127
130
  self.name = name
128
131
  if org_id is not None:
129
132
  self.org_id = org_id
133
+ if pricing is not None:
134
+ self.pricing = pricing
130
135
  if project_id is not None:
131
136
  self.project_id = project_id
132
137
  if thumbnail_url is not None:
@@ -392,6 +397,27 @@ class V1DeploymentTemplateSummary(object):
392
397
 
393
398
  self._org_id = org_id
394
399
 
400
+ @property
401
+ def pricing(self) -> 'V1ApiPricingSpec':
402
+ """Gets the pricing of this V1DeploymentTemplateSummary. # noqa: E501
403
+
404
+
405
+ :return: The pricing of this V1DeploymentTemplateSummary. # noqa: E501
406
+ :rtype: V1ApiPricingSpec
407
+ """
408
+ return self._pricing
409
+
410
+ @pricing.setter
411
+ def pricing(self, pricing: 'V1ApiPricingSpec'):
412
+ """Sets the pricing of this V1DeploymentTemplateSummary.
413
+
414
+
415
+ :param pricing: The pricing of this V1DeploymentTemplateSummary. # noqa: E501
416
+ :type: V1ApiPricingSpec
417
+ """
418
+
419
+ self._pricing = pricing
420
+
395
421
  @property
396
422
  def project_id(self) -> 'str':
397
423
  """Gets the project_id of this V1DeploymentTemplateSummary. # noqa: E501
@@ -28,7 +28,7 @@ if TYPE_CHECKING:
28
28
  from datetime import datetime
29
29
  from lightning_sdk.lightning_cloud.openapi.models import *
30
30
 
31
- class V1EfsDataConnection(object):
31
+ class V1EfsConfig(object):
32
32
  """NOTE: This class is auto generated by the swagger code generator program.
33
33
 
34
34
  Do not edit the class manually.
@@ -55,7 +55,7 @@ class V1EfsDataConnection(object):
55
55
  }
56
56
 
57
57
  def __init__(self, file_system_id: 'str' =None, mount_targets: 'list[V1MountTarget]' =None, region: 'str' =None, source: 'str' =None): # noqa: E501
58
- """V1EfsDataConnection - a model defined in Swagger""" # noqa: E501
58
+ """V1EfsConfig - a model defined in Swagger""" # noqa: E501
59
59
  self._file_system_id = None
60
60
  self._mount_targets = None
61
61
  self._region = None
@@ -72,20 +72,20 @@ class V1EfsDataConnection(object):
72
72
 
73
73
  @property
74
74
  def file_system_id(self) -> 'str':
75
- """Gets the file_system_id of this V1EfsDataConnection. # noqa: E501
75
+ """Gets the file_system_id of this V1EfsConfig. # noqa: E501
76
76
 
77
77
 
78
- :return: The file_system_id of this V1EfsDataConnection. # noqa: E501
78
+ :return: The file_system_id of this V1EfsConfig. # noqa: E501
79
79
  :rtype: str
80
80
  """
81
81
  return self._file_system_id
82
82
 
83
83
  @file_system_id.setter
84
84
  def file_system_id(self, file_system_id: 'str'):
85
- """Sets the file_system_id of this V1EfsDataConnection.
85
+ """Sets the file_system_id of this V1EfsConfig.
86
86
 
87
87
 
88
- :param file_system_id: The file_system_id of this V1EfsDataConnection. # noqa: E501
88
+ :param file_system_id: The file_system_id of this V1EfsConfig. # noqa: E501
89
89
  :type: str
90
90
  """
91
91
 
@@ -93,20 +93,20 @@ class V1EfsDataConnection(object):
93
93
 
94
94
  @property
95
95
  def mount_targets(self) -> 'list[V1MountTarget]':
96
- """Gets the mount_targets of this V1EfsDataConnection. # noqa: E501
96
+ """Gets the mount_targets of this V1EfsConfig. # noqa: E501
97
97
 
98
98
 
99
- :return: The mount_targets of this V1EfsDataConnection. # noqa: E501
99
+ :return: The mount_targets of this V1EfsConfig. # noqa: E501
100
100
  :rtype: list[V1MountTarget]
101
101
  """
102
102
  return self._mount_targets
103
103
 
104
104
  @mount_targets.setter
105
105
  def mount_targets(self, mount_targets: 'list[V1MountTarget]'):
106
- """Sets the mount_targets of this V1EfsDataConnection.
106
+ """Sets the mount_targets of this V1EfsConfig.
107
107
 
108
108
 
109
- :param mount_targets: The mount_targets of this V1EfsDataConnection. # noqa: E501
109
+ :param mount_targets: The mount_targets of this V1EfsConfig. # noqa: E501
110
110
  :type: list[V1MountTarget]
111
111
  """
112
112
 
@@ -114,20 +114,20 @@ class V1EfsDataConnection(object):
114
114
 
115
115
  @property
116
116
  def region(self) -> 'str':
117
- """Gets the region of this V1EfsDataConnection. # noqa: E501
117
+ """Gets the region of this V1EfsConfig. # noqa: E501
118
118
 
119
119
 
120
- :return: The region of this V1EfsDataConnection. # noqa: E501
120
+ :return: The region of this V1EfsConfig. # noqa: E501
121
121
  :rtype: str
122
122
  """
123
123
  return self._region
124
124
 
125
125
  @region.setter
126
126
  def region(self, region: 'str'):
127
- """Sets the region of this V1EfsDataConnection.
127
+ """Sets the region of this V1EfsConfig.
128
128
 
129
129
 
130
- :param region: The region of this V1EfsDataConnection. # noqa: E501
130
+ :param region: The region of this V1EfsConfig. # noqa: E501
131
131
  :type: str
132
132
  """
133
133
 
@@ -135,20 +135,20 @@ class V1EfsDataConnection(object):
135
135
 
136
136
  @property
137
137
  def source(self) -> 'str':
138
- """Gets the source of this V1EfsDataConnection. # noqa: E501
138
+ """Gets the source of this V1EfsConfig. # noqa: E501
139
139
 
140
140
 
141
- :return: The source of this V1EfsDataConnection. # noqa: E501
141
+ :return: The source of this V1EfsConfig. # noqa: E501
142
142
  :rtype: str
143
143
  """
144
144
  return self._source
145
145
 
146
146
  @source.setter
147
147
  def source(self, source: 'str'):
148
- """Sets the source of this V1EfsDataConnection.
148
+ """Sets the source of this V1EfsConfig.
149
149
 
150
150
 
151
- :param source: The source of this V1EfsDataConnection. # noqa: E501
151
+ :param source: The source of this V1EfsConfig. # noqa: E501
152
152
  :type: str
153
153
  """
154
154
 
@@ -175,7 +175,7 @@ class V1EfsDataConnection(object):
175
175
  ))
176
176
  else:
177
177
  result[attr] = value
178
- if issubclass(V1EfsDataConnection, dict):
178
+ if issubclass(V1EfsConfig, dict):
179
179
  for key, value in self.items():
180
180
  result[key] = value
181
181
 
@@ -189,13 +189,13 @@ class V1EfsDataConnection(object):
189
189
  """For `print` and `pprint`"""
190
190
  return self.to_str()
191
191
 
192
- def __eq__(self, other: 'V1EfsDataConnection') -> bool:
192
+ def __eq__(self, other: 'V1EfsConfig') -> bool:
193
193
  """Returns true if both objects are equal"""
194
- if not isinstance(other, V1EfsDataConnection):
194
+ if not isinstance(other, V1EfsConfig):
195
195
  return False
196
196
 
197
197
  return self.__dict__ == other.__dict__
198
198
 
199
- def __ne__(self, other: 'V1EfsDataConnection') -> bool:
199
+ def __ne__(self, other: 'V1EfsConfig') -> bool:
200
200
  """Returns true if both objects are not equal"""
201
201
  return not self == other
@@ -45,6 +45,7 @@ class V1GetModelFilesResponse(object):
45
45
  'model_id': 'str',
46
46
  'project_id': 'str',
47
47
  'size_bytes': 'str',
48
+ 'upload_complete': 'bool',
48
49
  'version': 'str'
49
50
  }
50
51
 
@@ -53,15 +54,17 @@ class V1GetModelFilesResponse(object):
53
54
  'model_id': 'modelId',
54
55
  'project_id': 'projectId',
55
56
  'size_bytes': 'sizeBytes',
57
+ 'upload_complete': 'uploadComplete',
56
58
  'version': 'version'
57
59
  }
58
60
 
59
- def __init__(self, filepaths: 'list[str]' =None, model_id: 'str' =None, project_id: 'str' =None, size_bytes: 'str' =None, version: 'str' =None): # noqa: E501
61
+ def __init__(self, filepaths: 'list[str]' =None, model_id: 'str' =None, project_id: 'str' =None, size_bytes: 'str' =None, upload_complete: 'bool' =None, version: 'str' =None): # noqa: E501
60
62
  """V1GetModelFilesResponse - a model defined in Swagger""" # noqa: E501
61
63
  self._filepaths = None
62
64
  self._model_id = None
63
65
  self._project_id = None
64
66
  self._size_bytes = None
67
+ self._upload_complete = None
65
68
  self._version = None
66
69
  self.discriminator = None
67
70
  if filepaths is not None:
@@ -72,6 +75,8 @@ class V1GetModelFilesResponse(object):
72
75
  self.project_id = project_id
73
76
  if size_bytes is not None:
74
77
  self.size_bytes = size_bytes
78
+ if upload_complete is not None:
79
+ self.upload_complete = upload_complete
75
80
  if version is not None:
76
81
  self.version = version
77
82
 
@@ -159,6 +164,27 @@ class V1GetModelFilesResponse(object):
159
164
 
160
165
  self._size_bytes = size_bytes
161
166
 
167
+ @property
168
+ def upload_complete(self) -> 'bool':
169
+ """Gets the upload_complete of this V1GetModelFilesResponse. # noqa: E501
170
+
171
+
172
+ :return: The upload_complete of this V1GetModelFilesResponse. # noqa: E501
173
+ :rtype: bool
174
+ """
175
+ return self._upload_complete
176
+
177
+ @upload_complete.setter
178
+ def upload_complete(self, upload_complete: 'bool'):
179
+ """Sets the upload_complete of this V1GetModelFilesResponse.
180
+
181
+
182
+ :param upload_complete: The upload_complete of this V1GetModelFilesResponse. # noqa: E501
183
+ :type: bool
184
+ """
185
+
186
+ self._upload_complete = upload_complete
187
+
162
188
  @property
163
189
  def version(self) -> 'str':
164
190
  """Gets the version of this V1GetModelFilesResponse. # noqa: E501
@@ -42,6 +42,8 @@ class V1GoogleCloudDirectV1(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'bucket_name': 'str',
45
+ 'compute_list_bucket_project_role': 'str',
46
+ 'compute_project_role': 'str',
45
47
  'credentials_secret_id': 'str',
46
48
  'credentials_service_account_email': 'str',
47
49
  'primary_region': 'str',
@@ -53,6 +55,8 @@ class V1GoogleCloudDirectV1(object):
53
55
 
54
56
  attribute_map = {
55
57
  'bucket_name': 'bucketName',
58
+ 'compute_list_bucket_project_role': 'computeListBucketProjectRole',
59
+ 'compute_project_role': 'computeProjectRole',
56
60
  'credentials_secret_id': 'credentialsSecretId',
57
61
  'credentials_service_account_email': 'credentialsServiceAccountEmail',
58
62
  'primary_region': 'primaryRegion',
@@ -62,9 +66,11 @@ class V1GoogleCloudDirectV1(object):
62
66
  'source_cidr_ips': 'sourceCidrIps'
63
67
  }
64
68
 
65
- def __init__(self, bucket_name: 'str' =None, credentials_secret_id: 'str' =None, credentials_service_account_email: 'str' =None, primary_region: 'str' =None, project_id: 'str' =None, regions: 'list[str]' =None, service_account_email: 'str' =None, source_cidr_ips: 'list[str]' =None): # noqa: E501
69
+ def __init__(self, bucket_name: 'str' =None, compute_list_bucket_project_role: 'str' =None, compute_project_role: 'str' =None, credentials_secret_id: 'str' =None, credentials_service_account_email: 'str' =None, primary_region: 'str' =None, project_id: 'str' =None, regions: 'list[str]' =None, service_account_email: 'str' =None, source_cidr_ips: 'list[str]' =None): # noqa: E501
66
70
  """V1GoogleCloudDirectV1 - a model defined in Swagger""" # noqa: E501
67
71
  self._bucket_name = None
72
+ self._compute_list_bucket_project_role = None
73
+ self._compute_project_role = None
68
74
  self._credentials_secret_id = None
69
75
  self._credentials_service_account_email = None
70
76
  self._primary_region = None
@@ -75,6 +81,10 @@ class V1GoogleCloudDirectV1(object):
75
81
  self.discriminator = None
76
82
  if bucket_name is not None:
77
83
  self.bucket_name = bucket_name
84
+ if compute_list_bucket_project_role is not None:
85
+ self.compute_list_bucket_project_role = compute_list_bucket_project_role
86
+ if compute_project_role is not None:
87
+ self.compute_project_role = compute_project_role
78
88
  if credentials_secret_id is not None:
79
89
  self.credentials_secret_id = credentials_secret_id
80
90
  if credentials_service_account_email is not None:
@@ -111,6 +121,48 @@ class V1GoogleCloudDirectV1(object):
111
121
 
112
122
  self._bucket_name = bucket_name
113
123
 
124
+ @property
125
+ def compute_list_bucket_project_role(self) -> 'str':
126
+ """Gets the compute_list_bucket_project_role of this V1GoogleCloudDirectV1. # noqa: E501
127
+
128
+
129
+ :return: The compute_list_bucket_project_role of this V1GoogleCloudDirectV1. # noqa: E501
130
+ :rtype: str
131
+ """
132
+ return self._compute_list_bucket_project_role
133
+
134
+ @compute_list_bucket_project_role.setter
135
+ def compute_list_bucket_project_role(self, compute_list_bucket_project_role: 'str'):
136
+ """Sets the compute_list_bucket_project_role of this V1GoogleCloudDirectV1.
137
+
138
+
139
+ :param compute_list_bucket_project_role: The compute_list_bucket_project_role of this V1GoogleCloudDirectV1. # noqa: E501
140
+ :type: str
141
+ """
142
+
143
+ self._compute_list_bucket_project_role = compute_list_bucket_project_role
144
+
145
+ @property
146
+ def compute_project_role(self) -> 'str':
147
+ """Gets the compute_project_role of this V1GoogleCloudDirectV1. # noqa: E501
148
+
149
+
150
+ :return: The compute_project_role of this V1GoogleCloudDirectV1. # noqa: E501
151
+ :rtype: str
152
+ """
153
+ return self._compute_project_role
154
+
155
+ @compute_project_role.setter
156
+ def compute_project_role(self, compute_project_role: 'str'):
157
+ """Sets the compute_project_role of this V1GoogleCloudDirectV1.
158
+
159
+
160
+ :param compute_project_role: The compute_project_role of this V1GoogleCloudDirectV1. # noqa: E501
161
+ :type: str
162
+ """
163
+
164
+ self._compute_project_role = compute_project_role
165
+
114
166
  @property
115
167
  def credentials_secret_id(self) -> 'str':
116
168
  """Gets the credentials_secret_id of this V1GoogleCloudDirectV1. # noqa: E501
@@ -0,0 +1,125 @@
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 V1LambdaLabsDirectV1(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
+ 'credentials_secret_id': 'str'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'credentials_secret_id': 'credentialsSecretId'
49
+ }
50
+
51
+ def __init__(self, credentials_secret_id: 'str' =None): # noqa: E501
52
+ """V1LambdaLabsDirectV1 - a model defined in Swagger""" # noqa: E501
53
+ self._credentials_secret_id = None
54
+ self.discriminator = None
55
+ if credentials_secret_id is not None:
56
+ self.credentials_secret_id = credentials_secret_id
57
+
58
+ @property
59
+ def credentials_secret_id(self) -> 'str':
60
+ """Gets the credentials_secret_id of this V1LambdaLabsDirectV1. # noqa: E501
61
+
62
+ ID of the secret that contains the LambdaLabs API key. # noqa: E501
63
+
64
+ :return: The credentials_secret_id of this V1LambdaLabsDirectV1. # noqa: E501
65
+ :rtype: str
66
+ """
67
+ return self._credentials_secret_id
68
+
69
+ @credentials_secret_id.setter
70
+ def credentials_secret_id(self, credentials_secret_id: 'str'):
71
+ """Sets the credentials_secret_id of this V1LambdaLabsDirectV1.
72
+
73
+ ID of the secret that contains the LambdaLabs API key. # noqa: E501
74
+
75
+ :param credentials_secret_id: The credentials_secret_id of this V1LambdaLabsDirectV1. # noqa: E501
76
+ :type: str
77
+ """
78
+
79
+ self._credentials_secret_id = credentials_secret_id
80
+
81
+ def to_dict(self) -> dict:
82
+ """Returns the model properties as a dict"""
83
+ result = {}
84
+
85
+ for attr, _ in six.iteritems(self.swagger_types):
86
+ value = getattr(self, attr)
87
+ if isinstance(value, list):
88
+ result[attr] = list(map(
89
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
90
+ value
91
+ ))
92
+ elif hasattr(value, "to_dict"):
93
+ result[attr] = value.to_dict()
94
+ elif isinstance(value, dict):
95
+ result[attr] = dict(map(
96
+ lambda item: (item[0], item[1].to_dict())
97
+ if hasattr(item[1], "to_dict") else item,
98
+ value.items()
99
+ ))
100
+ else:
101
+ result[attr] = value
102
+ if issubclass(V1LambdaLabsDirectV1, dict):
103
+ for key, value in self.items():
104
+ result[key] = value
105
+
106
+ return result
107
+
108
+ def to_str(self) -> str:
109
+ """Returns the string representation of the model"""
110
+ return pprint.pformat(self.to_dict())
111
+
112
+ def __repr__(self) -> str:
113
+ """For `print` and `pprint`"""
114
+ return self.to_str()
115
+
116
+ def __eq__(self, other: 'V1LambdaLabsDirectV1') -> bool:
117
+ """Returns true if both objects are equal"""
118
+ if not isinstance(other, V1LambdaLabsDirectV1):
119
+ return False
120
+
121
+ return self.__dict__ == other.__dict__
122
+
123
+ def __ne__(self, other: 'V1LambdaLabsDirectV1') -> bool:
124
+ """Returns true if both objects are not equal"""
125
+ return not self == other