lightning-sdk 2025.12.16__py3-none-any.whl → 2026.1.22__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 (141) hide show
  1. lightning_sdk/__version__.py +1 -1
  2. lightning_sdk/api/k8s_api.py +75 -29
  3. lightning_sdk/api/org_api.py +7 -0
  4. lightning_sdk/api/studio_api.py +223 -36
  5. lightning_sdk/api/teamspace_api.py +28 -9
  6. lightning_sdk/api/user_api.py +5 -0
  7. lightning_sdk/cli/cp/__init__.py +64 -0
  8. lightning_sdk/cli/entrypoint.py +2 -0
  9. lightning_sdk/cli/groups.py +22 -0
  10. lightning_sdk/cli/legacy/clusters_menu.py +2 -2
  11. lightning_sdk/cli/legacy/deploy/_auth.py +7 -6
  12. lightning_sdk/cli/legacy/download.py +2 -1
  13. lightning_sdk/cli/legacy/run.py +13 -2
  14. lightning_sdk/cli/legacy/studios_menu.py +8 -1
  15. lightning_sdk/cli/studio/__init__.py +4 -0
  16. lightning_sdk/cli/studio/cp.py +20 -64
  17. lightning_sdk/cli/studio/ls.py +57 -0
  18. lightning_sdk/cli/studio/rm.py +71 -0
  19. lightning_sdk/cli/utils/logging.py +2 -1
  20. lightning_sdk/cli/utils/studio_filesystem.py +65 -0
  21. lightning_sdk/cli/utils/teamspace_selection.py +5 -0
  22. lightning_sdk/exceptions.py +4 -0
  23. lightning_sdk/job/base.py +24 -5
  24. lightning_sdk/job/job.py +12 -5
  25. lightning_sdk/job/v1.py +5 -2
  26. lightning_sdk/job/v2.py +9 -1
  27. lightning_sdk/k8s_cluster.py +9 -10
  28. lightning_sdk/lightning_cloud/__version__.py +1 -1
  29. lightning_sdk/lightning_cloud/openapi/__init__.py +46 -3
  30. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  31. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +118 -1
  32. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +787 -125
  33. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +5 -1
  34. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +11 -11
  35. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +246 -19
  36. lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py +116 -11
  37. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +588 -2
  38. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +9 -1
  39. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +5 -1
  40. lightning_sdk/lightning_cloud/openapi/api/virtual_machine_service_api.py +557 -0
  41. lightning_sdk/lightning_cloud/openapi/models/__init__.py +45 -3
  42. lightning_sdk/lightning_cloud/openapi/models/cloud_space_environment_template_service_update_cloud_space_environment_template_body.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/cluster_service_add_container_registry_body.py +123 -0
  44. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_cluster_capacity_reservation_body.py +53 -1
  45. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_machine_body.py +79 -1
  46. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_org_cluster_capacity_reservation_body.py +409 -0
  47. lightning_sdk/lightning_cloud/openapi/models/cluster_service_refresh_container_registry_credentials_body.py +97 -0
  48. lightning_sdk/lightning_cloud/openapi/models/cluster_service_report_machine_system_metrics_body.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/cluster_service_validate_container_registry_body.py +97 -0
  50. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_create_lit_logger_media_body.py +305 -0
  52. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_lit_logger_media_body.py +149 -0
  53. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_metrics_stream_body.py +53 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_add_container_registry_response.py +123 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_reservation_used_by.py +227 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +1 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +27 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +1 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -27
  63. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +0 -1
  64. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry.py +253 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_info.py +281 -0
  66. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_integration.py +123 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_status.py +105 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +27 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_create_lit_logger_media_response.py +149 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_create_org_cluster_capacity_reservation_response.py +201 -0
  71. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +29 -3
  72. lightning_sdk/lightning_cloud/openapi/models/v1_cudo_direct_v1.py +175 -0
  73. lightning_sdk/lightning_cloud/openapi/models/v1_delete_container_registry_response.py +97 -0
  74. lightning_sdk/lightning_cloud/openapi/models/v1_delete_lit_logger_media_response.py +97 -0
  75. lightning_sdk/lightning_cloud/openapi/models/v1_delete_virtual_machine_response.py +97 -0
  76. lightning_sdk/lightning_cloud/openapi/models/{v1_ai_pod_v1.py → v1_ecr_registry_config.py} +49 -49
  77. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_config_input.py +123 -0
  78. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_details.py +201 -0
  79. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -27
  80. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  81. lightning_sdk/lightning_cloud/openapi/models/v1_get_artifacts_page_response.py +29 -3
  82. lightning_sdk/lightning_cloud/openapi/models/v1_get_kubernetes_pod_logs_response.py +149 -0
  83. lightning_sdk/lightning_cloud/openapi/models/{v1_get_machine_response.py → v1_get_kubernetes_pod_response.py} +23 -23
  84. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  85. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  86. lightning_sdk/lightning_cloud/openapi/models/v1_joinable_organization.py +27 -1
  87. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_setting.py +149 -0
  88. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_type.py +108 -0
  89. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +53 -1
  90. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +105 -1
  91. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +27 -1
  92. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod_logs_page.py +227 -0
  93. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_config.py +357 -0
  94. lightning_sdk/lightning_cloud/openapi/models/v1_list_container_registries_response.py +123 -0
  95. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +43 -17
  96. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_sort_order.py +104 -0
  97. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_logger_media_response.py +149 -0
  98. lightning_sdk/lightning_cloud/openapi/models/v1_list_models_response.py +55 -3
  99. lightning_sdk/lightning_cloud/openapi/models/v1_list_virtual_machines_response.py +123 -0
  100. lightning_sdk/lightning_cloud/openapi/models/v1_lit_logger_media.py +513 -0
  101. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +53 -53
  102. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +107 -3
  103. lightning_sdk/lightning_cloud/openapi/models/v1_media_type.py +104 -0
  104. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  105. lightning_sdk/lightning_cloud/openapi/models/v1_node_metrics.py +27 -1
  106. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  107. lightning_sdk/lightning_cloud/openapi/models/v1_refresh_container_registry_credentials_response.py +123 -0
  108. lightning_sdk/lightning_cloud/openapi/models/v1_report_cloud_space_instance_idle_state_response.py +97 -0
  109. lightning_sdk/lightning_cloud/openapi/models/v1_report_machine_system_metrics_response.py +97 -0
  110. lightning_sdk/lightning_cloud/openapi/models/v1_search_user.py +27 -1
  111. lightning_sdk/lightning_cloud/openapi/models/v1_tenant_credentials.py +201 -0
  112. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +217 -113
  113. lightning_sdk/lightning_cloud/openapi/models/v1_validate_container_registry_response.py +149 -0
  114. lightning_sdk/lightning_cloud/openapi/models/v1_virtual_machine.py +409 -0
  115. lightning_sdk/lightning_cloud/openapi/models/v1_vm_configuration.py +149 -0
  116. lightning_sdk/lightning_cloud/openapi/models/v1_vm_provider_configuration.py +227 -0
  117. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_create_virtual_machine_body.py +565 -0
  118. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_update_virtual_machine_body.py +97 -0
  119. lightning_sdk/lightning_cloud/openapi/rest.py +2 -2
  120. lightning_sdk/lightning_cloud/rest_client.py +0 -2
  121. lightning_sdk/machine.py +3 -3
  122. lightning_sdk/mmt/base.py +26 -7
  123. lightning_sdk/mmt/mmt.py +11 -6
  124. lightning_sdk/mmt/v1.py +5 -2
  125. lightning_sdk/mmt/v2.py +5 -2
  126. lightning_sdk/organization.py +10 -1
  127. lightning_sdk/owner.py +4 -0
  128. lightning_sdk/plugin.py +2 -2
  129. lightning_sdk/studio.py +47 -6
  130. lightning_sdk/user.py +22 -2
  131. lightning_sdk/utils/logging.py +2 -1
  132. lightning_sdk/utils/resolve.py +9 -7
  133. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/METADATA +1 -5
  134. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/RECORD +139 -94
  135. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/WHEEL +1 -1
  136. lightning_sdk/lightning_cloud/cli/__main__.py +0 -29
  137. lightning_sdk/lightning_cloud/source_code/logs_socket_api.py +0 -103
  138. /lightning_sdk/lightning_cloud/openapi/models/{v1_list_filesystem_mm_ts_response.py → v1_list_filesystem_mmts_response.py} +0 -0
  139. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/LICENSE +0 -0
  140. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/entry_points.txt +0 -0
  141. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.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 LitLoggerServiceUpdateLitLoggerMediaBody(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
+ 'caption': 'str',
45
+ 'upload_complete': 'bool'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'caption': 'caption',
50
+ 'upload_complete': 'uploadComplete'
51
+ }
52
+
53
+ def __init__(self, caption: 'str' =None, upload_complete: 'bool' =None): # noqa: E501
54
+ """LitLoggerServiceUpdateLitLoggerMediaBody - a model defined in Swagger""" # noqa: E501
55
+ self._caption = None
56
+ self._upload_complete = None
57
+ self.discriminator = None
58
+ if caption is not None:
59
+ self.caption = caption
60
+ if upload_complete is not None:
61
+ self.upload_complete = upload_complete
62
+
63
+ @property
64
+ def caption(self) -> 'str':
65
+ """Gets the caption of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
66
+
67
+
68
+ :return: The caption of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
69
+ :rtype: str
70
+ """
71
+ return self._caption
72
+
73
+ @caption.setter
74
+ def caption(self, caption: 'str'):
75
+ """Sets the caption of this LitLoggerServiceUpdateLitLoggerMediaBody.
76
+
77
+
78
+ :param caption: The caption of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
79
+ :type: str
80
+ """
81
+
82
+ self._caption = caption
83
+
84
+ @property
85
+ def upload_complete(self) -> 'bool':
86
+ """Gets the upload_complete of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
87
+
88
+
89
+ :return: The upload_complete of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
90
+ :rtype: bool
91
+ """
92
+ return self._upload_complete
93
+
94
+ @upload_complete.setter
95
+ def upload_complete(self, upload_complete: 'bool'):
96
+ """Sets the upload_complete of this LitLoggerServiceUpdateLitLoggerMediaBody.
97
+
98
+
99
+ :param upload_complete: The upload_complete of this LitLoggerServiceUpdateLitLoggerMediaBody. # noqa: E501
100
+ :type: bool
101
+ """
102
+
103
+ self._upload_complete = upload_complete
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(LitLoggerServiceUpdateLitLoggerMediaBody, 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: 'LitLoggerServiceUpdateLitLoggerMediaBody') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, LitLoggerServiceUpdateLitLoggerMediaBody):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'LitLoggerServiceUpdateLitLoggerMediaBody') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other
@@ -41,6 +41,8 @@ class LitLoggerServiceUpdateMetricsStreamBody(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'dark_color': 'str',
45
+ 'light_color': 'str',
44
46
  'name': 'str',
45
47
  'persisted': 'bool',
46
48
  'phase': 'V1PhaseType',
@@ -48,19 +50,27 @@ class LitLoggerServiceUpdateMetricsStreamBody(object):
48
50
  }
49
51
 
50
52
  attribute_map = {
53
+ 'dark_color': 'darkColor',
54
+ 'light_color': 'lightColor',
51
55
  'name': 'name',
52
56
  'persisted': 'persisted',
53
57
  'phase': 'phase',
54
58
  'trackers': 'trackers'
55
59
  }
56
60
 
57
- def __init__(self, name: 'str' =None, persisted: 'bool' =None, phase: 'V1PhaseType' =None, trackers: 'dict(str, V1MetricsTracker)' =None): # noqa: E501
61
+ def __init__(self, dark_color: 'str' =None, light_color: 'str' =None, name: 'str' =None, persisted: 'bool' =None, phase: 'V1PhaseType' =None, trackers: 'dict(str, V1MetricsTracker)' =None): # noqa: E501
58
62
  """LitLoggerServiceUpdateMetricsStreamBody - a model defined in Swagger""" # noqa: E501
63
+ self._dark_color = None
64
+ self._light_color = None
59
65
  self._name = None
60
66
  self._persisted = None
61
67
  self._phase = None
62
68
  self._trackers = None
63
69
  self.discriminator = None
70
+ if dark_color is not None:
71
+ self.dark_color = dark_color
72
+ if light_color is not None:
73
+ self.light_color = light_color
64
74
  if name is not None:
65
75
  self.name = name
66
76
  if persisted is not None:
@@ -70,6 +80,48 @@ class LitLoggerServiceUpdateMetricsStreamBody(object):
70
80
  if trackers is not None:
71
81
  self.trackers = trackers
72
82
 
83
+ @property
84
+ def dark_color(self) -> 'str':
85
+ """Gets the dark_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
86
+
87
+
88
+ :return: The dark_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
89
+ :rtype: str
90
+ """
91
+ return self._dark_color
92
+
93
+ @dark_color.setter
94
+ def dark_color(self, dark_color: 'str'):
95
+ """Sets the dark_color of this LitLoggerServiceUpdateMetricsStreamBody.
96
+
97
+
98
+ :param dark_color: The dark_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
99
+ :type: str
100
+ """
101
+
102
+ self._dark_color = dark_color
103
+
104
+ @property
105
+ def light_color(self) -> 'str':
106
+ """Gets the light_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
107
+
108
+
109
+ :return: The light_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
110
+ :rtype: str
111
+ """
112
+ return self._light_color
113
+
114
+ @light_color.setter
115
+ def light_color(self, light_color: 'str'):
116
+ """Sets the light_color of this LitLoggerServiceUpdateMetricsStreamBody.
117
+
118
+
119
+ :param light_color: The light_color of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
120
+ :type: str
121
+ """
122
+
123
+ self._light_color = light_color
124
+
73
125
  @property
74
126
  def name(self) -> 'str':
75
127
  """Gets the name of this LitLoggerServiceUpdateMetricsStreamBody. # noqa: E501
@@ -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 V1AddContainerRegistryResponse(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
+ 'registry': 'V1ContainerRegistryInfo'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'registry': 'registry'
49
+ }
50
+
51
+ def __init__(self, registry: 'V1ContainerRegistryInfo' =None): # noqa: E501
52
+ """V1AddContainerRegistryResponse - a model defined in Swagger""" # noqa: E501
53
+ self._registry = None
54
+ self.discriminator = None
55
+ if registry is not None:
56
+ self.registry = registry
57
+
58
+ @property
59
+ def registry(self) -> 'V1ContainerRegistryInfo':
60
+ """Gets the registry of this V1AddContainerRegistryResponse. # noqa: E501
61
+
62
+
63
+ :return: The registry of this V1AddContainerRegistryResponse. # noqa: E501
64
+ :rtype: V1ContainerRegistryInfo
65
+ """
66
+ return self._registry
67
+
68
+ @registry.setter
69
+ def registry(self, registry: 'V1ContainerRegistryInfo'):
70
+ """Sets the registry of this V1AddContainerRegistryResponse.
71
+
72
+
73
+ :param registry: The registry of this V1AddContainerRegistryResponse. # noqa: E501
74
+ :type: V1ContainerRegistryInfo
75
+ """
76
+
77
+ self._registry = registry
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(V1AddContainerRegistryResponse, 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: 'V1AddContainerRegistryResponse') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, V1AddContainerRegistryResponse):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'V1AddContainerRegistryResponse') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -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 V1CapacityReservationUsedBy(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
+ 'cloudspace_id': 'str',
45
+ 'job_id': 'str',
46
+ 'project_id': 'str',
47
+ 'server_id': 'str',
48
+ 'user_id': 'str'
49
+ }
50
+
51
+ attribute_map = {
52
+ 'cloudspace_id': 'cloudspaceId',
53
+ 'job_id': 'jobId',
54
+ 'project_id': 'projectId',
55
+ 'server_id': 'serverId',
56
+ 'user_id': 'userId'
57
+ }
58
+
59
+ def __init__(self, cloudspace_id: 'str' =None, job_id: 'str' =None, project_id: 'str' =None, server_id: 'str' =None, user_id: 'str' =None): # noqa: E501
60
+ """V1CapacityReservationUsedBy - a model defined in Swagger""" # noqa: E501
61
+ self._cloudspace_id = None
62
+ self._job_id = None
63
+ self._project_id = None
64
+ self._server_id = None
65
+ self._user_id = None
66
+ self.discriminator = None
67
+ if cloudspace_id is not None:
68
+ self.cloudspace_id = cloudspace_id
69
+ if job_id is not None:
70
+ self.job_id = job_id
71
+ if project_id is not None:
72
+ self.project_id = project_id
73
+ if server_id is not None:
74
+ self.server_id = server_id
75
+ if user_id is not None:
76
+ self.user_id = user_id
77
+
78
+ @property
79
+ def cloudspace_id(self) -> 'str':
80
+ """Gets the cloudspace_id of this V1CapacityReservationUsedBy. # noqa: E501
81
+
82
+
83
+ :return: The cloudspace_id of this V1CapacityReservationUsedBy. # noqa: E501
84
+ :rtype: str
85
+ """
86
+ return self._cloudspace_id
87
+
88
+ @cloudspace_id.setter
89
+ def cloudspace_id(self, cloudspace_id: 'str'):
90
+ """Sets the cloudspace_id of this V1CapacityReservationUsedBy.
91
+
92
+
93
+ :param cloudspace_id: The cloudspace_id of this V1CapacityReservationUsedBy. # noqa: E501
94
+ :type: str
95
+ """
96
+
97
+ self._cloudspace_id = cloudspace_id
98
+
99
+ @property
100
+ def job_id(self) -> 'str':
101
+ """Gets the job_id of this V1CapacityReservationUsedBy. # noqa: E501
102
+
103
+
104
+ :return: The job_id of this V1CapacityReservationUsedBy. # noqa: E501
105
+ :rtype: str
106
+ """
107
+ return self._job_id
108
+
109
+ @job_id.setter
110
+ def job_id(self, job_id: 'str'):
111
+ """Sets the job_id of this V1CapacityReservationUsedBy.
112
+
113
+
114
+ :param job_id: The job_id of this V1CapacityReservationUsedBy. # noqa: E501
115
+ :type: str
116
+ """
117
+
118
+ self._job_id = job_id
119
+
120
+ @property
121
+ def project_id(self) -> 'str':
122
+ """Gets the project_id of this V1CapacityReservationUsedBy. # noqa: E501
123
+
124
+
125
+ :return: The project_id of this V1CapacityReservationUsedBy. # noqa: E501
126
+ :rtype: str
127
+ """
128
+ return self._project_id
129
+
130
+ @project_id.setter
131
+ def project_id(self, project_id: 'str'):
132
+ """Sets the project_id of this V1CapacityReservationUsedBy.
133
+
134
+
135
+ :param project_id: The project_id of this V1CapacityReservationUsedBy. # noqa: E501
136
+ :type: str
137
+ """
138
+
139
+ self._project_id = project_id
140
+
141
+ @property
142
+ def server_id(self) -> 'str':
143
+ """Gets the server_id of this V1CapacityReservationUsedBy. # noqa: E501
144
+
145
+
146
+ :return: The server_id of this V1CapacityReservationUsedBy. # noqa: E501
147
+ :rtype: str
148
+ """
149
+ return self._server_id
150
+
151
+ @server_id.setter
152
+ def server_id(self, server_id: 'str'):
153
+ """Sets the server_id of this V1CapacityReservationUsedBy.
154
+
155
+
156
+ :param server_id: The server_id of this V1CapacityReservationUsedBy. # noqa: E501
157
+ :type: str
158
+ """
159
+
160
+ self._server_id = server_id
161
+
162
+ @property
163
+ def user_id(self) -> 'str':
164
+ """Gets the user_id of this V1CapacityReservationUsedBy. # noqa: E501
165
+
166
+
167
+ :return: The user_id of this V1CapacityReservationUsedBy. # noqa: E501
168
+ :rtype: str
169
+ """
170
+ return self._user_id
171
+
172
+ @user_id.setter
173
+ def user_id(self, user_id: 'str'):
174
+ """Sets the user_id of this V1CapacityReservationUsedBy.
175
+
176
+
177
+ :param user_id: The user_id of this V1CapacityReservationUsedBy. # noqa: E501
178
+ :type: str
179
+ """
180
+
181
+ self._user_id = user_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(V1CapacityReservationUsedBy, 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: 'V1CapacityReservationUsedBy') -> bool:
219
+ """Returns true if both objects are equal"""
220
+ if not isinstance(other, V1CapacityReservationUsedBy):
221
+ return False
222
+
223
+ return self.__dict__ == other.__dict__
224
+
225
+ def __ne__(self, other: 'V1CapacityReservationUsedBy') -> bool:
226
+ """Returns true if both objects are not equal"""
227
+ return not self == other
@@ -50,9 +50,9 @@ class V1CloudProvider(object):
50
50
  LIGHTNING = "LIGHTNING"
51
51
  LIGHTNING_AGGREGATE = "LIGHTNING_AGGREGATE"
52
52
  KUBERNETES = "KUBERNETES"
53
- AI_POD = "AI_POD"
54
53
  MACHINE = "MACHINE"
55
54
  LIGHTNING_ELASTIC_CLUSTER_AGGREGATE = "LIGHTNING_ELASTIC_CLUSTER_AGGREGATE"
55
+ CUDO = "CUDO"
56
56
  """
57
57
  Attributes:
58
58
  swagger_types (dict): The key is attribute name
@@ -48,6 +48,7 @@ class V1CloudSpaceEnvironmentTemplateConfig(object):
48
48
  'initial_setup_script_text': 'str',
49
49
  'machine_image_version': 'str',
50
50
  'plugins': 'list[str]',
51
+ 'ports': 'list[int]',
51
52
  'setup_script_text': 'str',
52
53
  'specialized_view': 'V1CloudSpaceSpecializedView'
53
54
  }
@@ -60,11 +61,12 @@ class V1CloudSpaceEnvironmentTemplateConfig(object):
60
61
  'initial_setup_script_text': 'initialSetupScriptText',
61
62
  'machine_image_version': 'machineImageVersion',
62
63
  'plugins': 'plugins',
64
+ 'ports': 'ports',
63
65
  'setup_script_text': 'setupScriptText',
64
66
  'specialized_view': 'specializedView'
65
67
  }
66
68
 
67
- def __init__(self, allowed_machines: 'list[str]' =None, default_machine: 'str' =None, environment_type: 'V1CloudSpaceEnvironmentType' =None, files_template_id: 'str' =None, initial_setup_script_text: 'str' =None, machine_image_version: 'str' =None, plugins: 'list[str]' =None, setup_script_text: 'str' =None, specialized_view: 'V1CloudSpaceSpecializedView' =None): # noqa: E501
69
+ def __init__(self, allowed_machines: 'list[str]' =None, default_machine: 'str' =None, environment_type: 'V1CloudSpaceEnvironmentType' =None, files_template_id: 'str' =None, initial_setup_script_text: 'str' =None, machine_image_version: 'str' =None, plugins: 'list[str]' =None, ports: 'list[int]' =None, setup_script_text: 'str' =None, specialized_view: 'V1CloudSpaceSpecializedView' =None): # noqa: E501
68
70
  """V1CloudSpaceEnvironmentTemplateConfig - a model defined in Swagger""" # noqa: E501
69
71
  self._allowed_machines = None
70
72
  self._default_machine = None
@@ -73,6 +75,7 @@ class V1CloudSpaceEnvironmentTemplateConfig(object):
73
75
  self._initial_setup_script_text = None
74
76
  self._machine_image_version = None
75
77
  self._plugins = None
78
+ self._ports = None
76
79
  self._setup_script_text = None
77
80
  self._specialized_view = None
78
81
  self.discriminator = None
@@ -90,6 +93,8 @@ class V1CloudSpaceEnvironmentTemplateConfig(object):
90
93
  self.machine_image_version = machine_image_version
91
94
  if plugins is not None:
92
95
  self.plugins = plugins
96
+ if ports is not None:
97
+ self.ports = ports
93
98
  if setup_script_text is not None:
94
99
  self.setup_script_text = setup_script_text
95
100
  if specialized_view is not None:
@@ -242,6 +247,27 @@ class V1CloudSpaceEnvironmentTemplateConfig(object):
242
247
 
243
248
  self._plugins = plugins
244
249
 
250
+ @property
251
+ def ports(self) -> 'list[int]':
252
+ """Gets the ports of this V1CloudSpaceEnvironmentTemplateConfig. # noqa: E501
253
+
254
+
255
+ :return: The ports of this V1CloudSpaceEnvironmentTemplateConfig. # noqa: E501
256
+ :rtype: list[int]
257
+ """
258
+ return self._ports
259
+
260
+ @ports.setter
261
+ def ports(self, ports: 'list[int]'):
262
+ """Sets the ports of this V1CloudSpaceEnvironmentTemplateConfig.
263
+
264
+
265
+ :param ports: The ports of this V1CloudSpaceEnvironmentTemplateConfig. # noqa: E501
266
+ :type: list[int]
267
+ """
268
+
269
+ self._ports = ports
270
+
245
271
  @property
246
272
  def setup_script_text(self) -> 'str':
247
273
  """Gets the setup_script_text of this V1CloudSpaceEnvironmentTemplateConfig. # noqa: E501
@@ -41,6 +41,7 @@ class V1CloudSpaceEnvironmentType(object):
41
41
  DEFAULT = "CLOUD_SPACE_ENVIRONMENT_TYPE_DEFAULT"
42
42
  BLANK = "CLOUD_SPACE_ENVIRONMENT_TYPE_BLANK"
43
43
  PYTHON_EMPTY = "CLOUD_SPACE_ENVIRONMENT_TYPE_PYTHON_EMPTY"
44
+ COMFYUI = "CLOUD_SPACE_ENVIRONMENT_TYPE_COMFYUI"
44
45
  """
45
46
  Attributes:
46
47
  swagger_types (dict): The key is attribute name
@@ -41,6 +41,7 @@ class V1CloudSpaceSpecializedView(object):
41
41
  DEFAULT = "CLOUD_SPACE_SPECIALIZED_VIEW_DEFAULT"
42
42
  STREAMLIT = "CLOUD_SPACE_SPECIALIZED_VIEW_STREAMLIT"
43
43
  NOTEBOOK = "CLOUD_SPACE_SPECIALIZED_VIEW_NOTEBOOK"
44
+ COMFYUI = "CLOUD_SPACE_SPECIALIZED_VIEW_COMFYUI"
44
45
  """
45
46
  Attributes:
46
47
  swagger_types (dict): The key is attribute name