lightning-sdk 0.1.50__py3-none-any.whl → 0.1.51__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 +1 -1
- lightning_sdk/api/job_api.py +12 -7
- lightning_sdk/api/lit_container_api.py +24 -7
- lightning_sdk/api/mmt_api.py +12 -7
- lightning_sdk/api/utils.py +52 -0
- lightning_sdk/cli/run.py +60 -18
- lightning_sdk/cli/serve.py +1 -5
- lightning_sdk/cli/upload.py +33 -15
- lightning_sdk/helpers.py +1 -1
- lightning_sdk/job/base.py +12 -1
- lightning_sdk/job/job.py +27 -25
- lightning_sdk/job/v1.py +6 -2
- lightning_sdk/job/v2.py +12 -12
- lightning_sdk/lightning_cloud/login.py +4 -1
- lightning_sdk/lightning_cloud/openapi/__init__.py +3 -0
- lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +5 -1
- lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +113 -0
- lightning_sdk/lightning_cloud/openapi/models/__init__.py +3 -0
- lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/litregistry_lit_repo_name_body.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_deployment_api.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_path_mapping.py +175 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_update_lit_repository_response.py +97 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -79
- lightning_sdk/mmt/base.py +36 -26
- lightning_sdk/mmt/mmt.py +27 -25
- lightning_sdk/mmt/v1.py +4 -1
- lightning_sdk/mmt/v2.py +14 -13
- lightning_sdk/models.py +5 -4
- lightning_sdk/utils/resolve.py +7 -0
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/METADATA +2 -2
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/RECORD +39 -36
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/LICENSE +0 -0
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/WHEEL +0 -0
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/entry_points.txt +0 -0
- {lightning_sdk-0.1.50.dist-info → lightning_sdk-0.1.51.dist-info}/top_level.txt +0 -0
|
@@ -42,6 +42,7 @@ class V1DeploymentAPI(object):
|
|
|
42
42
|
"""
|
|
43
43
|
swagger_types = {
|
|
44
44
|
'body': 'V1Body',
|
|
45
|
+
'description': 'str',
|
|
45
46
|
'headers': 'list[V1Header]',
|
|
46
47
|
'method': 'str',
|
|
47
48
|
'name': 'str',
|
|
@@ -51,6 +52,7 @@ class V1DeploymentAPI(object):
|
|
|
51
52
|
|
|
52
53
|
attribute_map = {
|
|
53
54
|
'body': 'body',
|
|
55
|
+
'description': 'description',
|
|
54
56
|
'headers': 'headers',
|
|
55
57
|
'method': 'method',
|
|
56
58
|
'name': 'name',
|
|
@@ -58,9 +60,10 @@ class V1DeploymentAPI(object):
|
|
|
58
60
|
'_query_params': 'queryParams'
|
|
59
61
|
}
|
|
60
62
|
|
|
61
|
-
def __init__(self, body: 'V1Body' =None, headers: 'list[V1Header]' =None, method: 'str' =None, name: 'str' =None, path: 'str' =None, _query_params: 'list[V1QueryParam]' =None): # noqa: E501
|
|
63
|
+
def __init__(self, body: 'V1Body' =None, description: 'str' =None, headers: 'list[V1Header]' =None, method: 'str' =None, name: 'str' =None, path: 'str' =None, _query_params: 'list[V1QueryParam]' =None): # noqa: E501
|
|
62
64
|
"""V1DeploymentAPI - a model defined in Swagger""" # noqa: E501
|
|
63
65
|
self._body = None
|
|
66
|
+
self._description = None
|
|
64
67
|
self._headers = None
|
|
65
68
|
self._method = None
|
|
66
69
|
self._name = None
|
|
@@ -69,6 +72,8 @@ class V1DeploymentAPI(object):
|
|
|
69
72
|
self.discriminator = None
|
|
70
73
|
if body is not None:
|
|
71
74
|
self.body = body
|
|
75
|
+
if description is not None:
|
|
76
|
+
self.description = description
|
|
72
77
|
if headers is not None:
|
|
73
78
|
self.headers = headers
|
|
74
79
|
if method is not None:
|
|
@@ -101,6 +106,27 @@ class V1DeploymentAPI(object):
|
|
|
101
106
|
|
|
102
107
|
self._body = body
|
|
103
108
|
|
|
109
|
+
@property
|
|
110
|
+
def description(self) -> 'str':
|
|
111
|
+
"""Gets the description of this V1DeploymentAPI. # noqa: E501
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
:return: The description of this V1DeploymentAPI. # noqa: E501
|
|
115
|
+
:rtype: str
|
|
116
|
+
"""
|
|
117
|
+
return self._description
|
|
118
|
+
|
|
119
|
+
@description.setter
|
|
120
|
+
def description(self, description: 'str'):
|
|
121
|
+
"""Sets the description of this V1DeploymentAPI.
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
:param description: The description of this V1DeploymentAPI. # noqa: E501
|
|
125
|
+
:type: str
|
|
126
|
+
"""
|
|
127
|
+
|
|
128
|
+
self._description = description
|
|
129
|
+
|
|
104
130
|
@property
|
|
105
131
|
def headers(self) -> 'list[V1Header]':
|
|
106
132
|
"""Gets the headers of this V1DeploymentAPI. # noqa: E501
|
|
@@ -56,6 +56,7 @@ class V1JobSpec(object):
|
|
|
56
56
|
'instance_name': 'str',
|
|
57
57
|
'instance_type': 'str',
|
|
58
58
|
'modified_volume': 'bool',
|
|
59
|
+
'path_mappings': 'list[V1PathMapping]',
|
|
59
60
|
'readiness_probe': 'V1JobHealthCheckConfig',
|
|
60
61
|
'regions': 'list[str]',
|
|
61
62
|
'resources': 'V1Resources',
|
|
@@ -81,6 +82,7 @@ class V1JobSpec(object):
|
|
|
81
82
|
'instance_name': 'instanceName',
|
|
82
83
|
'instance_type': 'instanceType',
|
|
83
84
|
'modified_volume': 'modifiedVolume',
|
|
85
|
+
'path_mappings': 'pathMappings',
|
|
84
86
|
'readiness_probe': 'readinessProbe',
|
|
85
87
|
'regions': 'regions',
|
|
86
88
|
'resources': 'resources',
|
|
@@ -90,7 +92,7 @@ class V1JobSpec(object):
|
|
|
90
92
|
'volumes': 'volumes'
|
|
91
93
|
}
|
|
92
94
|
|
|
93
|
-
def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
|
|
95
|
+
def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, path_mappings: 'list[V1PathMapping]' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
|
|
94
96
|
"""V1JobSpec - a model defined in Swagger""" # noqa: E501
|
|
95
97
|
self._artifacts_destination = None
|
|
96
98
|
self._artifacts_source = None
|
|
@@ -107,6 +109,7 @@ class V1JobSpec(object):
|
|
|
107
109
|
self._instance_name = None
|
|
108
110
|
self._instance_type = None
|
|
109
111
|
self._modified_volume = None
|
|
112
|
+
self._path_mappings = None
|
|
110
113
|
self._readiness_probe = None
|
|
111
114
|
self._regions = None
|
|
112
115
|
self._resources = None
|
|
@@ -145,6 +148,8 @@ class V1JobSpec(object):
|
|
|
145
148
|
self.instance_type = instance_type
|
|
146
149
|
if modified_volume is not None:
|
|
147
150
|
self.modified_volume = modified_volume
|
|
151
|
+
if path_mappings is not None:
|
|
152
|
+
self.path_mappings = path_mappings
|
|
148
153
|
if readiness_probe is not None:
|
|
149
154
|
self.readiness_probe = readiness_probe
|
|
150
155
|
if regions is not None:
|
|
@@ -475,6 +480,27 @@ class V1JobSpec(object):
|
|
|
475
480
|
|
|
476
481
|
self._modified_volume = modified_volume
|
|
477
482
|
|
|
483
|
+
@property
|
|
484
|
+
def path_mappings(self) -> 'list[V1PathMapping]':
|
|
485
|
+
"""Gets the path_mappings of this V1JobSpec. # noqa: E501
|
|
486
|
+
|
|
487
|
+
|
|
488
|
+
:return: The path_mappings of this V1JobSpec. # noqa: E501
|
|
489
|
+
:rtype: list[V1PathMapping]
|
|
490
|
+
"""
|
|
491
|
+
return self._path_mappings
|
|
492
|
+
|
|
493
|
+
@path_mappings.setter
|
|
494
|
+
def path_mappings(self, path_mappings: 'list[V1PathMapping]'):
|
|
495
|
+
"""Sets the path_mappings of this V1JobSpec.
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
:param path_mappings: The path_mappings of this V1JobSpec. # noqa: E501
|
|
499
|
+
:type: list[V1PathMapping]
|
|
500
|
+
"""
|
|
501
|
+
|
|
502
|
+
self._path_mappings = path_mappings
|
|
503
|
+
|
|
478
504
|
@property
|
|
479
505
|
def readiness_probe(self) -> 'V1JobHealthCheckConfig':
|
|
480
506
|
"""Gets the readiness_probe of this V1JobSpec. # noqa: E501
|
|
@@ -0,0 +1,175 @@
|
|
|
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 V1PathMapping(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
|
+
'connection_name': 'str',
|
|
45
|
+
'connection_path': 'str',
|
|
46
|
+
'container_path': 'str'
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
attribute_map = {
|
|
50
|
+
'connection_name': 'connectionName',
|
|
51
|
+
'connection_path': 'connectionPath',
|
|
52
|
+
'container_path': 'containerPath'
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
def __init__(self, connection_name: 'str' =None, connection_path: 'str' =None, container_path: 'str' =None): # noqa: E501
|
|
56
|
+
"""V1PathMapping - a model defined in Swagger""" # noqa: E501
|
|
57
|
+
self._connection_name = None
|
|
58
|
+
self._connection_path = None
|
|
59
|
+
self._container_path = None
|
|
60
|
+
self.discriminator = None
|
|
61
|
+
if connection_name is not None:
|
|
62
|
+
self.connection_name = connection_name
|
|
63
|
+
if connection_path is not None:
|
|
64
|
+
self.connection_path = connection_path
|
|
65
|
+
if container_path is not None:
|
|
66
|
+
self.container_path = container_path
|
|
67
|
+
|
|
68
|
+
@property
|
|
69
|
+
def connection_name(self) -> 'str':
|
|
70
|
+
"""Gets the connection_name of this V1PathMapping. # noqa: E501
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
:return: The connection_name of this V1PathMapping. # noqa: E501
|
|
74
|
+
:rtype: str
|
|
75
|
+
"""
|
|
76
|
+
return self._connection_name
|
|
77
|
+
|
|
78
|
+
@connection_name.setter
|
|
79
|
+
def connection_name(self, connection_name: 'str'):
|
|
80
|
+
"""Sets the connection_name of this V1PathMapping.
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
:param connection_name: The connection_name of this V1PathMapping. # noqa: E501
|
|
84
|
+
:type: str
|
|
85
|
+
"""
|
|
86
|
+
|
|
87
|
+
self._connection_name = connection_name
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
def connection_path(self) -> 'str':
|
|
91
|
+
"""Gets the connection_path of this V1PathMapping. # noqa: E501
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
:return: The connection_path of this V1PathMapping. # noqa: E501
|
|
95
|
+
:rtype: str
|
|
96
|
+
"""
|
|
97
|
+
return self._connection_path
|
|
98
|
+
|
|
99
|
+
@connection_path.setter
|
|
100
|
+
def connection_path(self, connection_path: 'str'):
|
|
101
|
+
"""Sets the connection_path of this V1PathMapping.
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
:param connection_path: The connection_path of this V1PathMapping. # noqa: E501
|
|
105
|
+
:type: str
|
|
106
|
+
"""
|
|
107
|
+
|
|
108
|
+
self._connection_path = connection_path
|
|
109
|
+
|
|
110
|
+
@property
|
|
111
|
+
def container_path(self) -> 'str':
|
|
112
|
+
"""Gets the container_path of this V1PathMapping. # noqa: E501
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
:return: The container_path of this V1PathMapping. # noqa: E501
|
|
116
|
+
:rtype: str
|
|
117
|
+
"""
|
|
118
|
+
return self._container_path
|
|
119
|
+
|
|
120
|
+
@container_path.setter
|
|
121
|
+
def container_path(self, container_path: 'str'):
|
|
122
|
+
"""Sets the container_path of this V1PathMapping.
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
:param container_path: The container_path of this V1PathMapping. # noqa: E501
|
|
126
|
+
:type: str
|
|
127
|
+
"""
|
|
128
|
+
|
|
129
|
+
self._container_path = container_path
|
|
130
|
+
|
|
131
|
+
def to_dict(self) -> dict:
|
|
132
|
+
"""Returns the model properties as a dict"""
|
|
133
|
+
result = {}
|
|
134
|
+
|
|
135
|
+
for attr, _ in six.iteritems(self.swagger_types):
|
|
136
|
+
value = getattr(self, attr)
|
|
137
|
+
if isinstance(value, list):
|
|
138
|
+
result[attr] = list(map(
|
|
139
|
+
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
|
|
140
|
+
value
|
|
141
|
+
))
|
|
142
|
+
elif hasattr(value, "to_dict"):
|
|
143
|
+
result[attr] = value.to_dict()
|
|
144
|
+
elif isinstance(value, dict):
|
|
145
|
+
result[attr] = dict(map(
|
|
146
|
+
lambda item: (item[0], item[1].to_dict())
|
|
147
|
+
if hasattr(item[1], "to_dict") else item,
|
|
148
|
+
value.items()
|
|
149
|
+
))
|
|
150
|
+
else:
|
|
151
|
+
result[attr] = value
|
|
152
|
+
if issubclass(V1PathMapping, dict):
|
|
153
|
+
for key, value in self.items():
|
|
154
|
+
result[key] = value
|
|
155
|
+
|
|
156
|
+
return result
|
|
157
|
+
|
|
158
|
+
def to_str(self) -> str:
|
|
159
|
+
"""Returns the string representation of the model"""
|
|
160
|
+
return pprint.pformat(self.to_dict())
|
|
161
|
+
|
|
162
|
+
def __repr__(self) -> str:
|
|
163
|
+
"""For `print` and `pprint`"""
|
|
164
|
+
return self.to_str()
|
|
165
|
+
|
|
166
|
+
def __eq__(self, other: 'V1PathMapping') -> bool:
|
|
167
|
+
"""Returns true if both objects are equal"""
|
|
168
|
+
if not isinstance(other, V1PathMapping):
|
|
169
|
+
return False
|
|
170
|
+
|
|
171
|
+
return self.__dict__ == other.__dict__
|
|
172
|
+
|
|
173
|
+
def __ne__(self, other: 'V1PathMapping') -> bool:
|
|
174
|
+
"""Returns true if both objects are not equal"""
|
|
175
|
+
return not self == other
|
|
@@ -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 V1UpdateLitRepositoryResponse(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
|
+
"""V1UpdateLitRepositoryResponse - 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(V1UpdateLitRepositoryResponse, 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: 'V1UpdateLitRepositoryResponse') -> bool:
|
|
89
|
+
"""Returns true if both objects are equal"""
|
|
90
|
+
if not isinstance(other, V1UpdateLitRepositoryResponse):
|
|
91
|
+
return False
|
|
92
|
+
|
|
93
|
+
return self.__dict__ == other.__dict__
|
|
94
|
+
|
|
95
|
+
def __ne__(self, other: 'V1UpdateLitRepositoryResponse') -> bool:
|
|
96
|
+
"""Returns true if both objects are not equal"""
|
|
97
|
+
return not self == other
|