lightning-sdk 0.1.55__py3-none-any.whl → 0.1.57__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 +3 -2
- lightning_sdk/ai_hub.py +22 -0
- lightning_sdk/api/ai_hub_api.py +21 -2
- lightning_sdk/api/deployment_api.py +4 -3
- lightning_sdk/api/job_api.py +5 -10
- lightning_sdk/api/mmt_api.py +1 -4
- lightning_sdk/api/studio_api.py +5 -7
- lightning_sdk/api/teamspace_api.py +7 -0
- lightning_sdk/api/utils.py +1 -27
- lightning_sdk/cli/ai_hub.py +61 -10
- lightning_sdk/cli/configure.py +137 -0
- lightning_sdk/cli/connect.py +47 -0
- lightning_sdk/cli/delete.py +83 -32
- lightning_sdk/cli/download.py +177 -90
- lightning_sdk/cli/entrypoint.py +50 -15
- lightning_sdk/cli/generate.py +51 -42
- lightning_sdk/cli/inspect.py +45 -3
- lightning_sdk/cli/jobs_menu.py +2 -1
- lightning_sdk/cli/list.py +139 -55
- lightning_sdk/cli/mmts_menu.py +2 -1
- lightning_sdk/cli/run.py +3 -9
- lightning_sdk/cli/serve.py +1 -2
- lightning_sdk/cli/start.py +2 -2
- lightning_sdk/cli/stop.py +5 -3
- lightning_sdk/cli/studios_menu.py +24 -1
- lightning_sdk/cli/switch.py +2 -2
- lightning_sdk/cli/teamspace_menu.py +2 -1
- lightning_sdk/cli/upload.py +6 -4
- lightning_sdk/helpers.py +20 -0
- lightning_sdk/job/job.py +1 -1
- lightning_sdk/lightning_cloud/openapi/__init__.py +9 -0
- lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +105 -0
- lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +105 -0
- lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +226 -0
- lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +4 -4
- lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +7 -3
- lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +1 -5
- lightning_sdk/lightning_cloud/openapi/models/__init__.py +9 -0
- lightning_sdk/lightning_cloud/openapi/models/agents_id_body.py +105 -1
- lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +29 -3
- lightning_sdk/lightning_cloud/openapi/models/id_reportrestarttimings_body.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/id_visibility_body1.py +149 -0
- lightning_sdk/lightning_cloud/openapi/models/model_id_visibility_body.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/project_id_litregistry_body.py +2 -0
- lightning_sdk/lightning_cloud/openapi/models/setup.py +149 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_assistant.py +105 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +29 -3
- lightning_sdk/lightning_cloud/openapi/models/v1_gcp_data_connection_setup.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_get_cluster_accelerator_demand_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_job.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_lit_registry_artifact.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_lit_registry_project.py +8 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_lit_repository.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_report_restart_timings_response.py +97 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_restart_timing.py +175 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_setup_data_connection_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_update_deployment_visibility_response.py +97 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_update_metrics_stream_visibility_response.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_update_model_visibility_response.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_validate_deployment_image_request.py +27 -1
- lightning_sdk/machine.py +59 -27
- lightning_sdk/studio.py +5 -1
- lightning_sdk/teamspace.py +25 -0
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/METADATA +3 -1
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/RECORD +72 -61
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/LICENSE +0 -0
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/WHEEL +0 -0
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/entry_points.txt +0 -0
- {lightning_sdk-0.1.55.dist-info → lightning_sdk-0.1.57.dist-info}/top_level.txt +0 -0
|
@@ -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 V1GetClusterAcceleratorDemandResponse(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
|
+
'num_waiting': 'str'
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
attribute_map = {
|
|
48
|
+
'num_waiting': 'numWaiting'
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
def __init__(self, num_waiting: 'str' =None): # noqa: E501
|
|
52
|
+
"""V1GetClusterAcceleratorDemandResponse - a model defined in Swagger""" # noqa: E501
|
|
53
|
+
self._num_waiting = None
|
|
54
|
+
self.discriminator = None
|
|
55
|
+
if num_waiting is not None:
|
|
56
|
+
self.num_waiting = num_waiting
|
|
57
|
+
|
|
58
|
+
@property
|
|
59
|
+
def num_waiting(self) -> 'str':
|
|
60
|
+
"""Gets the num_waiting of this V1GetClusterAcceleratorDemandResponse. # noqa: E501
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
:return: The num_waiting of this V1GetClusterAcceleratorDemandResponse. # noqa: E501
|
|
64
|
+
:rtype: str
|
|
65
|
+
"""
|
|
66
|
+
return self._num_waiting
|
|
67
|
+
|
|
68
|
+
@num_waiting.setter
|
|
69
|
+
def num_waiting(self, num_waiting: 'str'):
|
|
70
|
+
"""Sets the num_waiting of this V1GetClusterAcceleratorDemandResponse.
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
:param num_waiting: The num_waiting of this V1GetClusterAcceleratorDemandResponse. # noqa: E501
|
|
74
|
+
:type: str
|
|
75
|
+
"""
|
|
76
|
+
|
|
77
|
+
self._num_waiting = num_waiting
|
|
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(V1GetClusterAcceleratorDemandResponse, 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: 'V1GetClusterAcceleratorDemandResponse') -> bool:
|
|
115
|
+
"""Returns true if both objects are equal"""
|
|
116
|
+
if not isinstance(other, V1GetClusterAcceleratorDemandResponse):
|
|
117
|
+
return False
|
|
118
|
+
|
|
119
|
+
return self.__dict__ == other.__dict__
|
|
120
|
+
|
|
121
|
+
def __ne__(self, other: 'V1GetClusterAcceleratorDemandResponse') -> bool:
|
|
122
|
+
"""Returns true if both objects are not equal"""
|
|
123
|
+
return not self == other
|
|
@@ -54,6 +54,7 @@ class V1Job(object):
|
|
|
54
54
|
'ready_at': 'datetime',
|
|
55
55
|
'release_id': 'str',
|
|
56
56
|
'restart_count': 'int',
|
|
57
|
+
'restart_timings': 'list[V1RestartTiming]',
|
|
57
58
|
'server_error': 'str',
|
|
58
59
|
'spec': 'V1JobSpec',
|
|
59
60
|
'started_at': 'datetime',
|
|
@@ -82,6 +83,7 @@ class V1Job(object):
|
|
|
82
83
|
'ready_at': 'readyAt',
|
|
83
84
|
'release_id': 'releaseId',
|
|
84
85
|
'restart_count': 'restartCount',
|
|
86
|
+
'restart_timings': 'restartTimings',
|
|
85
87
|
'server_error': 'serverError',
|
|
86
88
|
'spec': 'spec',
|
|
87
89
|
'started_at': 'startedAt',
|
|
@@ -96,7 +98,7 @@ class V1Job(object):
|
|
|
96
98
|
'user_logs_started_at': 'userLogsStartedAt'
|
|
97
99
|
}
|
|
98
100
|
|
|
99
|
-
def __init__(self, created_at: 'datetime' =None, deployment_id: 'str' =None, endpoint: 'V1Endpoint' =None, id: 'str' =None, is_healthy: 'bool' =None, message: 'str' =None, multi_machine_job_id: 'str' =None, name: 'str' =None, overprovisioned: 'bool' =None, project_id: 'str' =None, ready_at: 'datetime' =None, release_id: 'str' =None, restart_count: 'int' =None, server_error: 'str' =None, spec: 'V1JobSpec' =None, started_at: 'datetime' =None, state: 'str' =None, stopped_at: 'datetime' =None, timings: 'dict(str, V1JobTiming)' =None, total_cost: 'float' =None, total_size_bytes: 'str' =None, updated_at: 'datetime' =None, urls: 'list[str]' =None, user_id: 'str' =None, user_logs_started_at: 'datetime' =None): # noqa: E501
|
|
101
|
+
def __init__(self, created_at: 'datetime' =None, deployment_id: 'str' =None, endpoint: 'V1Endpoint' =None, id: 'str' =None, is_healthy: 'bool' =None, message: 'str' =None, multi_machine_job_id: 'str' =None, name: 'str' =None, overprovisioned: 'bool' =None, project_id: 'str' =None, ready_at: 'datetime' =None, release_id: 'str' =None, restart_count: 'int' =None, restart_timings: 'list[V1RestartTiming]' =None, server_error: 'str' =None, spec: 'V1JobSpec' =None, started_at: 'datetime' =None, state: 'str' =None, stopped_at: 'datetime' =None, timings: 'dict(str, V1JobTiming)' =None, total_cost: 'float' =None, total_size_bytes: 'str' =None, updated_at: 'datetime' =None, urls: 'list[str]' =None, user_id: 'str' =None, user_logs_started_at: 'datetime' =None): # noqa: E501
|
|
100
102
|
"""V1Job - a model defined in Swagger""" # noqa: E501
|
|
101
103
|
self._created_at = None
|
|
102
104
|
self._deployment_id = None
|
|
@@ -111,6 +113,7 @@ class V1Job(object):
|
|
|
111
113
|
self._ready_at = None
|
|
112
114
|
self._release_id = None
|
|
113
115
|
self._restart_count = None
|
|
116
|
+
self._restart_timings = None
|
|
114
117
|
self._server_error = None
|
|
115
118
|
self._spec = None
|
|
116
119
|
self._started_at = None
|
|
@@ -150,6 +153,8 @@ class V1Job(object):
|
|
|
150
153
|
self.release_id = release_id
|
|
151
154
|
if restart_count is not None:
|
|
152
155
|
self.restart_count = restart_count
|
|
156
|
+
if restart_timings is not None:
|
|
157
|
+
self.restart_timings = restart_timings
|
|
153
158
|
if server_error is not None:
|
|
154
159
|
self.server_error = server_error
|
|
155
160
|
if spec is not None:
|
|
@@ -450,6 +455,27 @@ class V1Job(object):
|
|
|
450
455
|
|
|
451
456
|
self._restart_count = restart_count
|
|
452
457
|
|
|
458
|
+
@property
|
|
459
|
+
def restart_timings(self) -> 'list[V1RestartTiming]':
|
|
460
|
+
"""Gets the restart_timings of this V1Job. # noqa: E501
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
:return: The restart_timings of this V1Job. # noqa: E501
|
|
464
|
+
:rtype: list[V1RestartTiming]
|
|
465
|
+
"""
|
|
466
|
+
return self._restart_timings
|
|
467
|
+
|
|
468
|
+
@restart_timings.setter
|
|
469
|
+
def restart_timings(self, restart_timings: 'list[V1RestartTiming]'):
|
|
470
|
+
"""Sets the restart_timings of this V1Job.
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
:param restart_timings: The restart_timings of this V1Job. # noqa: E501
|
|
474
|
+
:type: list[V1RestartTiming]
|
|
475
|
+
"""
|
|
476
|
+
|
|
477
|
+
self._restart_timings = restart_timings
|
|
478
|
+
|
|
453
479
|
@property
|
|
454
480
|
def server_error(self) -> 'str':
|
|
455
481
|
"""Gets the server_error of this V1Job. # noqa: E501
|
|
@@ -57,6 +57,7 @@ class V1JobSpec(object):
|
|
|
57
57
|
'instance_type': 'str',
|
|
58
58
|
'modified_volume': 'bool',
|
|
59
59
|
'path_mappings': 'list[V1PathMapping]',
|
|
60
|
+
'quantity': 'int',
|
|
60
61
|
'readiness_probe': 'V1JobHealthCheckConfig',
|
|
61
62
|
'regions': 'list[str]',
|
|
62
63
|
'requested_run_duration_seconds': 'str',
|
|
@@ -84,6 +85,7 @@ class V1JobSpec(object):
|
|
|
84
85
|
'instance_type': 'instanceType',
|
|
85
86
|
'modified_volume': 'modifiedVolume',
|
|
86
87
|
'path_mappings': 'pathMappings',
|
|
88
|
+
'quantity': 'quantity',
|
|
87
89
|
'readiness_probe': 'readinessProbe',
|
|
88
90
|
'regions': 'regions',
|
|
89
91
|
'requested_run_duration_seconds': 'requestedRunDurationSeconds',
|
|
@@ -94,7 +96,7 @@ class V1JobSpec(object):
|
|
|
94
96
|
'volumes': 'volumes'
|
|
95
97
|
}
|
|
96
98
|
|
|
97
|
-
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, requested_run_duration_seconds: 'str' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
|
|
99
|
+
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, quantity: 'int' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, requested_run_duration_seconds: 'str' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
|
|
98
100
|
"""V1JobSpec - a model defined in Swagger""" # noqa: E501
|
|
99
101
|
self._artifacts_destination = None
|
|
100
102
|
self._artifacts_source = None
|
|
@@ -112,6 +114,7 @@ class V1JobSpec(object):
|
|
|
112
114
|
self._instance_type = None
|
|
113
115
|
self._modified_volume = None
|
|
114
116
|
self._path_mappings = None
|
|
117
|
+
self._quantity = None
|
|
115
118
|
self._readiness_probe = None
|
|
116
119
|
self._regions = None
|
|
117
120
|
self._requested_run_duration_seconds = None
|
|
@@ -153,6 +156,8 @@ class V1JobSpec(object):
|
|
|
153
156
|
self.modified_volume = modified_volume
|
|
154
157
|
if path_mappings is not None:
|
|
155
158
|
self.path_mappings = path_mappings
|
|
159
|
+
if quantity is not None:
|
|
160
|
+
self.quantity = quantity
|
|
156
161
|
if readiness_probe is not None:
|
|
157
162
|
self.readiness_probe = readiness_probe
|
|
158
163
|
if regions is not None:
|
|
@@ -506,6 +511,27 @@ class V1JobSpec(object):
|
|
|
506
511
|
|
|
507
512
|
self._path_mappings = path_mappings
|
|
508
513
|
|
|
514
|
+
@property
|
|
515
|
+
def quantity(self) -> 'int':
|
|
516
|
+
"""Gets the quantity of this V1JobSpec. # noqa: E501
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
:return: The quantity of this V1JobSpec. # noqa: E501
|
|
520
|
+
:rtype: int
|
|
521
|
+
"""
|
|
522
|
+
return self._quantity
|
|
523
|
+
|
|
524
|
+
@quantity.setter
|
|
525
|
+
def quantity(self, quantity: 'int'):
|
|
526
|
+
"""Sets the quantity of this V1JobSpec.
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
:param quantity: The quantity of this V1JobSpec. # noqa: E501
|
|
530
|
+
:type: int
|
|
531
|
+
"""
|
|
532
|
+
|
|
533
|
+
self._quantity = quantity
|
|
534
|
+
|
|
509
535
|
@property
|
|
510
536
|
def readiness_probe(self) -> 'V1JobHealthCheckConfig':
|
|
511
537
|
"""Gets the readiness_probe of this V1JobSpec. # noqa: E501
|
|
@@ -42,6 +42,7 @@ class V1LitRegistryArtifact(object):
|
|
|
42
42
|
"""
|
|
43
43
|
swagger_types = {
|
|
44
44
|
'full_hash_digest': 'str',
|
|
45
|
+
'location': 'str',
|
|
45
46
|
'pull_time': 'datetime',
|
|
46
47
|
'push_time': 'datetime',
|
|
47
48
|
'short_hash_digest': 'str',
|
|
@@ -51,6 +52,7 @@ class V1LitRegistryArtifact(object):
|
|
|
51
52
|
|
|
52
53
|
attribute_map = {
|
|
53
54
|
'full_hash_digest': 'fullHashDigest',
|
|
55
|
+
'location': 'location',
|
|
54
56
|
'pull_time': 'pullTime',
|
|
55
57
|
'push_time': 'pushTime',
|
|
56
58
|
'short_hash_digest': 'shortHashDigest',
|
|
@@ -58,9 +60,10 @@ class V1LitRegistryArtifact(object):
|
|
|
58
60
|
'tag_name': 'tagName'
|
|
59
61
|
}
|
|
60
62
|
|
|
61
|
-
def __init__(self, full_hash_digest: 'str' =None, pull_time: 'datetime' =None, push_time: 'datetime' =None, short_hash_digest: 'str' =None, size: 'str' =None, tag_name: 'str' =None): # noqa: E501
|
|
63
|
+
def __init__(self, full_hash_digest: 'str' =None, location: 'str' =None, pull_time: 'datetime' =None, push_time: 'datetime' =None, short_hash_digest: 'str' =None, size: 'str' =None, tag_name: 'str' =None): # noqa: E501
|
|
62
64
|
"""V1LitRegistryArtifact - a model defined in Swagger""" # noqa: E501
|
|
63
65
|
self._full_hash_digest = None
|
|
66
|
+
self._location = None
|
|
64
67
|
self._pull_time = None
|
|
65
68
|
self._push_time = None
|
|
66
69
|
self._short_hash_digest = None
|
|
@@ -69,6 +72,8 @@ class V1LitRegistryArtifact(object):
|
|
|
69
72
|
self.discriminator = None
|
|
70
73
|
if full_hash_digest is not None:
|
|
71
74
|
self.full_hash_digest = full_hash_digest
|
|
75
|
+
if location is not None:
|
|
76
|
+
self.location = location
|
|
72
77
|
if pull_time is not None:
|
|
73
78
|
self.pull_time = pull_time
|
|
74
79
|
if push_time is not None:
|
|
@@ -101,6 +106,27 @@ class V1LitRegistryArtifact(object):
|
|
|
101
106
|
|
|
102
107
|
self._full_hash_digest = full_hash_digest
|
|
103
108
|
|
|
109
|
+
@property
|
|
110
|
+
def location(self) -> 'str':
|
|
111
|
+
"""Gets the location of this V1LitRegistryArtifact. # noqa: E501
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
:return: The location of this V1LitRegistryArtifact. # noqa: E501
|
|
115
|
+
:rtype: str
|
|
116
|
+
"""
|
|
117
|
+
return self._location
|
|
118
|
+
|
|
119
|
+
@location.setter
|
|
120
|
+
def location(self, location: 'str'):
|
|
121
|
+
"""Sets the location of this V1LitRegistryArtifact.
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
:param location: The location of this V1LitRegistryArtifact. # noqa: E501
|
|
125
|
+
:type: str
|
|
126
|
+
"""
|
|
127
|
+
|
|
128
|
+
self._location = location
|
|
129
|
+
|
|
104
130
|
@property
|
|
105
131
|
def pull_time(self) -> 'datetime':
|
|
106
132
|
"""Gets the pull_time of this V1LitRegistryArtifact. # noqa: E501
|
|
@@ -79,6 +79,7 @@ class V1LitRegistryProject(object):
|
|
|
79
79
|
def id(self) -> 'int':
|
|
80
80
|
"""Gets the id of this V1LitRegistryProject. # noqa: E501
|
|
81
81
|
|
|
82
|
+
This is the litcr project ID. # noqa: E501
|
|
82
83
|
|
|
83
84
|
:return: The id of this V1LitRegistryProject. # noqa: E501
|
|
84
85
|
:rtype: int
|
|
@@ -89,6 +90,7 @@ class V1LitRegistryProject(object):
|
|
|
89
90
|
def id(self, id: 'int'):
|
|
90
91
|
"""Sets the id of this V1LitRegistryProject.
|
|
91
92
|
|
|
93
|
+
This is the litcr project ID. # noqa: E501
|
|
92
94
|
|
|
93
95
|
:param id: The id of this V1LitRegistryProject. # noqa: E501
|
|
94
96
|
:type: int
|
|
@@ -121,6 +123,7 @@ class V1LitRegistryProject(object):
|
|
|
121
123
|
def project_id(self) -> 'str':
|
|
122
124
|
"""Gets the project_id of this V1LitRegistryProject. # noqa: E501
|
|
123
125
|
|
|
126
|
+
This is the lightning AI teamspace project ID. # noqa: E501
|
|
124
127
|
|
|
125
128
|
:return: The project_id of this V1LitRegistryProject. # noqa: E501
|
|
126
129
|
:rtype: str
|
|
@@ -131,6 +134,7 @@ class V1LitRegistryProject(object):
|
|
|
131
134
|
def project_id(self, project_id: 'str'):
|
|
132
135
|
"""Sets the project_id of this V1LitRegistryProject.
|
|
133
136
|
|
|
137
|
+
This is the lightning AI teamspace project ID. # noqa: E501
|
|
134
138
|
|
|
135
139
|
:param project_id: The project_id of this V1LitRegistryProject. # noqa: E501
|
|
136
140
|
:type: str
|
|
@@ -142,6 +146,7 @@ class V1LitRegistryProject(object):
|
|
|
142
146
|
def repo_count(self) -> 'str':
|
|
143
147
|
"""Gets the repo_count of this V1LitRegistryProject. # noqa: E501
|
|
144
148
|
|
|
149
|
+
This is how many repositories exist in a project. This will be the same as the number of repository objects we return. # noqa: E501
|
|
145
150
|
|
|
146
151
|
:return: The repo_count of this V1LitRegistryProject. # noqa: E501
|
|
147
152
|
:rtype: str
|
|
@@ -152,6 +157,7 @@ class V1LitRegistryProject(object):
|
|
|
152
157
|
def repo_count(self, repo_count: 'str'):
|
|
153
158
|
"""Sets the repo_count of this V1LitRegistryProject.
|
|
154
159
|
|
|
160
|
+
This is how many repositories exist in a project. This will be the same as the number of repository objects we return. # noqa: E501
|
|
155
161
|
|
|
156
162
|
:param repo_count: The repo_count of this V1LitRegistryProject. # noqa: E501
|
|
157
163
|
:type: str
|
|
@@ -163,6 +169,7 @@ class V1LitRegistryProject(object):
|
|
|
163
169
|
def repositories(self) -> 'list[V1LitRepository]':
|
|
164
170
|
"""Gets the repositories of this V1LitRegistryProject. # noqa: E501
|
|
165
171
|
|
|
172
|
+
This is the list of repositories that belong to a project in our registry. # noqa: E501
|
|
166
173
|
|
|
167
174
|
:return: The repositories of this V1LitRegistryProject. # noqa: E501
|
|
168
175
|
:rtype: list[V1LitRepository]
|
|
@@ -173,6 +180,7 @@ class V1LitRegistryProject(object):
|
|
|
173
180
|
def repositories(self, repositories: 'list[V1LitRepository]'):
|
|
174
181
|
"""Sets the repositories of this V1LitRegistryProject.
|
|
175
182
|
|
|
183
|
+
This is the list of repositories that belong to a project in our registry. # noqa: E501
|
|
176
184
|
|
|
177
185
|
:param repositories: The repositories of this V1LitRegistryProject. # noqa: E501
|
|
178
186
|
:type: list[V1LitRepository]
|
|
@@ -45,6 +45,7 @@ class V1LitRepository(object):
|
|
|
45
45
|
'creation_time': 'datetime',
|
|
46
46
|
'description': 'str',
|
|
47
47
|
'id': 'str',
|
|
48
|
+
'latest_artifact': 'V1LitRegistryArtifact',
|
|
48
49
|
'name': 'str',
|
|
49
50
|
'pull_count': 'str',
|
|
50
51
|
'update_time': 'datetime'
|
|
@@ -55,17 +56,19 @@ class V1LitRepository(object):
|
|
|
55
56
|
'creation_time': 'creationTime',
|
|
56
57
|
'description': 'description',
|
|
57
58
|
'id': 'id',
|
|
59
|
+
'latest_artifact': 'latestArtifact',
|
|
58
60
|
'name': 'name',
|
|
59
61
|
'pull_count': 'pullCount',
|
|
60
62
|
'update_time': 'updateTime'
|
|
61
63
|
}
|
|
62
64
|
|
|
63
|
-
def __init__(self, artifact_count: 'str' =None, creation_time: 'datetime' =None, description: 'str' =None, id: 'str' =None, name: 'str' =None, pull_count: 'str' =None, update_time: 'datetime' =None): # noqa: E501
|
|
65
|
+
def __init__(self, artifact_count: 'str' =None, creation_time: 'datetime' =None, description: 'str' =None, id: 'str' =None, latest_artifact: 'V1LitRegistryArtifact' =None, name: 'str' =None, pull_count: 'str' =None, update_time: 'datetime' =None): # noqa: E501
|
|
64
66
|
"""V1LitRepository - a model defined in Swagger""" # noqa: E501
|
|
65
67
|
self._artifact_count = None
|
|
66
68
|
self._creation_time = None
|
|
67
69
|
self._description = None
|
|
68
70
|
self._id = None
|
|
71
|
+
self._latest_artifact = None
|
|
69
72
|
self._name = None
|
|
70
73
|
self._pull_count = None
|
|
71
74
|
self._update_time = None
|
|
@@ -78,6 +81,8 @@ class V1LitRepository(object):
|
|
|
78
81
|
self.description = description
|
|
79
82
|
if id is not None:
|
|
80
83
|
self.id = id
|
|
84
|
+
if latest_artifact is not None:
|
|
85
|
+
self.latest_artifact = latest_artifact
|
|
81
86
|
if name is not None:
|
|
82
87
|
self.name = name
|
|
83
88
|
if pull_count is not None:
|
|
@@ -169,6 +174,27 @@ class V1LitRepository(object):
|
|
|
169
174
|
|
|
170
175
|
self._id = id
|
|
171
176
|
|
|
177
|
+
@property
|
|
178
|
+
def latest_artifact(self) -> 'V1LitRegistryArtifact':
|
|
179
|
+
"""Gets the latest_artifact of this V1LitRepository. # noqa: E501
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
:return: The latest_artifact of this V1LitRepository. # noqa: E501
|
|
183
|
+
:rtype: V1LitRegistryArtifact
|
|
184
|
+
"""
|
|
185
|
+
return self._latest_artifact
|
|
186
|
+
|
|
187
|
+
@latest_artifact.setter
|
|
188
|
+
def latest_artifact(self, latest_artifact: 'V1LitRegistryArtifact'):
|
|
189
|
+
"""Sets the latest_artifact of this V1LitRepository.
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
:param latest_artifact: The latest_artifact of this V1LitRepository. # noqa: E501
|
|
193
|
+
:type: V1LitRegistryArtifact
|
|
194
|
+
"""
|
|
195
|
+
|
|
196
|
+
self._latest_artifact = latest_artifact
|
|
197
|
+
|
|
172
198
|
@property
|
|
173
199
|
def name(self) -> 'str':
|
|
174
200
|
"""Gets the name of this V1LitRepository. # noqa: E501
|
|
@@ -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 V1ReportRestartTimingsResponse(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
|
+
"""V1ReportRestartTimingsResponse - 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(V1ReportRestartTimingsResponse, 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: 'V1ReportRestartTimingsResponse') -> bool:
|
|
89
|
+
"""Returns true if both objects are equal"""
|
|
90
|
+
if not isinstance(other, V1ReportRestartTimingsResponse):
|
|
91
|
+
return False
|
|
92
|
+
|
|
93
|
+
return self.__dict__ == other.__dict__
|
|
94
|
+
|
|
95
|
+
def __ne__(self, other: 'V1ReportRestartTimingsResponse') -> bool:
|
|
96
|
+
"""Returns true if both objects are not equal"""
|
|
97
|
+
return not self == other
|