lightning-sdk 2025.10.14__py3-none-any.whl → 2025.10.23__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.
- lightning_sdk/__init__.py +6 -3
- lightning_sdk/api/base_studio_api.py +13 -9
- lightning_sdk/api/job_api.py +4 -1
- lightning_sdk/api/license_api.py +26 -59
- lightning_sdk/api/studio_api.py +7 -2
- lightning_sdk/base_studio.py +30 -17
- lightning_sdk/cli/base_studio/list.py +1 -3
- lightning_sdk/cli/entrypoint.py +11 -34
- lightning_sdk/cli/groups.py +7 -0
- lightning_sdk/cli/license/__init__.py +14 -0
- lightning_sdk/cli/license/get.py +15 -0
- lightning_sdk/cli/license/list.py +45 -0
- lightning_sdk/cli/license/set.py +13 -0
- lightning_sdk/cli/studio/connect.py +42 -92
- lightning_sdk/cli/studio/create.py +23 -1
- lightning_sdk/cli/studio/start.py +12 -2
- lightning_sdk/cli/utils/get_base_studio.py +24 -0
- lightning_sdk/cli/utils/handle_machine_and_gpus_args.py +69 -0
- lightning_sdk/cli/utils/logging.py +121 -0
- lightning_sdk/cli/utils/ssh_connection.py +1 -1
- lightning_sdk/constants.py +1 -0
- lightning_sdk/helpers.py +53 -34
- lightning_sdk/job/base.py +7 -0
- lightning_sdk/job/job.py +8 -0
- lightning_sdk/job/v1.py +3 -0
- lightning_sdk/job/v2.py +4 -0
- lightning_sdk/lightning_cloud/login.py +260 -10
- lightning_sdk/lightning_cloud/openapi/__init__.py +16 -3
- lightning_sdk/lightning_cloud/openapi/api/auth_service_api.py +279 -0
- lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +117 -0
- lightning_sdk/lightning_cloud/openapi/api/product_license_service_api.py +108 -108
- lightning_sdk/lightning_cloud/openapi/models/__init__.py +16 -3
- lightning_sdk/lightning_cloud/openapi/models/create_machine_request_represents_the_request_to_create_a_machine.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/id_fork_body1.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/license_key_validate_body.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/update1.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_create_license_request.py +175 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_delete_license_response.py +97 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_metric.py +201 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_transfer_estimate_response.py +29 -3
- lightning_sdk/lightning_cloud/openapi/models/v1_incident.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_incident_detail.py +149 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_incident_event.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_license.py +227 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_metrics_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/{v1_list_product_licenses_response.py → v1_list_license_response.py} +16 -16
- lightning_sdk/lightning_cloud/openapi/models/v1_list_platform_notifications_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_platform_notification.py +279 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_request.py +97 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_slack_notifier.py +53 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_token_login_request.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_token_login_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_token_owner_type.py +104 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +139 -191
- lightning_sdk/lightning_cloud/openapi/models/{v1_product_license_check_response.py → v1_validate_license_response.py} +21 -21
- lightning_sdk/lightning_cloud/rest_client.py +48 -45
- lightning_sdk/machine.py +5 -0
- lightning_sdk/pipeline/steps.py +1 -0
- lightning_sdk/studio.py +55 -13
- lightning_sdk/utils/config.py +18 -3
- lightning_sdk/utils/license.py +13 -0
- lightning_sdk/utils/resolve.py +6 -1
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.dist-info}/METADATA +1 -1
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.dist-info}/RECORD +74 -54
- lightning_sdk/lightning_cloud/openapi/models/v1_product_license.py +0 -435
- lightning_sdk/services/license.py +0 -363
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.dist-info}/LICENSE +0 -0
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.dist-info}/WHEEL +0 -0
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.dist-info}/entry_points.txt +0 -0
- {lightning_sdk-2025.10.14.dist-info → lightning_sdk-2025.10.23.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 V1IncidentDetail(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
|
+
'contents': 'str',
|
|
45
|
+
'name': 'str'
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
attribute_map = {
|
|
49
|
+
'contents': 'contents',
|
|
50
|
+
'name': 'name'
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
def __init__(self, contents: 'str' =None, name: 'str' =None): # noqa: E501
|
|
54
|
+
"""V1IncidentDetail - a model defined in Swagger""" # noqa: E501
|
|
55
|
+
self._contents = None
|
|
56
|
+
self._name = None
|
|
57
|
+
self.discriminator = None
|
|
58
|
+
if contents is not None:
|
|
59
|
+
self.contents = contents
|
|
60
|
+
if name is not None:
|
|
61
|
+
self.name = name
|
|
62
|
+
|
|
63
|
+
@property
|
|
64
|
+
def contents(self) -> 'str':
|
|
65
|
+
"""Gets the contents of this V1IncidentDetail. # noqa: E501
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
:return: The contents of this V1IncidentDetail. # noqa: E501
|
|
69
|
+
:rtype: str
|
|
70
|
+
"""
|
|
71
|
+
return self._contents
|
|
72
|
+
|
|
73
|
+
@contents.setter
|
|
74
|
+
def contents(self, contents: 'str'):
|
|
75
|
+
"""Sets the contents of this V1IncidentDetail.
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
:param contents: The contents of this V1IncidentDetail. # noqa: E501
|
|
79
|
+
:type: str
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
self._contents = contents
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def name(self) -> 'str':
|
|
86
|
+
"""Gets the name of this V1IncidentDetail. # noqa: E501
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
:return: The name of this V1IncidentDetail. # noqa: E501
|
|
90
|
+
:rtype: str
|
|
91
|
+
"""
|
|
92
|
+
return self._name
|
|
93
|
+
|
|
94
|
+
@name.setter
|
|
95
|
+
def name(self, name: 'str'):
|
|
96
|
+
"""Sets the name of this V1IncidentDetail.
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
:param name: The name of this V1IncidentDetail. # noqa: E501
|
|
100
|
+
:type: str
|
|
101
|
+
"""
|
|
102
|
+
|
|
103
|
+
self._name = name
|
|
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(V1IncidentDetail, 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: 'V1IncidentDetail') -> bool:
|
|
141
|
+
"""Returns true if both objects are equal"""
|
|
142
|
+
if not isinstance(other, V1IncidentDetail):
|
|
143
|
+
return False
|
|
144
|
+
|
|
145
|
+
return self.__dict__ == other.__dict__
|
|
146
|
+
|
|
147
|
+
def __ne__(self, other: 'V1IncidentDetail') -> bool:
|
|
148
|
+
"""Returns true if both objects are not equal"""
|
|
149
|
+
return not self == other
|
|
@@ -57,6 +57,7 @@ class V1IncidentEvent(object):
|
|
|
57
57
|
'severity': 'V1IncidentSeverity',
|
|
58
58
|
'threshold': 'float',
|
|
59
59
|
'timestamp': 'datetime',
|
|
60
|
+
'title': 'str',
|
|
60
61
|
'type': 'V1IncidentType',
|
|
61
62
|
'updated_at': 'datetime'
|
|
62
63
|
}
|
|
@@ -78,11 +79,12 @@ class V1IncidentEvent(object):
|
|
|
78
79
|
'severity': 'severity',
|
|
79
80
|
'threshold': 'threshold',
|
|
80
81
|
'timestamp': 'timestamp',
|
|
82
|
+
'title': 'title',
|
|
81
83
|
'type': 'type',
|
|
82
84
|
'updated_at': 'updatedAt'
|
|
83
85
|
}
|
|
84
86
|
|
|
85
|
-
def __init__(self, closing: 'bool' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, current_value: 'float' =None, id: 'str' =None, incident_id: 'str' =None, k8s: 'V1K8sIncidentIndexes' =None, message: 'str' =None, multiple_event: 'bool' =None, notified: 'bool' =None, previous_value: 'float' =None, project_id: 'str' =None, resource: 'str' =None, severity: 'V1IncidentSeverity' =None, threshold: 'float' =None, timestamp: 'datetime' =None, type: 'V1IncidentType' =None, updated_at: 'datetime' =None): # noqa: E501
|
|
87
|
+
def __init__(self, closing: 'bool' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, current_value: 'float' =None, id: 'str' =None, incident_id: 'str' =None, k8s: 'V1K8sIncidentIndexes' =None, message: 'str' =None, multiple_event: 'bool' =None, notified: 'bool' =None, previous_value: 'float' =None, project_id: 'str' =None, resource: 'str' =None, severity: 'V1IncidentSeverity' =None, threshold: 'float' =None, timestamp: 'datetime' =None, title: 'str' =None, type: 'V1IncidentType' =None, updated_at: 'datetime' =None): # noqa: E501
|
|
86
88
|
"""V1IncidentEvent - a model defined in Swagger""" # noqa: E501
|
|
87
89
|
self._closing = None
|
|
88
90
|
self._cluster_id = None
|
|
@@ -100,6 +102,7 @@ class V1IncidentEvent(object):
|
|
|
100
102
|
self._severity = None
|
|
101
103
|
self._threshold = None
|
|
102
104
|
self._timestamp = None
|
|
105
|
+
self._title = None
|
|
103
106
|
self._type = None
|
|
104
107
|
self._updated_at = None
|
|
105
108
|
self.discriminator = None
|
|
@@ -135,6 +138,8 @@ class V1IncidentEvent(object):
|
|
|
135
138
|
self.threshold = threshold
|
|
136
139
|
if timestamp is not None:
|
|
137
140
|
self.timestamp = timestamp
|
|
141
|
+
if title is not None:
|
|
142
|
+
self.title = title
|
|
138
143
|
if type is not None:
|
|
139
144
|
self.type = type
|
|
140
145
|
if updated_at is not None:
|
|
@@ -476,6 +481,27 @@ class V1IncidentEvent(object):
|
|
|
476
481
|
|
|
477
482
|
self._timestamp = timestamp
|
|
478
483
|
|
|
484
|
+
@property
|
|
485
|
+
def title(self) -> 'str':
|
|
486
|
+
"""Gets the title of this V1IncidentEvent. # noqa: E501
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
:return: The title of this V1IncidentEvent. # noqa: E501
|
|
490
|
+
:rtype: str
|
|
491
|
+
"""
|
|
492
|
+
return self._title
|
|
493
|
+
|
|
494
|
+
@title.setter
|
|
495
|
+
def title(self, title: 'str'):
|
|
496
|
+
"""Sets the title of this V1IncidentEvent.
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
:param title: The title of this V1IncidentEvent. # noqa: E501
|
|
500
|
+
:type: str
|
|
501
|
+
"""
|
|
502
|
+
|
|
503
|
+
self._title = title
|
|
504
|
+
|
|
479
505
|
@property
|
|
480
506
|
def type(self) -> 'V1IncidentType':
|
|
481
507
|
"""Gets the type of this V1IncidentEvent. # noqa: E501
|
|
@@ -0,0 +1,227 @@
|
|
|
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 V1License(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
|
+
'id': 'str',
|
|
45
|
+
'license_key': 'str',
|
|
46
|
+
'owner_id': 'str',
|
|
47
|
+
'owner_type': 'V1TokenOwnerType',
|
|
48
|
+
'product_id': 'str'
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
attribute_map = {
|
|
52
|
+
'id': 'id',
|
|
53
|
+
'license_key': 'licenseKey',
|
|
54
|
+
'owner_id': 'ownerId',
|
|
55
|
+
'owner_type': 'ownerType',
|
|
56
|
+
'product_id': 'productId'
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
def __init__(self, id: 'str' =None, license_key: 'str' =None, owner_id: 'str' =None, owner_type: 'V1TokenOwnerType' =None, product_id: 'str' =None): # noqa: E501
|
|
60
|
+
"""V1License - a model defined in Swagger""" # noqa: E501
|
|
61
|
+
self._id = None
|
|
62
|
+
self._license_key = None
|
|
63
|
+
self._owner_id = None
|
|
64
|
+
self._owner_type = None
|
|
65
|
+
self._product_id = None
|
|
66
|
+
self.discriminator = None
|
|
67
|
+
if id is not None:
|
|
68
|
+
self.id = id
|
|
69
|
+
if license_key is not None:
|
|
70
|
+
self.license_key = license_key
|
|
71
|
+
if owner_id is not None:
|
|
72
|
+
self.owner_id = owner_id
|
|
73
|
+
if owner_type is not None:
|
|
74
|
+
self.owner_type = owner_type
|
|
75
|
+
if product_id is not None:
|
|
76
|
+
self.product_id = product_id
|
|
77
|
+
|
|
78
|
+
@property
|
|
79
|
+
def id(self) -> 'str':
|
|
80
|
+
"""Gets the id of this V1License. # noqa: E501
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
:return: The id of this V1License. # noqa: E501
|
|
84
|
+
:rtype: str
|
|
85
|
+
"""
|
|
86
|
+
return self._id
|
|
87
|
+
|
|
88
|
+
@id.setter
|
|
89
|
+
def id(self, id: 'str'):
|
|
90
|
+
"""Sets the id of this V1License.
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
:param id: The id of this V1License. # noqa: E501
|
|
94
|
+
:type: str
|
|
95
|
+
"""
|
|
96
|
+
|
|
97
|
+
self._id = id
|
|
98
|
+
|
|
99
|
+
@property
|
|
100
|
+
def license_key(self) -> 'str':
|
|
101
|
+
"""Gets the license_key of this V1License. # noqa: E501
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
:return: The license_key of this V1License. # noqa: E501
|
|
105
|
+
:rtype: str
|
|
106
|
+
"""
|
|
107
|
+
return self._license_key
|
|
108
|
+
|
|
109
|
+
@license_key.setter
|
|
110
|
+
def license_key(self, license_key: 'str'):
|
|
111
|
+
"""Sets the license_key of this V1License.
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
:param license_key: The license_key of this V1License. # noqa: E501
|
|
115
|
+
:type: str
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
self._license_key = license_key
|
|
119
|
+
|
|
120
|
+
@property
|
|
121
|
+
def owner_id(self) -> 'str':
|
|
122
|
+
"""Gets the owner_id of this V1License. # noqa: E501
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
:return: The owner_id of this V1License. # noqa: E501
|
|
126
|
+
:rtype: str
|
|
127
|
+
"""
|
|
128
|
+
return self._owner_id
|
|
129
|
+
|
|
130
|
+
@owner_id.setter
|
|
131
|
+
def owner_id(self, owner_id: 'str'):
|
|
132
|
+
"""Sets the owner_id of this V1License.
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
:param owner_id: The owner_id of this V1License. # noqa: E501
|
|
136
|
+
:type: str
|
|
137
|
+
"""
|
|
138
|
+
|
|
139
|
+
self._owner_id = owner_id
|
|
140
|
+
|
|
141
|
+
@property
|
|
142
|
+
def owner_type(self) -> 'V1TokenOwnerType':
|
|
143
|
+
"""Gets the owner_type of this V1License. # noqa: E501
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
:return: The owner_type of this V1License. # noqa: E501
|
|
147
|
+
:rtype: V1TokenOwnerType
|
|
148
|
+
"""
|
|
149
|
+
return self._owner_type
|
|
150
|
+
|
|
151
|
+
@owner_type.setter
|
|
152
|
+
def owner_type(self, owner_type: 'V1TokenOwnerType'):
|
|
153
|
+
"""Sets the owner_type of this V1License.
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
:param owner_type: The owner_type of this V1License. # noqa: E501
|
|
157
|
+
:type: V1TokenOwnerType
|
|
158
|
+
"""
|
|
159
|
+
|
|
160
|
+
self._owner_type = owner_type
|
|
161
|
+
|
|
162
|
+
@property
|
|
163
|
+
def product_id(self) -> 'str':
|
|
164
|
+
"""Gets the product_id of this V1License. # noqa: E501
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
:return: The product_id of this V1License. # noqa: E501
|
|
168
|
+
:rtype: str
|
|
169
|
+
"""
|
|
170
|
+
return self._product_id
|
|
171
|
+
|
|
172
|
+
@product_id.setter
|
|
173
|
+
def product_id(self, product_id: 'str'):
|
|
174
|
+
"""Sets the product_id of this V1License.
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
:param product_id: The product_id of this V1License. # noqa: E501
|
|
178
|
+
:type: str
|
|
179
|
+
"""
|
|
180
|
+
|
|
181
|
+
self._product_id = product_id
|
|
182
|
+
|
|
183
|
+
def to_dict(self) -> dict:
|
|
184
|
+
"""Returns the model properties as a dict"""
|
|
185
|
+
result = {}
|
|
186
|
+
|
|
187
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
188
|
+
value = getattr(self, attr)
|
|
189
|
+
if isinstance(value, list):
|
|
190
|
+
result[attr] = list(map(
|
|
191
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
192
|
+
value
|
|
193
|
+
))
|
|
194
|
+
elif hasattr(value, "to_dict"):
|
|
195
|
+
result[attr] = value.to_dict()
|
|
196
|
+
elif isinstance(value, dict):
|
|
197
|
+
result[attr] = dict(map(
|
|
198
|
+
lambda item: (item[0], item[1].to_dict())
|
|
199
|
+
if hasattr(item[1], "to_dict") else item,
|
|
200
|
+
value.items()
|
|
201
|
+
))
|
|
202
|
+
else:
|
|
203
|
+
result[attr] = value
|
|
204
|
+
if issubclass(V1License, dict):
|
|
205
|
+
for key, value in self.items():
|
|
206
|
+
result[key] = value
|
|
207
|
+
|
|
208
|
+
return result
|
|
209
|
+
|
|
210
|
+
def to_str(self) -> str:
|
|
211
|
+
"""Returns the string representation of the model"""
|
|
212
|
+
return pprint.pformat(self.to_dict())
|
|
213
|
+
|
|
214
|
+
def __repr__(self) -> str:
|
|
215
|
+
"""For `print` and `pprint`"""
|
|
216
|
+
return self.to_str()
|
|
217
|
+
|
|
218
|
+
def __eq__(self, other: 'V1License') -> bool:
|
|
219
|
+
"""Returns true if both objects are equal"""
|
|
220
|
+
if not isinstance(other, V1License):
|
|
221
|
+
return False
|
|
222
|
+
|
|
223
|
+
return self.__dict__ == other.__dict__
|
|
224
|
+
|
|
225
|
+
def __ne__(self, other: 'V1License') -> bool:
|
|
226
|
+
"""Returns true if both objects are not equal"""
|
|
227
|
+
return not self == other
|
|
@@ -0,0 +1,123 @@
|
|
|
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 V1ListFilesystemMetricsResponse(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
|
+
'metrics': 'list[V1FilesystemMetric]'
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
attribute_map = {
|
|
48
|
+
'metrics': 'metrics'
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
def __init__(self, metrics: 'list[V1FilesystemMetric]' =None): # noqa: E501
|
|
52
|
+
"""V1ListFilesystemMetricsResponse - a model defined in Swagger""" # noqa: E501
|
|
53
|
+
self._metrics = None
|
|
54
|
+
self.discriminator = None
|
|
55
|
+
if metrics is not None:
|
|
56
|
+
self.metrics = metrics
|
|
57
|
+
|
|
58
|
+
@property
|
|
59
|
+
def metrics(self) -> 'list[V1FilesystemMetric]':
|
|
60
|
+
"""Gets the metrics of this V1ListFilesystemMetricsResponse. # noqa: E501
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
:return: The metrics of this V1ListFilesystemMetricsResponse. # noqa: E501
|
|
64
|
+
:rtype: list[V1FilesystemMetric]
|
|
65
|
+
"""
|
|
66
|
+
return self._metrics
|
|
67
|
+
|
|
68
|
+
@metrics.setter
|
|
69
|
+
def metrics(self, metrics: 'list[V1FilesystemMetric]'):
|
|
70
|
+
"""Sets the metrics of this V1ListFilesystemMetricsResponse.
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
:param metrics: The metrics of this V1ListFilesystemMetricsResponse. # noqa: E501
|
|
74
|
+
:type: list[V1FilesystemMetric]
|
|
75
|
+
"""
|
|
76
|
+
|
|
77
|
+
self._metrics = metrics
|
|
78
|
+
|
|
79
|
+
def to_dict(self) -> dict:
|
|
80
|
+
"""Returns the model properties as a dict"""
|
|
81
|
+
result = {}
|
|
82
|
+
|
|
83
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
84
|
+
value = getattr(self, attr)
|
|
85
|
+
if isinstance(value, list):
|
|
86
|
+
result[attr] = list(map(
|
|
87
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
88
|
+
value
|
|
89
|
+
))
|
|
90
|
+
elif hasattr(value, "to_dict"):
|
|
91
|
+
result[attr] = value.to_dict()
|
|
92
|
+
elif isinstance(value, dict):
|
|
93
|
+
result[attr] = dict(map(
|
|
94
|
+
lambda item: (item[0], item[1].to_dict())
|
|
95
|
+
if hasattr(item[1], "to_dict") else item,
|
|
96
|
+
value.items()
|
|
97
|
+
))
|
|
98
|
+
else:
|
|
99
|
+
result[attr] = value
|
|
100
|
+
if issubclass(V1ListFilesystemMetricsResponse, dict):
|
|
101
|
+
for key, value in self.items():
|
|
102
|
+
result[key] = value
|
|
103
|
+
|
|
104
|
+
return result
|
|
105
|
+
|
|
106
|
+
def to_str(self) -> str:
|
|
107
|
+
"""Returns the string representation of the model"""
|
|
108
|
+
return pprint.pformat(self.to_dict())
|
|
109
|
+
|
|
110
|
+
def __repr__(self) -> str:
|
|
111
|
+
"""For `print` and `pprint`"""
|
|
112
|
+
return self.to_str()
|
|
113
|
+
|
|
114
|
+
def __eq__(self, other: 'V1ListFilesystemMetricsResponse') -> bool:
|
|
115
|
+
"""Returns true if both objects are equal"""
|
|
116
|
+
if not isinstance(other, V1ListFilesystemMetricsResponse):
|
|
117
|
+
return False
|
|
118
|
+
|
|
119
|
+
return self.__dict__ == other.__dict__
|
|
120
|
+
|
|
121
|
+
def __ne__(self, other: 'V1ListFilesystemMetricsResponse') -> bool:
|
|
122
|
+
"""Returns true if both objects are not equal"""
|
|
123
|
+
return not self == other
|
|
@@ -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
|
|
31
|
+
class V1ListLicenseResponse(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.
|
|
@@ -41,37 +41,37 @@ class V1ListProductLicensesResponse(object):
|
|
|
41
41
|
and the value is json key in definition.
|
|
42
42
|
"""
|
|
43
43
|
swagger_types = {
|
|
44
|
-
'licenses': 'list[
|
|
44
|
+
'licenses': 'list[V1License]'
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
attribute_map = {
|
|
48
48
|
'licenses': 'licenses'
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
def __init__(self, licenses: 'list[
|
|
52
|
-
"""
|
|
51
|
+
def __init__(self, licenses: 'list[V1License]' =None): # noqa: E501
|
|
52
|
+
"""V1ListLicenseResponse - a model defined in Swagger""" # noqa: E501
|
|
53
53
|
self._licenses = None
|
|
54
54
|
self.discriminator = None
|
|
55
55
|
if licenses is not None:
|
|
56
56
|
self.licenses = licenses
|
|
57
57
|
|
|
58
58
|
@property
|
|
59
|
-
def licenses(self) -> 'list[
|
|
60
|
-
"""Gets the licenses of this
|
|
59
|
+
def licenses(self) -> 'list[V1License]':
|
|
60
|
+
"""Gets the licenses of this V1ListLicenseResponse. # noqa: E501
|
|
61
61
|
|
|
62
62
|
|
|
63
|
-
:return: The licenses of this
|
|
64
|
-
:rtype: list[
|
|
63
|
+
:return: The licenses of this V1ListLicenseResponse. # noqa: E501
|
|
64
|
+
:rtype: list[V1License]
|
|
65
65
|
"""
|
|
66
66
|
return self._licenses
|
|
67
67
|
|
|
68
68
|
@licenses.setter
|
|
69
|
-
def licenses(self, licenses: 'list[
|
|
70
|
-
"""Sets the licenses of this
|
|
69
|
+
def licenses(self, licenses: 'list[V1License]'):
|
|
70
|
+
"""Sets the licenses of this V1ListLicenseResponse.
|
|
71
71
|
|
|
72
72
|
|
|
73
|
-
:param licenses: The licenses of this
|
|
74
|
-
:type: list[
|
|
73
|
+
:param licenses: The licenses of this V1ListLicenseResponse. # noqa: E501
|
|
74
|
+
:type: list[V1License]
|
|
75
75
|
"""
|
|
76
76
|
|
|
77
77
|
self._licenses = licenses
|
|
@@ -97,7 +97,7 @@ class V1ListProductLicensesResponse(object):
|
|
|
97
97
|
))
|
|
98
98
|
else:
|
|
99
99
|
result[attr] = value
|
|
100
|
-
if issubclass(
|
|
100
|
+
if issubclass(V1ListLicenseResponse, dict):
|
|
101
101
|
for key, value in self.items():
|
|
102
102
|
result[key] = value
|
|
103
103
|
|
|
@@ -111,13 +111,13 @@ class V1ListProductLicensesResponse(object):
|
|
|
111
111
|
"""For `print` and `pprint`"""
|
|
112
112
|
return self.to_str()
|
|
113
113
|
|
|
114
|
-
def __eq__(self, other: '
|
|
114
|
+
def __eq__(self, other: 'V1ListLicenseResponse') -> bool:
|
|
115
115
|
"""Returns true if both objects are equal"""
|
|
116
|
-
if not isinstance(other,
|
|
116
|
+
if not isinstance(other, V1ListLicenseResponse):
|
|
117
117
|
return False
|
|
118
118
|
|
|
119
119
|
return self.__dict__ == other.__dict__
|
|
120
120
|
|
|
121
|
-
def __ne__(self, other: '
|
|
121
|
+
def __ne__(self, other: 'V1ListLicenseResponse') -> bool:
|
|
122
122
|
"""Returns true if both objects are not equal"""
|
|
123
123
|
return not self == other
|