lightning-sdk 0.1.31__py3-none-any.whl → 0.1.32__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 (65) hide show
  1. lightning_sdk/__init__.py +3 -1
  2. lightning_sdk/ai_hub.py +29 -0
  3. lightning_sdk/api/__init__.py +2 -0
  4. lightning_sdk/api/ai_hub_api.py +15 -0
  5. lightning_sdk/api/user_api.py +8 -2
  6. lightning_sdk/cli/upload.py +10 -6
  7. lightning_sdk/lightning_cloud/openapi/__init__.py +26 -0
  8. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  9. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +101 -0
  10. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +674 -0
  11. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +396 -0
  12. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +1 -0
  13. lightning_sdk/lightning_cloud/openapi/models/__init__.py +25 -0
  14. lightning_sdk/lightning_cloud/openapi/models/create.py +79 -1
  15. lightning_sdk/lightning_cloud/openapi/models/deploymenttemplates_id_body.py +79 -1
  16. lightning_sdk/lightning_cloud/openapi/models/litloggermetrics_id_body.py +175 -0
  17. lightning_sdk/lightning_cloud/openapi/models/update.py +105 -1
  18. lightning_sdk/lightning_cloud/openapi/models/v1_affiliate_link.py +79 -1
  19. lightning_sdk/lightning_cloud/openapi/models/v1_app_type.py +104 -0
  20. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/v1_create_deployment_template_request.py +79 -1
  22. lightning_sdk/lightning_cloud/openapi/models/v1_create_shared_metrics_stream_request.py +201 -0
  23. lightning_sdk/lightning_cloud/openapi/models/v1_create_shared_metrics_stream_response.py +123 -0
  24. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +79 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_data_path.py +175 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_delete_shared_metrics_stream_response.py +97 -0
  27. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_metrics.py +123 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template.py +79 -1
  29. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter.py +69 -17
  30. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_parameter_type.py +1 -0
  31. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_template_summary.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_efs_folder_data_connection.py +201 -0
  33. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_app.py +227 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_cloud_space.py +149 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_dataset.py +123 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_job.py +175 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_slurm_job.py +149 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_snowflake_connection.py +123 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_work.py +149 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_gcs_folder_data_connection.py +123 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_input.py +29 -3
  42. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_lightningwork_spec.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_python_versions_response.py +123 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_apps_response.py +123 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_cloud_spaces_response.py +123 -0
  47. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_datasets_response.py +123 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_jobs_response.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_slurm_jobs_response.py +123 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_snowflake_response.py +123 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_model.py +6 -6
  52. lightning_sdk/lightning_cloud/openapi/models/v1_model_version_archive.py +53 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_s3_folder_data_connection.py +123 -0
  54. lightning_sdk/lightning_cloud/openapi/models/v1_transaction.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_update_shared_metrics_stream_response.py +97 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +53 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +81 -3
  58. lightning_sdk/lightning_cloud/openapi/models/validate.py +81 -3
  59. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  60. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/METADATA +1 -1
  61. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/RECORD +65 -37
  62. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/LICENSE +0 -0
  63. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/WHEEL +0 -0
  64. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/entry_points.txt +0 -0
  65. {lightning_sdk-0.1.31.dist-info → lightning_sdk-0.1.32.dist-info}/top_level.txt +0 -0
@@ -47,6 +47,9 @@ class V1AffiliateLink(object):
47
47
  'id': 'str',
48
48
  'max_uses': 'int',
49
49
  'name': 'str',
50
+ 'referred_incentives': 'dict(str, str)',
51
+ 'skip_waitlist': 'bool',
52
+ 'type': 'str',
50
53
  'updated_at': 'datetime',
51
54
  'url': 'str',
52
55
  'usage_count': 'int',
@@ -60,13 +63,16 @@ class V1AffiliateLink(object):
60
63
  'id': 'id',
61
64
  'max_uses': 'maxUses',
62
65
  'name': 'name',
66
+ 'referred_incentives': 'referredIncentives',
67
+ 'skip_waitlist': 'skipWaitlist',
68
+ 'type': 'type',
63
69
  'updated_at': 'updatedAt',
64
70
  'url': 'url',
65
71
  'usage_count': 'usageCount',
66
72
  'user_id': 'userId'
67
73
  }
68
74
 
69
- def __init__(self, code: 'str' =None, created_at: 'datetime' =None, expires_at: 'datetime' =None, id: 'str' =None, max_uses: 'int' =None, name: 'str' =None, updated_at: 'datetime' =None, url: 'str' =None, usage_count: 'int' =None, user_id: 'str' =None): # noqa: E501
75
+ def __init__(self, code: 'str' =None, created_at: 'datetime' =None, expires_at: 'datetime' =None, id: 'str' =None, max_uses: 'int' =None, name: 'str' =None, referred_incentives: 'dict(str, str)' =None, skip_waitlist: 'bool' =None, type: 'str' =None, updated_at: 'datetime' =None, url: 'str' =None, usage_count: 'int' =None, user_id: 'str' =None): # noqa: E501
70
76
  """V1AffiliateLink - a model defined in Swagger""" # noqa: E501
71
77
  self._code = None
72
78
  self._created_at = None
@@ -74,6 +80,9 @@ class V1AffiliateLink(object):
74
80
  self._id = None
75
81
  self._max_uses = None
76
82
  self._name = None
83
+ self._referred_incentives = None
84
+ self._skip_waitlist = None
85
+ self._type = None
77
86
  self._updated_at = None
78
87
  self._url = None
79
88
  self._usage_count = None
@@ -91,6 +100,12 @@ class V1AffiliateLink(object):
91
100
  self.max_uses = max_uses
92
101
  if name is not None:
93
102
  self.name = name
103
+ if referred_incentives is not None:
104
+ self.referred_incentives = referred_incentives
105
+ if skip_waitlist is not None:
106
+ self.skip_waitlist = skip_waitlist
107
+ if type is not None:
108
+ self.type = type
94
109
  if updated_at is not None:
95
110
  self.updated_at = updated_at
96
111
  if url is not None:
@@ -226,6 +241,69 @@ class V1AffiliateLink(object):
226
241
 
227
242
  self._name = name
228
243
 
244
+ @property
245
+ def referred_incentives(self) -> 'dict(str, str)':
246
+ """Gets the referred_incentives of this V1AffiliateLink. # noqa: E501
247
+
248
+
249
+ :return: The referred_incentives of this V1AffiliateLink. # noqa: E501
250
+ :rtype: dict(str, str)
251
+ """
252
+ return self._referred_incentives
253
+
254
+ @referred_incentives.setter
255
+ def referred_incentives(self, referred_incentives: 'dict(str, str)'):
256
+ """Sets the referred_incentives of this V1AffiliateLink.
257
+
258
+
259
+ :param referred_incentives: The referred_incentives of this V1AffiliateLink. # noqa: E501
260
+ :type: dict(str, str)
261
+ """
262
+
263
+ self._referred_incentives = referred_incentives
264
+
265
+ @property
266
+ def skip_waitlist(self) -> 'bool':
267
+ """Gets the skip_waitlist of this V1AffiliateLink. # noqa: E501
268
+
269
+
270
+ :return: The skip_waitlist of this V1AffiliateLink. # noqa: E501
271
+ :rtype: bool
272
+ """
273
+ return self._skip_waitlist
274
+
275
+ @skip_waitlist.setter
276
+ def skip_waitlist(self, skip_waitlist: 'bool'):
277
+ """Sets the skip_waitlist of this V1AffiliateLink.
278
+
279
+
280
+ :param skip_waitlist: The skip_waitlist of this V1AffiliateLink. # noqa: E501
281
+ :type: bool
282
+ """
283
+
284
+ self._skip_waitlist = skip_waitlist
285
+
286
+ @property
287
+ def type(self) -> 'str':
288
+ """Gets the type of this V1AffiliateLink. # noqa: E501
289
+
290
+
291
+ :return: The type of this V1AffiliateLink. # noqa: E501
292
+ :rtype: str
293
+ """
294
+ return self._type
295
+
296
+ @type.setter
297
+ def type(self, type: 'str'):
298
+ """Sets the type of this V1AffiliateLink.
299
+
300
+
301
+ :param type: The type of this V1AffiliateLink. # noqa: E501
302
+ :type: str
303
+ """
304
+
305
+ self._type = type
306
+
229
307
  @property
230
308
  def updated_at(self) -> 'datetime':
231
309
  """Gets the updated_at of this V1AffiliateLink. # 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 V1AppType(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
+ JOB = "APP_TYPE_JOB"
41
+ MMT = "APP_TYPE_MMT"
42
+ DATA_PREP = "APP_TYPE_DATA_PREP"
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
+ """V1AppType - 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(V1AppType, 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: 'V1AppType') -> bool:
96
+ """Returns true if both objects are equal"""
97
+ if not isinstance(other, V1AppType):
98
+ return False
99
+
100
+ return self.__dict__ == other.__dict__
101
+
102
+ def __ne__(self, other: 'V1AppType') -> bool:
103
+ """Returns true if both objects are not equal"""
104
+ return not self == other
@@ -63,6 +63,7 @@ class V1ClusterAccelerator(object):
63
63
  'is_tier_restricted': 'bool',
64
64
  'local_disk_size': 'str',
65
65
  'local_disk_supported': 'bool',
66
+ 'max_available_quota': 'str',
66
67
  'non_spot': 'bool',
67
68
  'quota_checked_at': 'datetime',
68
69
  'quota_code': 'str',
@@ -101,6 +102,7 @@ class V1ClusterAccelerator(object):
101
102
  'is_tier_restricted': 'isTierRestricted',
102
103
  'local_disk_size': 'localDiskSize',
103
104
  'local_disk_supported': 'localDiskSupported',
105
+ 'max_available_quota': 'maxAvailableQuota',
104
106
  'non_spot': 'nonSpot',
105
107
  'quota_checked_at': 'quotaCheckedAt',
106
108
  'quota_code': 'quotaCode',
@@ -116,7 +118,7 @@ class V1ClusterAccelerator(object):
116
118
  'spot_price': 'spotPrice'
117
119
  }
118
120
 
119
- def __init__(self, accelerator_type: 'str' =None, allowed_resources: 'list[str]' =None, available_in_seconds: 'str' =None, available_in_seconds_spot: 'str' =None, available_zones: 'list[str]' =None, byoc_only: 'bool' =None, capacity_block_only: 'bool' =None, capacity_block_price: 'float' =None, capacity_blocks_available: 'list[V1ClusterCapacityReservation]' =None, cluster_id: 'str' =None, cost: 'float' =None, detailed_quotas_info: 'list[V1AcceleratorQuotaInfo]' =None, device_card: 'str' =None, device_info: 'str' =None, display_name: 'str' =None, enabled: 'bool' =None, family: 'str' =None, instance_id: 'str' =None, is_custom: 'bool' =None, is_tier_restricted: 'bool' =None, local_disk_size: 'str' =None, local_disk_supported: 'bool' =None, non_spot: 'bool' =None, quota_checked_at: 'datetime' =None, quota_code: 'str' =None, quota_name: 'str' =None, quota_page_url: 'str' =None, quota_service_code: 'str' =None, quota_utilization: 'str' =None, quota_value: 'str' =None, reservable: 'bool' =None, reservation_available_zones: 'list[str]' =None, resources: 'V1Resources' =None, slug: 'str' =None, spot_price: 'float' =None): # noqa: E501
121
+ def __init__(self, accelerator_type: 'str' =None, allowed_resources: 'list[str]' =None, available_in_seconds: 'str' =None, available_in_seconds_spot: 'str' =None, available_zones: 'list[str]' =None, byoc_only: 'bool' =None, capacity_block_only: 'bool' =None, capacity_block_price: 'float' =None, capacity_blocks_available: 'list[V1ClusterCapacityReservation]' =None, cluster_id: 'str' =None, cost: 'float' =None, detailed_quotas_info: 'list[V1AcceleratorQuotaInfo]' =None, device_card: 'str' =None, device_info: 'str' =None, display_name: 'str' =None, enabled: 'bool' =None, family: 'str' =None, instance_id: 'str' =None, is_custom: 'bool' =None, is_tier_restricted: 'bool' =None, local_disk_size: 'str' =None, local_disk_supported: 'bool' =None, max_available_quota: 'str' =None, non_spot: 'bool' =None, quota_checked_at: 'datetime' =None, quota_code: 'str' =None, quota_name: 'str' =None, quota_page_url: 'str' =None, quota_service_code: 'str' =None, quota_utilization: 'str' =None, quota_value: 'str' =None, reservable: 'bool' =None, reservation_available_zones: 'list[str]' =None, resources: 'V1Resources' =None, slug: 'str' =None, spot_price: 'float' =None): # noqa: E501
120
122
  """V1ClusterAccelerator - a model defined in Swagger""" # noqa: E501
121
123
  self._accelerator_type = None
122
124
  self._allowed_resources = None
@@ -140,6 +142,7 @@ class V1ClusterAccelerator(object):
140
142
  self._is_tier_restricted = None
141
143
  self._local_disk_size = None
142
144
  self._local_disk_supported = None
145
+ self._max_available_quota = None
143
146
  self._non_spot = None
144
147
  self._quota_checked_at = None
145
148
  self._quota_code = None
@@ -198,6 +201,8 @@ class V1ClusterAccelerator(object):
198
201
  self.local_disk_size = local_disk_size
199
202
  if local_disk_supported is not None:
200
203
  self.local_disk_supported = local_disk_supported
204
+ if max_available_quota is not None:
205
+ self.max_available_quota = max_available_quota
201
206
  if non_spot is not None:
202
207
  self.non_spot = non_spot
203
208
  if quota_checked_at is not None:
@@ -687,6 +692,27 @@ class V1ClusterAccelerator(object):
687
692
 
688
693
  self._local_disk_supported = local_disk_supported
689
694
 
695
+ @property
696
+ def max_available_quota(self) -> 'str':
697
+ """Gets the max_available_quota of this V1ClusterAccelerator. # noqa: E501
698
+
699
+
700
+ :return: The max_available_quota of this V1ClusterAccelerator. # noqa: E501
701
+ :rtype: str
702
+ """
703
+ return self._max_available_quota
704
+
705
+ @max_available_quota.setter
706
+ def max_available_quota(self, max_available_quota: 'str'):
707
+ """Sets the max_available_quota of this V1ClusterAccelerator.
708
+
709
+
710
+ :param max_available_quota: The max_available_quota of this V1ClusterAccelerator. # noqa: E501
711
+ :type: str
712
+ """
713
+
714
+ self._max_available_quota = max_available_quota
715
+
690
716
  @property
691
717
  def non_spot(self) -> 'bool':
692
718
  """Gets the non_spot of this V1ClusterAccelerator. # noqa: E501
@@ -46,12 +46,15 @@ class V1CreateDeploymentTemplateRequest(object):
46
46
  'deployment_id': 'str',
47
47
  'description': 'str',
48
48
  'image_url': 'str',
49
+ 'metrics': 'list[V1DeploymentMetrics]',
49
50
  'name': 'str',
50
51
  'org_id': 'str',
51
52
  'parameter_spec': 'V1ParameterizationSpec',
52
53
  'project_id': 'str',
53
54
  'spec': 'str',
54
55
  'tags': 'list[V1ResourceTag]',
56
+ 'thumbnail': 'str',
57
+ 'thumbnail_file_type': 'str',
55
58
  'version': 'str',
56
59
  'visibility': 'V1DeploymentTemplateType'
57
60
  }
@@ -62,29 +65,35 @@ class V1CreateDeploymentTemplateRequest(object):
62
65
  'deployment_id': 'deploymentId',
63
66
  'description': 'description',
64
67
  'image_url': 'imageUrl',
68
+ 'metrics': 'metrics',
65
69
  'name': 'name',
66
70
  'org_id': 'orgId',
67
71
  'parameter_spec': 'parameterSpec',
68
72
  'project_id': 'projectId',
69
73
  'spec': 'spec',
70
74
  'tags': 'tags',
75
+ 'thumbnail': 'thumbnail',
76
+ 'thumbnail_file_type': 'thumbnailFileType',
71
77
  'version': 'version',
72
78
  'visibility': 'visibility'
73
79
  }
74
80
 
75
- def __init__(self, about_page_content: 'str' =None, categories: 'list[str]' =None, deployment_id: 'str' =None, description: 'str' =None, image_url: 'str' =None, name: 'str' =None, org_id: 'str' =None, parameter_spec: 'V1ParameterizationSpec' =None, project_id: 'str' =None, spec: 'str' =None, tags: 'list[V1ResourceTag]' =None, version: 'str' =None, visibility: 'V1DeploymentTemplateType' =None): # noqa: E501
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
76
82
  """V1CreateDeploymentTemplateRequest - a model defined in Swagger""" # noqa: E501
77
83
  self._about_page_content = None
78
84
  self._categories = None
79
85
  self._deployment_id = None
80
86
  self._description = None
81
87
  self._image_url = None
88
+ self._metrics = None
82
89
  self._name = None
83
90
  self._org_id = None
84
91
  self._parameter_spec = None
85
92
  self._project_id = None
86
93
  self._spec = None
87
94
  self._tags = None
95
+ self._thumbnail = None
96
+ self._thumbnail_file_type = None
88
97
  self._version = None
89
98
  self._visibility = None
90
99
  self.discriminator = None
@@ -98,6 +107,8 @@ class V1CreateDeploymentTemplateRequest(object):
98
107
  self.description = description
99
108
  if image_url is not None:
100
109
  self.image_url = image_url
110
+ if metrics is not None:
111
+ self.metrics = metrics
101
112
  if name is not None:
102
113
  self.name = name
103
114
  if org_id is not None:
@@ -110,6 +121,10 @@ class V1CreateDeploymentTemplateRequest(object):
110
121
  self.spec = spec
111
122
  if tags is not None:
112
123
  self.tags = tags
124
+ if thumbnail is not None:
125
+ self.thumbnail = thumbnail
126
+ if thumbnail_file_type is not None:
127
+ self.thumbnail_file_type = thumbnail_file_type
113
128
  if version is not None:
114
129
  self.version = version
115
130
  if visibility is not None:
@@ -220,6 +235,27 @@ class V1CreateDeploymentTemplateRequest(object):
220
235
 
221
236
  self._image_url = image_url
222
237
 
238
+ @property
239
+ def metrics(self) -> 'list[V1DeploymentMetrics]':
240
+ """Gets the metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
241
+
242
+
243
+ :return: The metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
244
+ :rtype: list[V1DeploymentMetrics]
245
+ """
246
+ return self._metrics
247
+
248
+ @metrics.setter
249
+ def metrics(self, metrics: 'list[V1DeploymentMetrics]'):
250
+ """Sets the metrics of this V1CreateDeploymentTemplateRequest.
251
+
252
+
253
+ :param metrics: The metrics of this V1CreateDeploymentTemplateRequest. # noqa: E501
254
+ :type: list[V1DeploymentMetrics]
255
+ """
256
+
257
+ self._metrics = metrics
258
+
223
259
  @property
224
260
  def name(self) -> 'str':
225
261
  """Gets the name of this V1CreateDeploymentTemplateRequest. # noqa: E501
@@ -346,6 +382,48 @@ class V1CreateDeploymentTemplateRequest(object):
346
382
 
347
383
  self._tags = tags
348
384
 
385
+ @property
386
+ def thumbnail(self) -> 'str':
387
+ """Gets the thumbnail of this V1CreateDeploymentTemplateRequest. # noqa: E501
388
+
389
+
390
+ :return: The thumbnail of this V1CreateDeploymentTemplateRequest. # noqa: E501
391
+ :rtype: str
392
+ """
393
+ return self._thumbnail
394
+
395
+ @thumbnail.setter
396
+ def thumbnail(self, thumbnail: 'str'):
397
+ """Sets the thumbnail of this V1CreateDeploymentTemplateRequest.
398
+
399
+
400
+ :param thumbnail: The thumbnail of this V1CreateDeploymentTemplateRequest. # noqa: E501
401
+ :type: str
402
+ """
403
+
404
+ self._thumbnail = thumbnail
405
+
406
+ @property
407
+ def thumbnail_file_type(self) -> 'str':
408
+ """Gets the thumbnail_file_type of this V1CreateDeploymentTemplateRequest. # noqa: E501
409
+
410
+
411
+ :return: The thumbnail_file_type of this V1CreateDeploymentTemplateRequest. # noqa: E501
412
+ :rtype: str
413
+ """
414
+ return self._thumbnail_file_type
415
+
416
+ @thumbnail_file_type.setter
417
+ def thumbnail_file_type(self, thumbnail_file_type: 'str'):
418
+ """Sets the thumbnail_file_type of this V1CreateDeploymentTemplateRequest.
419
+
420
+
421
+ :param thumbnail_file_type: The thumbnail_file_type of this V1CreateDeploymentTemplateRequest. # noqa: E501
422
+ :type: str
423
+ """
424
+
425
+ self._thumbnail_file_type = thumbnail_file_type
426
+
349
427
  @property
350
428
  def version(self) -> 'str':
351
429
  """Gets the version of this V1CreateDeploymentTemplateRequest. # noqa: E501
@@ -0,0 +1,201 @@
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 V1CreateSharedMetricsStreamRequest(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'allowed_org_id': 'str',
45
+ 'allowed_user_ids': 'list[str]',
46
+ 'metrics_stream_id': 'str',
47
+ 'public': 'bool'
48
+ }
49
+
50
+ attribute_map = {
51
+ 'allowed_org_id': 'allowedOrgId',
52
+ 'allowed_user_ids': 'allowedUserIds',
53
+ 'metrics_stream_id': 'metricsStreamId',
54
+ 'public': 'public'
55
+ }
56
+
57
+ def __init__(self, allowed_org_id: 'str' =None, allowed_user_ids: 'list[str]' =None, metrics_stream_id: 'str' =None, public: 'bool' =None): # noqa: E501
58
+ """V1CreateSharedMetricsStreamRequest - a model defined in Swagger""" # noqa: E501
59
+ self._allowed_org_id = None
60
+ self._allowed_user_ids = None
61
+ self._metrics_stream_id = None
62
+ self._public = None
63
+ self.discriminator = None
64
+ if allowed_org_id is not None:
65
+ self.allowed_org_id = allowed_org_id
66
+ if allowed_user_ids is not None:
67
+ self.allowed_user_ids = allowed_user_ids
68
+ if metrics_stream_id is not None:
69
+ self.metrics_stream_id = metrics_stream_id
70
+ if public is not None:
71
+ self.public = public
72
+
73
+ @property
74
+ def allowed_org_id(self) -> 'str':
75
+ """Gets the allowed_org_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
76
+
77
+
78
+ :return: The allowed_org_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
79
+ :rtype: str
80
+ """
81
+ return self._allowed_org_id
82
+
83
+ @allowed_org_id.setter
84
+ def allowed_org_id(self, allowed_org_id: 'str'):
85
+ """Sets the allowed_org_id of this V1CreateSharedMetricsStreamRequest.
86
+
87
+
88
+ :param allowed_org_id: The allowed_org_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
89
+ :type: str
90
+ """
91
+
92
+ self._allowed_org_id = allowed_org_id
93
+
94
+ @property
95
+ def allowed_user_ids(self) -> 'list[str]':
96
+ """Gets the allowed_user_ids of this V1CreateSharedMetricsStreamRequest. # noqa: E501
97
+
98
+
99
+ :return: The allowed_user_ids of this V1CreateSharedMetricsStreamRequest. # noqa: E501
100
+ :rtype: list[str]
101
+ """
102
+ return self._allowed_user_ids
103
+
104
+ @allowed_user_ids.setter
105
+ def allowed_user_ids(self, allowed_user_ids: 'list[str]'):
106
+ """Sets the allowed_user_ids of this V1CreateSharedMetricsStreamRequest.
107
+
108
+
109
+ :param allowed_user_ids: The allowed_user_ids of this V1CreateSharedMetricsStreamRequest. # noqa: E501
110
+ :type: list[str]
111
+ """
112
+
113
+ self._allowed_user_ids = allowed_user_ids
114
+
115
+ @property
116
+ def metrics_stream_id(self) -> 'str':
117
+ """Gets the metrics_stream_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
118
+
119
+
120
+ :return: The metrics_stream_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
121
+ :rtype: str
122
+ """
123
+ return self._metrics_stream_id
124
+
125
+ @metrics_stream_id.setter
126
+ def metrics_stream_id(self, metrics_stream_id: 'str'):
127
+ """Sets the metrics_stream_id of this V1CreateSharedMetricsStreamRequest.
128
+
129
+
130
+ :param metrics_stream_id: The metrics_stream_id of this V1CreateSharedMetricsStreamRequest. # noqa: E501
131
+ :type: str
132
+ """
133
+
134
+ self._metrics_stream_id = metrics_stream_id
135
+
136
+ @property
137
+ def public(self) -> 'bool':
138
+ """Gets the public of this V1CreateSharedMetricsStreamRequest. # noqa: E501
139
+
140
+
141
+ :return: The public of this V1CreateSharedMetricsStreamRequest. # noqa: E501
142
+ :rtype: bool
143
+ """
144
+ return self._public
145
+
146
+ @public.setter
147
+ def public(self, public: 'bool'):
148
+ """Sets the public of this V1CreateSharedMetricsStreamRequest.
149
+
150
+
151
+ :param public: The public of this V1CreateSharedMetricsStreamRequest. # noqa: E501
152
+ :type: bool
153
+ """
154
+
155
+ self._public = public
156
+
157
+ def to_dict(self) -> dict:
158
+ """Returns the model properties as a dict"""
159
+ result = {}
160
+
161
+ for attr, _ in six.iteritems(self.swagger_types):
162
+ value = getattr(self, attr)
163
+ if isinstance(value, list):
164
+ result[attr] = list(map(
165
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
166
+ value
167
+ ))
168
+ elif hasattr(value, "to_dict"):
169
+ result[attr] = value.to_dict()
170
+ elif isinstance(value, dict):
171
+ result[attr] = dict(map(
172
+ lambda item: (item[0], item[1].to_dict())
173
+ if hasattr(item[1], "to_dict") else item,
174
+ value.items()
175
+ ))
176
+ else:
177
+ result[attr] = value
178
+ if issubclass(V1CreateSharedMetricsStreamRequest, dict):
179
+ for key, value in self.items():
180
+ result[key] = value
181
+
182
+ return result
183
+
184
+ def to_str(self) -> str:
185
+ """Returns the string representation of the model"""
186
+ return pprint.pformat(self.to_dict())
187
+
188
+ def __repr__(self) -> str:
189
+ """For `print` and `pprint`"""
190
+ return self.to_str()
191
+
192
+ def __eq__(self, other: 'V1CreateSharedMetricsStreamRequest') -> bool:
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, V1CreateSharedMetricsStreamRequest):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other: 'V1CreateSharedMetricsStreamRequest') -> bool:
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other