lightning-sdk 0.1.37__py3-none-any.whl → 0.1.39__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 (72) 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/deployment_api.py +0 -2
  5. lightning_sdk/api/job_api.py +10 -2
  6. lightning_sdk/api/teamspace_api.py +22 -16
  7. lightning_sdk/api/utils.py +25 -3
  8. lightning_sdk/cli/ai_hub.py +1 -1
  9. lightning_sdk/cli/download.py +3 -5
  10. lightning_sdk/cli/run.py +24 -0
  11. lightning_sdk/cli/upload.py +3 -10
  12. lightning_sdk/job/base.py +35 -0
  13. lightning_sdk/job/job.py +18 -1
  14. lightning_sdk/job/v1.py +10 -1
  15. lightning_sdk/job/v2.py +16 -0
  16. lightning_sdk/lightning_cloud/openapi/__init__.py +13 -2
  17. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  18. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +6 -1
  19. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +680 -62
  20. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +118 -1
  21. lightning_sdk/lightning_cloud/openapi/models/__init__.py +13 -2
  22. lightning_sdk/lightning_cloud/openapi/models/create.py +6 -32
  23. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +32 -6
  24. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/id_start_body.py +29 -3
  26. lightning_sdk/lightning_cloud/openapi/models/multimachinejobs_id_body.py +123 -0
  27. lightning_sdk/lightning_cloud/openapi/models/project_id_agents_body.py +53 -1
  28. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +53 -1
  29. lightning_sdk/lightning_cloud/openapi/models/project_id_multimachinejobs_body.py +201 -0
  30. lightning_sdk/lightning_cloud/openapi/models/update.py +6 -32
  31. lightning_sdk/lightning_cloud/openapi/models/v1_api_pricing_spec.py +149 -0
  32. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +32 -6
  34. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +6 -32
  35. lightning_sdk/lightning_cloud/openapi/models/v1_data_path.py +29 -3
  36. lightning_sdk/lightning_cloud/openapi/models/v1_delete_multi_machine_job_response.py +97 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_metrics.py +43 -17
  38. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_performance.py +305 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +32 -6
  40. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_type.py +1 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_summary.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/{v1_efs_data_connection.py → v1_efs_config.py} +22 -22
  44. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +53 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +53 -53
  47. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +125 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_list_multi_machine_jobs_response.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_machines_selector.py +149 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +6 -6
  51. lightning_sdk/lightning_cloud/openapi/models/v1_message_content.py +6 -6
  52. lightning_sdk/lightning_cloud/openapi/models/v1_message_content_type.py +103 -0
  53. lightning_sdk/lightning_cloud/openapi/models/v1_metrics_stream.py +53 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +409 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +106 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_status.py +279 -0
  57. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +2 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_system_info.py +27 -1
  59. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +53 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py +27 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +6 -32
  62. lightning_sdk/lightning_cloud/openapi/models/validate.py +6 -32
  63. lightning_sdk/models.py +132 -0
  64. lightning_sdk/teamspace.py +8 -2
  65. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/METADATA +1 -1
  66. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/RECORD +70 -59
  67. lightning_sdk/cli/models.py +0 -68
  68. lightning_sdk/lightning_cloud/openapi/models/v1_efs_folder_data_connection.py +0 -201
  69. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/LICENSE +0 -0
  70. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/WHEEL +0 -0
  71. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/entry_points.txt +0 -0
  72. {lightning_sdk-0.1.37.dist-info → lightning_sdk-0.1.39.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,149 @@
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 V1ApiPricingSpec(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
+ 'cost_per_hour': 'float',
45
+ 'cost_per_request': 'float'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'cost_per_hour': 'costPerHour',
50
+ 'cost_per_request': 'costPerRequest'
51
+ }
52
+
53
+ def __init__(self, cost_per_hour: 'float' =None, cost_per_request: 'float' =None): # noqa: E501
54
+ """V1ApiPricingSpec - a model defined in Swagger""" # noqa: E501
55
+ self._cost_per_hour = None
56
+ self._cost_per_request = None
57
+ self.discriminator = None
58
+ if cost_per_hour is not None:
59
+ self.cost_per_hour = cost_per_hour
60
+ if cost_per_request is not None:
61
+ self.cost_per_request = cost_per_request
62
+
63
+ @property
64
+ def cost_per_hour(self) -> 'float':
65
+ """Gets the cost_per_hour of this V1ApiPricingSpec. # noqa: E501
66
+
67
+
68
+ :return: The cost_per_hour of this V1ApiPricingSpec. # noqa: E501
69
+ :rtype: float
70
+ """
71
+ return self._cost_per_hour
72
+
73
+ @cost_per_hour.setter
74
+ def cost_per_hour(self, cost_per_hour: 'float'):
75
+ """Sets the cost_per_hour of this V1ApiPricingSpec.
76
+
77
+
78
+ :param cost_per_hour: The cost_per_hour of this V1ApiPricingSpec. # noqa: E501
79
+ :type: float
80
+ """
81
+
82
+ self._cost_per_hour = cost_per_hour
83
+
84
+ @property
85
+ def cost_per_request(self) -> 'float':
86
+ """Gets the cost_per_request of this V1ApiPricingSpec. # noqa: E501
87
+
88
+
89
+ :return: The cost_per_request of this V1ApiPricingSpec. # noqa: E501
90
+ :rtype: float
91
+ """
92
+ return self._cost_per_request
93
+
94
+ @cost_per_request.setter
95
+ def cost_per_request(self, cost_per_request: 'float'):
96
+ """Sets the cost_per_request of this V1ApiPricingSpec.
97
+
98
+
99
+ :param cost_per_request: The cost_per_request of this V1ApiPricingSpec. # noqa: E501
100
+ :type: float
101
+ """
102
+
103
+ self._cost_per_request = cost_per_request
104
+
105
+ def to_dict(self) -> dict:
106
+ """Returns the model properties as a dict"""
107
+ result = {}
108
+
109
+ for attr, _ in six.iteritems(self.swagger_types):
110
+ value = getattr(self, attr)
111
+ if isinstance(value, list):
112
+ result[attr] = list(map(
113
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
114
+ value
115
+ ))
116
+ elif hasattr(value, "to_dict"):
117
+ result[attr] = value.to_dict()
118
+ elif isinstance(value, dict):
119
+ result[attr] = dict(map(
120
+ lambda item: (item[0], item[1].to_dict())
121
+ if hasattr(item[1], "to_dict") else item,
122
+ value.items()
123
+ ))
124
+ else:
125
+ result[attr] = value
126
+ if issubclass(V1ApiPricingSpec, dict):
127
+ for key, value in self.items():
128
+ result[key] = value
129
+
130
+ return result
131
+
132
+ def to_str(self) -> str:
133
+ """Returns the string representation of the model"""
134
+ return pprint.pformat(self.to_dict())
135
+
136
+ def __repr__(self) -> str:
137
+ """For `print` and `pprint`"""
138
+ return self.to_str()
139
+
140
+ def __eq__(self, other: 'V1ApiPricingSpec') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, V1ApiPricingSpec):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'V1ApiPricingSpec') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other
@@ -51,6 +51,7 @@ class V1ClusterSpec(object):
51
51
  'freeze_accelerators': 'bool',
52
52
  'google_cloud_v1': 'V1GoogleCloudDirectV1',
53
53
  'insurer_disabled': 'bool',
54
+ 'lambda_labs_v1': 'V1LambdaLabsDirectV1',
54
55
  'overprovisioning': 'list[V1InstanceOverprovisioningSpec]',
55
56
  'pause_automation': 'bool',
56
57
  'security_options': 'V1ClusterSecurityOptions',
@@ -70,6 +71,7 @@ class V1ClusterSpec(object):
70
71
  'freeze_accelerators': 'freezeAccelerators',
71
72
  'google_cloud_v1': 'googleCloudV1',
72
73
  'insurer_disabled': 'insurerDisabled',
74
+ 'lambda_labs_v1': 'lambdaLabsV1',
73
75
  'overprovisioning': 'overprovisioning',
74
76
  'pause_automation': 'pauseAutomation',
75
77
  'security_options': 'securityOptions',
@@ -78,7 +80,7 @@ class V1ClusterSpec(object):
78
80
  'user_id': 'userId'
79
81
  }
80
82
 
81
- def __init__(self, auth_token: 'str' =None, available_instance_types: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cluster_type: 'V1ClusterType' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, freeze_accelerators: 'bool' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, insurer_disabled: 'bool' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, pause_automation: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None): # noqa: E501
83
+ def __init__(self, auth_token: 'str' =None, available_instance_types: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cluster_type: 'V1ClusterType' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, freeze_accelerators: 'bool' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, insurer_disabled: 'bool' =None, lambda_labs_v1: 'V1LambdaLabsDirectV1' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, pause_automation: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None): # noqa: E501
82
84
  """V1ClusterSpec - a model defined in Swagger""" # noqa: E501
83
85
  self._auth_token = None
84
86
  self._available_instance_types = None
@@ -90,6 +92,7 @@ class V1ClusterSpec(object):
90
92
  self._freeze_accelerators = None
91
93
  self._google_cloud_v1 = None
92
94
  self._insurer_disabled = None
95
+ self._lambda_labs_v1 = None
93
96
  self._overprovisioning = None
94
97
  self._pause_automation = None
95
98
  self._security_options = None
@@ -117,6 +120,8 @@ class V1ClusterSpec(object):
117
120
  self.google_cloud_v1 = google_cloud_v1
118
121
  if insurer_disabled is not None:
119
122
  self.insurer_disabled = insurer_disabled
123
+ if lambda_labs_v1 is not None:
124
+ self.lambda_labs_v1 = lambda_labs_v1
120
125
  if overprovisioning is not None:
121
126
  self.overprovisioning = overprovisioning
122
127
  if pause_automation is not None:
@@ -344,6 +349,27 @@ class V1ClusterSpec(object):
344
349
 
345
350
  self._insurer_disabled = insurer_disabled
346
351
 
352
+ @property
353
+ def lambda_labs_v1(self) -> 'V1LambdaLabsDirectV1':
354
+ """Gets the lambda_labs_v1 of this V1ClusterSpec. # noqa: E501
355
+
356
+
357
+ :return: The lambda_labs_v1 of this V1ClusterSpec. # noqa: E501
358
+ :rtype: V1LambdaLabsDirectV1
359
+ """
360
+ return self._lambda_labs_v1
361
+
362
+ @lambda_labs_v1.setter
363
+ def lambda_labs_v1(self, lambda_labs_v1: 'V1LambdaLabsDirectV1'):
364
+ """Sets the lambda_labs_v1 of this V1ClusterSpec.
365
+
366
+
367
+ :param lambda_labs_v1: The lambda_labs_v1 of this V1ClusterSpec. # noqa: E501
368
+ :type: V1LambdaLabsDirectV1
369
+ """
370
+
371
+ self._lambda_labs_v1 = lambda_labs_v1
372
+
347
373
  @property
348
374
  def overprovisioning(self) -> 'list[V1InstanceOverprovisioningSpec]':
349
375
  """Gets the overprovisioning of this V1ClusterSpec. # noqa: E501
@@ -46,10 +46,11 @@ class V1CreateDeploymentTemplateRequest(object):
46
46
  'deployment_id': 'str',
47
47
  'description': 'str',
48
48
  'image_url': 'str',
49
- 'metrics': 'list[V1DeploymentMetrics]',
49
+ 'metrics': 'V1DeploymentMetrics',
50
50
  'name': 'str',
51
51
  'org_id': 'str',
52
52
  'parameter_spec': 'V1ParameterizationSpec',
53
+ 'pricing': 'V1ApiPricingSpec',
53
54
  'project_id': 'str',
54
55
  'spec': 'str',
55
56
  'tags': 'list[V1ResourceTag]',
@@ -69,6 +70,7 @@ class V1CreateDeploymentTemplateRequest(object):
69
70
  'name': 'name',
70
71
  'org_id': 'orgId',
71
72
  'parameter_spec': 'parameterSpec',
73
+ 'pricing': 'pricing',
72
74
  'project_id': 'projectId',
73
75
  'spec': 'spec',
74
76
  'tags': 'tags',
@@ -78,7 +80,7 @@ class V1CreateDeploymentTemplateRequest(object):
78
80
  'visibility': 'visibility'
79
81
  }
80
82
 
81
- def __init__(self, about_page_content: 'str' =None, categories: 'list[str]' =None, deployment_id: 'str' =None, description: 'str' =None, image_url: 'str' =None, metrics: 'list[V1DeploymentMetrics]' =None, name: 'str' =None, org_id: 'str' =None, parameter_spec: 'V1ParameterizationSpec' =None, project_id: 'str' =None, spec: 'str' =None, tags: 'list[V1ResourceTag]' =None, thumbnail: 'str' =None, thumbnail_file_type: 'str' =None, version: 'str' =None, visibility: 'V1DeploymentTemplateType' =None): # noqa: E501
83
+ def __init__(self, about_page_content: 'str' =None, categories: 'list[str]' =None, deployment_id: 'str' =None, description: 'str' =None, image_url: 'str' =None, metrics: 'V1DeploymentMetrics' =None, name: 'str' =None, org_id: 'str' =None, parameter_spec: 'V1ParameterizationSpec' =None, pricing: 'V1ApiPricingSpec' =None, project_id: 'str' =None, spec: 'str' =None, tags: 'list[V1ResourceTag]' =None, thumbnail: 'str' =None, thumbnail_file_type: 'str' =None, version: 'str' =None, visibility: 'V1DeploymentTemplateType' =None): # noqa: E501
82
84
  """V1CreateDeploymentTemplateRequest - a model defined in Swagger""" # noqa: E501
83
85
  self._about_page_content = None
84
86
  self._categories = None
@@ -89,6 +91,7 @@ class V1CreateDeploymentTemplateRequest(object):
89
91
  self._name = None
90
92
  self._org_id = None
91
93
  self._parameter_spec = None
94
+ self._pricing = None
92
95
  self._project_id = None
93
96
  self._spec = None
94
97
  self._tags = None
@@ -115,6 +118,8 @@ class V1CreateDeploymentTemplateRequest(object):
115
118
  self.org_id = org_id
116
119
  if parameter_spec is not None:
117
120
  self.parameter_spec = parameter_spec
121
+ if pricing is not None:
122
+ self.pricing = pricing
118
123
  if project_id is not None:
119
124
  self.project_id = project_id
120
125
  if spec is not None:
@@ -236,22 +241,22 @@ class V1CreateDeploymentTemplateRequest(object):
236
241
  self._image_url = image_url
237
242
 
238
243
  @property
239
- def metrics(self) -> 'list[V1DeploymentMetrics]':
244
+ def metrics(self) -> 'V1DeploymentMetrics':
240
245
  """Gets the metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
241
246
 
242
247
 
243
248
  :return: The metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
244
- :rtype: list[V1DeploymentMetrics]
249
+ :rtype: V1DeploymentMetrics
245
250
  """
246
251
  return self._metrics
247
252
 
248
253
  @metrics.setter
249
- def metrics(self, metrics: 'list[V1DeploymentMetrics]'):
254
+ def metrics(self, metrics: 'V1DeploymentMetrics'):
250
255
  """Sets the metrics of this V1CreateDeploymentTemplateRequest.
251
256
 
252
257
 
253
258
  :param metrics: The metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
254
- :type: list[V1DeploymentMetrics]
259
+ :type: V1DeploymentMetrics
255
260
  """
256
261
 
257
262
  self._metrics = metrics
@@ -319,6 +324,27 @@ class V1CreateDeploymentTemplateRequest(object):
319
324
 
320
325
  self._parameter_spec = parameter_spec
321
326
 
327
+ @property
328
+ def pricing(self) -> 'V1ApiPricingSpec':
329
+ """Gets the pricing of this V1CreateDeploymentTemplateRequest. # noqa: E501
330
+
331
+
332
+ :return: The pricing of this V1CreateDeploymentTemplateRequest. # noqa: E501
333
+ :rtype: V1ApiPricingSpec
334
+ """
335
+ return self._pricing
336
+
337
+ @pricing.setter
338
+ def pricing(self, pricing: 'V1ApiPricingSpec'):
339
+ """Sets the pricing of this V1CreateDeploymentTemplateRequest.
340
+
341
+
342
+ :param pricing: The pricing of this V1CreateDeploymentTemplateRequest. # noqa: E501
343
+ :type: V1ApiPricingSpec
344
+ """
345
+
346
+ self._pricing = pricing
347
+
322
348
  @property
323
349
  def project_id(self) -> 'str':
324
350
  """Gets the project_id of this V1CreateDeploymentTemplateRequest. # noqa: E501
@@ -46,8 +46,7 @@ class V1DataConnection(object):
46
46
  'aws': 'V1AwsDataConnection',
47
47
  'cluster_id': 'str',
48
48
  'created_at': 'datetime',
49
- 'efs': 'V1EfsDataConnection',
50
- 'efs_folder': 'V1EFSFolderDataConnection',
49
+ 'efs': 'V1EfsConfig',
51
50
  'gcp': 'V1GcpDataConnection',
52
51
  'gcs_folder': 'V1GCSFolderDataConnection',
53
52
  'id': 'str',
@@ -74,7 +73,6 @@ class V1DataConnection(object):
74
73
  'cluster_id': 'clusterId',
75
74
  'created_at': 'createdAt',
76
75
  'efs': 'efs',
77
- 'efs_folder': 'efsFolder',
78
76
  'gcp': 'gcp',
79
77
  'gcs_folder': 'gcsFolder',
80
78
  'id': 'id',
@@ -94,7 +92,7 @@ class V1DataConnection(object):
94
92
  'writable': 'writable'
95
93
  }
96
94
 
97
- def __init__(self, access_cluster_ids: 'list[str]' =None, accessible: 'bool' =None, aws: 'V1AwsDataConnection' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, efs: 'V1EfsDataConnection' =None, efs_folder: 'V1EFSFolderDataConnection' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, id: 'str' =None, index: 'V1Index' =None, is_managed: 'bool' =None, lock_out: 'bool' =None, name: 'str' =None, number_of_files: 'str' =None, project_id: 'str' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, state: 'V1DataConnectionState' =None, total_size_bytes: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, writable: 'bool' =None): # noqa: E501
95
+ def __init__(self, access_cluster_ids: 'list[str]' =None, accessible: 'bool' =None, aws: 'V1AwsDataConnection' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, efs: 'V1EfsConfig' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, id: 'str' =None, index: 'V1Index' =None, is_managed: 'bool' =None, lock_out: 'bool' =None, name: 'str' =None, number_of_files: 'str' =None, project_id: 'str' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, state: 'V1DataConnectionState' =None, total_size_bytes: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, writable: 'bool' =None): # noqa: E501
98
96
  """V1DataConnection - a model defined in Swagger""" # noqa: E501
99
97
  self._access_cluster_ids = None
100
98
  self._accessible = None
@@ -102,7 +100,6 @@ class V1DataConnection(object):
102
100
  self._cluster_id = None
103
101
  self._created_at = None
104
102
  self._efs = None
105
- self._efs_folder = None
106
103
  self._gcp = None
107
104
  self._gcs_folder = None
108
105
  self._id = None
@@ -133,8 +130,6 @@ class V1DataConnection(object):
133
130
  self.created_at = created_at
134
131
  if efs is not None:
135
132
  self.efs = efs
136
- if efs_folder is not None:
137
- self.efs_folder = efs_folder
138
133
  if gcp is not None:
139
134
  self.gcp = gcp
140
135
  if gcs_folder is not None:
@@ -276,47 +271,26 @@ class V1DataConnection(object):
276
271
  self._created_at = created_at
277
272
 
278
273
  @property
279
- def efs(self) -> 'V1EfsDataConnection':
274
+ def efs(self) -> 'V1EfsConfig':
280
275
  """Gets the efs of this V1DataConnection. # noqa: E501
281
276
 
282
277
 
283
278
  :return: The efs of this V1DataConnection. # noqa: E501
284
- :rtype: V1EfsDataConnection
279
+ :rtype: V1EfsConfig
285
280
  """
286
281
  return self._efs
287
282
 
288
283
  @efs.setter
289
- def efs(self, efs: 'V1EfsDataConnection'):
284
+ def efs(self, efs: 'V1EfsConfig'):
290
285
  """Sets the efs of this V1DataConnection.
291
286
 
292
287
 
293
288
  :param efs: The efs of this V1DataConnection. # noqa: E501
294
- :type: V1EfsDataConnection
289
+ :type: V1EfsConfig
295
290
  """
296
291
 
297
292
  self._efs = efs
298
293
 
299
- @property
300
- def efs_folder(self) -> 'V1EFSFolderDataConnection':
301
- """Gets the efs_folder of this V1DataConnection. # noqa: E501
302
-
303
-
304
- :return: The efs_folder of this V1DataConnection. # noqa: E501
305
- :rtype: V1EFSFolderDataConnection
306
- """
307
- return self._efs_folder
308
-
309
- @efs_folder.setter
310
- def efs_folder(self, efs_folder: 'V1EFSFolderDataConnection'):
311
- """Sets the efs_folder of this V1DataConnection.
312
-
313
-
314
- :param efs_folder: The efs_folder of this V1DataConnection. # noqa: E501
315
- :type: V1EFSFolderDataConnection
316
- """
317
-
318
- self._efs_folder = efs_folder
319
-
320
294
  @property
321
295
  def gcp(self) -> 'V1GcpDataConnection':
322
296
  """Gets the gcp of this V1DataConnection. # noqa: E501
@@ -43,20 +43,23 @@ class V1DataPath(object):
43
43
  swagger_types = {
44
44
  'single_file': 'bool',
45
45
  'stored_path': 'str',
46
- 'target_path': 'str'
46
+ 'target_path': 'str',
47
+ 'updated_at': 'datetime'
47
48
  }
48
49
 
49
50
  attribute_map = {
50
51
  'single_file': 'singleFile',
51
52
  'stored_path': 'storedPath',
52
- 'target_path': 'targetPath'
53
+ 'target_path': 'targetPath',
54
+ 'updated_at': 'updatedAt'
53
55
  }
54
56
 
55
- def __init__(self, single_file: 'bool' =None, stored_path: 'str' =None, target_path: 'str' =None): # noqa: E501
57
+ def __init__(self, single_file: 'bool' =None, stored_path: 'str' =None, target_path: 'str' =None, updated_at: 'datetime' =None): # noqa: E501
56
58
  """V1DataPath - a model defined in Swagger""" # noqa: E501
57
59
  self._single_file = None
58
60
  self._stored_path = None
59
61
  self._target_path = None
62
+ self._updated_at = None
60
63
  self.discriminator = None
61
64
  if single_file is not None:
62
65
  self.single_file = single_file
@@ -64,6 +67,8 @@ class V1DataPath(object):
64
67
  self.stored_path = stored_path
65
68
  if target_path is not None:
66
69
  self.target_path = target_path
70
+ if updated_at is not None:
71
+ self.updated_at = updated_at
67
72
 
68
73
  @property
69
74
  def single_file(self) -> 'bool':
@@ -128,6 +133,27 @@ class V1DataPath(object):
128
133
 
129
134
  self._target_path = target_path
130
135
 
136
+ @property
137
+ def updated_at(self) -> 'datetime':
138
+ """Gets the updated_at of this V1DataPath. # noqa: E501
139
+
140
+
141
+ :return: The updated_at of this V1DataPath. # noqa: E501
142
+ :rtype: datetime
143
+ """
144
+ return self._updated_at
145
+
146
+ @updated_at.setter
147
+ def updated_at(self, updated_at: 'datetime'):
148
+ """Sets the updated_at of this V1DataPath.
149
+
150
+
151
+ :param updated_at: The updated_at of this V1DataPath. # noqa: E501
152
+ :type: datetime
153
+ """
154
+
155
+ self._updated_at = updated_at
156
+
131
157
  def to_dict(self) -> dict:
132
158
  """Returns the model properties as a dict"""
133
159
  result = {}
@@ -0,0 +1,97 @@
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 V1DeleteMultiMachineJobResponse(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
+ }
45
+
46
+ attribute_map = {
47
+ }
48
+
49
+ def __init__(self): # noqa: E501
50
+ """V1DeleteMultiMachineJobResponse - a model defined in Swagger""" # noqa: E501
51
+ self.discriminator = None
52
+
53
+ def to_dict(self) -> dict:
54
+ """Returns the model properties as a dict"""
55
+ result = {}
56
+
57
+ for attr, _ in six.iteritems(self.swagger_types):
58
+ value = getattr(self, attr)
59
+ if isinstance(value, list):
60
+ result[attr] = list(map(
61
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
62
+ value
63
+ ))
64
+ elif hasattr(value, "to_dict"):
65
+ result[attr] = value.to_dict()
66
+ elif isinstance(value, dict):
67
+ result[attr] = dict(map(
68
+ lambda item: (item[0], item[1].to_dict())
69
+ if hasattr(item[1], "to_dict") else item,
70
+ value.items()
71
+ ))
72
+ else:
73
+ result[attr] = value
74
+ if issubclass(V1DeleteMultiMachineJobResponse, dict):
75
+ for key, value in self.items():
76
+ result[key] = value
77
+
78
+ return result
79
+
80
+ def to_str(self) -> str:
81
+ """Returns the string representation of the model"""
82
+ return pprint.pformat(self.to_dict())
83
+
84
+ def __repr__(self) -> str:
85
+ """For `print` and `pprint`"""
86
+ return self.to_str()
87
+
88
+ def __eq__(self, other: 'V1DeleteMultiMachineJobResponse') -> bool:
89
+ """Returns true if both objects are equal"""
90
+ if not isinstance(other, V1DeleteMultiMachineJobResponse):
91
+ return False
92
+
93
+ return self.__dict__ == other.__dict__
94
+
95
+ def __ne__(self, other: 'V1DeleteMultiMachineJobResponse') -> bool:
96
+ """Returns true if both objects are not equal"""
97
+ return not self == other
@@ -41,40 +41,66 @@ class V1DeploymentMetrics(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
- 'url': 'str'
44
+ 'performance': 'V1DeploymentPerformance',
45
+ 'urls': 'list[str]'
45
46
  }
46
47
 
47
48
  attribute_map = {
48
- 'url': 'url'
49
+ 'performance': 'performance',
50
+ 'urls': 'urls'
49
51
  }
50
52
 
51
- def __init__(self, url: 'str' =None): # noqa: E501
53
+ def __init__(self, performance: 'V1DeploymentPerformance' =None, urls: 'list[str]' =None): # noqa: E501
52
54
  """V1DeploymentMetrics - a model defined in Swagger""" # noqa: E501
53
- self._url = None
55
+ self._performance = None
56
+ self._urls = None
54
57
  self.discriminator = None
55
- if url is not None:
56
- self.url = url
58
+ if performance is not None:
59
+ self.performance = performance
60
+ if urls is not None:
61
+ self.urls = urls
57
62
 
58
63
  @property
59
- def url(self) -> 'str':
60
- """Gets the url of this V1DeploymentMetrics. # noqa: E501
64
+ def performance(self) -> 'V1DeploymentPerformance':
65
+ """Gets the performance of this V1DeploymentMetrics. # noqa: E501
61
66
 
62
67
 
63
- :return: The url of this V1DeploymentMetrics. # noqa: E501
64
- :rtype: str
68
+ :return: The performance of this V1DeploymentMetrics. # noqa: E501
69
+ :rtype: V1DeploymentPerformance
65
70
  """
66
- return self._url
71
+ return self._performance
67
72
 
68
- @url.setter
69
- def url(self, url: 'str'):
70
- """Sets the url of this V1DeploymentMetrics.
73
+ @performance.setter
74
+ def performance(self, performance: 'V1DeploymentPerformance'):
75
+ """Sets the performance of this V1DeploymentMetrics.
71
76
 
72
77
 
73
- :param url: The url of this V1DeploymentMetrics. # noqa: E501
74
- :type: str
78
+ :param performance: The performance of this V1DeploymentMetrics. # noqa: E501
79
+ :type: V1DeploymentPerformance
75
80
  """
76
81
 
77
- self._url = url
82
+ self._performance = performance
83
+
84
+ @property
85
+ def urls(self) -> 'list[str]':
86
+ """Gets the urls of this V1DeploymentMetrics. # noqa: E501
87
+
88
+
89
+ :return: The urls of this V1DeploymentMetrics. # noqa: E501
90
+ :rtype: list[str]
91
+ """
92
+ return self._urls
93
+
94
+ @urls.setter
95
+ def urls(self, urls: 'list[str]'):
96
+ """Sets the urls of this V1DeploymentMetrics.
97
+
98
+
99
+ :param urls: The urls of this V1DeploymentMetrics. # noqa: E501
100
+ :type: list[str]
101
+ """
102
+
103
+ self._urls = urls
78
104
 
79
105
  def to_dict(self) -> dict:
80
106
  """Returns the model properties as a dict"""