lightning-sdk 2025.12.17__py3-none-any.whl → 2026.1.27__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 (130) hide show
  1. lightning_sdk/__version__.py +1 -1
  2. lightning_sdk/api/k8s_api.py +75 -29
  3. lightning_sdk/api/studio_api.py +192 -37
  4. lightning_sdk/api/teamspace_api.py +180 -54
  5. lightning_sdk/api/utils.py +8 -0
  6. lightning_sdk/cli/cp/__init__.py +67 -0
  7. lightning_sdk/cli/cp/teamspace_uploads.py +93 -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 +29 -98
  13. lightning_sdk/cli/legacy/run.py +13 -2
  14. lightning_sdk/cli/legacy/upload.py +24 -31
  15. lightning_sdk/cli/studio/__init__.py +4 -0
  16. lightning_sdk/cli/studio/cp.py +24 -65
  17. lightning_sdk/cli/studio/ls.py +57 -0
  18. lightning_sdk/cli/studio/rm.py +71 -0
  19. lightning_sdk/cli/utils/filesystem.py +103 -0
  20. lightning_sdk/cli/utils/logging.py +2 -1
  21. lightning_sdk/cli/utils/teamspace_selection.py +5 -0
  22. lightning_sdk/exceptions.py +31 -0
  23. lightning_sdk/job/base.py +1 -1
  24. lightning_sdk/k8s_cluster.py +9 -10
  25. lightning_sdk/lightning_cloud/__version__.py +1 -1
  26. lightning_sdk/lightning_cloud/openapi/__init__.py +43 -23
  27. lightning_sdk/lightning_cloud/openapi/api/__init__.py +2 -1
  28. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +118 -1
  29. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +378 -536
  30. lightning_sdk/lightning_cloud/openapi/api/container_registry_service_api.py +456 -0
  31. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +5 -1
  32. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +11 -11
  33. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +113 -0
  34. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +246 -19
  35. lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py +116 -11
  36. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +588 -2
  37. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +9 -1
  38. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +113 -0
  39. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +5 -1
  40. lightning_sdk/lightning_cloud/openapi/api/{kubernetes_virtual_machine_service_api.py → virtual_machine_service_api.py} +82 -82
  41. lightning_sdk/lightning_cloud/openapi/models/__init__.py +41 -22
  42. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_cluster_capacity_reservation_body.py +53 -1
  43. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_machine_body.py +53 -1
  44. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_org_cluster_capacity_reservation_body.py +409 -0
  45. lightning_sdk/lightning_cloud/openapi/models/{v1_add_container_registry_response.py → cluster_service_report_machine_system_metrics_body.py} +23 -23
  46. lightning_sdk/lightning_cloud/openapi/models/container_registry_config_ecr.py +149 -0
  47. lightning_sdk/lightning_cloud/openapi/models/{v1_container_registry_status.py → container_registry_provider.py} +14 -10
  48. lightning_sdk/lightning_cloud/openapi/models/container_registry_service_create_container_registry_body.py +201 -0
  49. lightning_sdk/lightning_cloud/openapi/models/{v1_ecr_registry_config_input.py → container_registry_service_refresh_container_registry_credentials_body.py} +21 -21
  50. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/{v1_ecr_registry_config.py → jobs_service_duplicate_deployment_body.py} +51 -51
  52. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_create_lit_logger_media_body.py +305 -0
  53. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_lit_logger_media_body.py +149 -0
  54. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_metrics_stream_body.py +53 -1
  55. lightning_sdk/lightning_cloud/openapi/models/organizations_service_update_org_role_body.py +175 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_reservation_used_by.py +227 -0
  57. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +2 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +53 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +79 -27
  62. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +0 -1
  63. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry.py +63 -89
  64. lightning_sdk/lightning_cloud/openapi/models/{cluster_service_add_container_registry_body.py → v1_container_registry_config.py} +16 -16
  65. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_scopes.py +149 -0
  66. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_kubernetes_virtual_machine_response.py → v1_create_container_registry_response.py} +6 -6
  67. lightning_sdk/lightning_cloud/openapi/models/v1_create_lit_logger_media_response.py +149 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_create_org_cluster_capacity_reservation_response.py +201 -0
  69. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +29 -3
  70. lightning_sdk/lightning_cloud/openapi/models/v1_cudo_direct_v1.py +175 -0
  71. lightning_sdk/lightning_cloud/openapi/models/{cluster_service_refresh_container_registry_credentials_body.py → v1_delete_lit_logger_media_response.py} +6 -6
  72. lightning_sdk/lightning_cloud/openapi/models/{kubernetes_virtual_machine_service_update_kubernetes_virtual_machine_body.py → v1_delete_org_cluster_capacity_reservation_response.py} +6 -6
  73. lightning_sdk/lightning_cloud/openapi/models/v1_delete_virtual_machine_response.py +97 -0
  74. lightning_sdk/lightning_cloud/openapi/models/v1_describe_org_cluster_capacity_reservation_response.py +201 -0
  75. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -27
  76. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  77. lightning_sdk/lightning_cloud/openapi/models/v1_generic_job_spec.py +79 -1
  78. lightning_sdk/lightning_cloud/openapi/models/{v1_validate_container_registry_response.py → v1_get_kubernetes_pod_logs_response.py} +37 -37
  79. lightning_sdk/lightning_cloud/openapi/models/{v1_get_machine_response.py → v1_get_kubernetes_pod_response.py} +23 -23
  80. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +27 -1
  81. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  82. lightning_sdk/lightning_cloud/openapi/models/v1_joinable_organization.py +27 -1
  83. lightning_sdk/lightning_cloud/openapi/models/{v1_container_registry_integration.py → v1_k8s_incident_setting.py} +49 -23
  84. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_type.py +108 -0
  85. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +53 -1
  86. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +53 -27
  87. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +27 -1
  88. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod_logs_page.py +227 -0
  89. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_config.py +53 -1
  90. lightning_sdk/lightning_cloud/openapi/models/v1_list_container_registries_response.py +6 -6
  91. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +43 -17
  92. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_sort_order.py +104 -0
  93. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_logger_media_response.py +149 -0
  94. lightning_sdk/lightning_cloud/openapi/models/v1_list_models_response.py +55 -3
  95. lightning_sdk/lightning_cloud/openapi/models/{v1_list_kubernetes_virtual_machines_response.py → v1_list_virtual_machines_response.py} +16 -16
  96. lightning_sdk/lightning_cloud/openapi/models/v1_lit_logger_media.py +513 -0
  97. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +27 -53
  98. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +107 -3
  99. lightning_sdk/lightning_cloud/openapi/models/v1_media_type.py +104 -0
  100. lightning_sdk/lightning_cloud/openapi/models/{v1_ai_pod_v1.py → v1_mithril_direct_v1.py} +51 -51
  101. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  102. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  103. lightning_sdk/lightning_cloud/openapi/models/v1_refresh_container_registry_credentials_response.py +1 -27
  104. lightning_sdk/lightning_cloud/openapi/models/{cluster_service_validate_container_registry_body.py → v1_report_cloud_space_instance_idle_state_response.py} +6 -6
  105. lightning_sdk/lightning_cloud/openapi/models/v1_report_machine_system_metrics_response.py +97 -0
  106. lightning_sdk/lightning_cloud/openapi/models/{v1_ecr_registry_details.py → v1_tenant_credentials.py} +53 -53
  107. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +183 -157
  108. lightning_sdk/lightning_cloud/openapi/models/{v1_kubernetes_virtual_machine.py → v1_virtual_machine.py} +94 -68
  109. lightning_sdk/lightning_cloud/openapi/models/{v1_kubevirt_vm_configuration.py → v1_vm_configuration.py} +20 -20
  110. lightning_sdk/lightning_cloud/openapi/models/{v1_kubevirt_provider_configuration.py → v1_vm_provider_configuration.py} +32 -32
  111. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_create_virtual_machine_body.py +565 -0
  112. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_update_virtual_machine_body.py +97 -0
  113. lightning_sdk/lightning_cloud/openapi/rest.py +2 -2
  114. lightning_sdk/lightning_cloud/rest_client.py +0 -2
  115. lightning_sdk/machine.py +3 -3
  116. lightning_sdk/studio.py +14 -4
  117. lightning_sdk/teamspace.py +28 -7
  118. lightning_sdk/utils/logging.py +2 -1
  119. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/METADATA +1 -5
  120. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/RECORD +125 -102
  121. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/WHEEL +1 -1
  122. lightning_sdk/lightning_cloud/cli/__main__.py +0 -29
  123. lightning_sdk/lightning_cloud/openapi/models/kubernetes_virtual_machine_service_create_kubernetes_virtual_machine_body.py +0 -513
  124. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_info.py +0 -281
  125. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_vm_resources.py +0 -201
  126. lightning_sdk/lightning_cloud/source_code/logs_socket_api.py +0 -103
  127. /lightning_sdk/lightning_cloud/openapi/models/{v1_list_filesystem_mmts_response.py → v1_list_filesystem_mm_ts_response.py} +0 -0
  128. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/LICENSE +0 -0
  129. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/entry_points.txt +0 -0
  130. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.27.dist-info}/top_level.txt +0 -0
@@ -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 V1KubevirtProviderConfiguration(object):
31
+ class V1VmProviderConfiguration(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.
@@ -42,7 +42,7 @@ class V1KubevirtProviderConfiguration(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'access': 'str',
45
- 'config': 'V1KubevirtVmConfiguration',
45
+ 'config': 'V1VmConfiguration',
46
46
  'name': 'str',
47
47
  'node': 'str',
48
48
  'status': 'str'
@@ -56,8 +56,8 @@ class V1KubevirtProviderConfiguration(object):
56
56
  'status': 'status'
57
57
  }
58
58
 
59
- def __init__(self, access: 'str' =None, config: 'V1KubevirtVmConfiguration' =None, name: 'str' =None, node: 'str' =None, status: 'str' =None): # noqa: E501
60
- """V1KubevirtProviderConfiguration - a model defined in Swagger""" # noqa: E501
59
+ def __init__(self, access: 'str' =None, config: 'V1VmConfiguration' =None, name: 'str' =None, node: 'str' =None, status: 'str' =None): # noqa: E501
60
+ """V1VmProviderConfiguration - a model defined in Swagger""" # noqa: E501
61
61
  self._access = None
62
62
  self._config = None
63
63
  self._name = None
@@ -77,62 +77,62 @@ class V1KubevirtProviderConfiguration(object):
77
77
 
78
78
  @property
79
79
  def access(self) -> 'str':
80
- """Gets the access of this V1KubevirtProviderConfiguration. # noqa: E501
80
+ """Gets the access of this V1VmProviderConfiguration. # noqa: E501
81
81
 
82
82
 
83
- :return: The access of this V1KubevirtProviderConfiguration. # noqa: E501
83
+ :return: The access of this V1VmProviderConfiguration. # noqa: E501
84
84
  :rtype: str
85
85
  """
86
86
  return self._access
87
87
 
88
88
  @access.setter
89
89
  def access(self, access: 'str'):
90
- """Sets the access of this V1KubevirtProviderConfiguration.
90
+ """Sets the access of this V1VmProviderConfiguration.
91
91
 
92
92
 
93
- :param access: The access of this V1KubevirtProviderConfiguration. # noqa: E501
93
+ :param access: The access of this V1VmProviderConfiguration. # noqa: E501
94
94
  :type: str
95
95
  """
96
96
 
97
97
  self._access = access
98
98
 
99
99
  @property
100
- def config(self) -> 'V1KubevirtVmConfiguration':
101
- """Gets the config of this V1KubevirtProviderConfiguration. # noqa: E501
100
+ def config(self) -> 'V1VmConfiguration':
101
+ """Gets the config of this V1VmProviderConfiguration. # noqa: E501
102
102
 
103
103
 
104
- :return: The config of this V1KubevirtProviderConfiguration. # noqa: E501
105
- :rtype: V1KubevirtVmConfiguration
104
+ :return: The config of this V1VmProviderConfiguration. # noqa: E501
105
+ :rtype: V1VmConfiguration
106
106
  """
107
107
  return self._config
108
108
 
109
109
  @config.setter
110
- def config(self, config: 'V1KubevirtVmConfiguration'):
111
- """Sets the config of this V1KubevirtProviderConfiguration.
110
+ def config(self, config: 'V1VmConfiguration'):
111
+ """Sets the config of this V1VmProviderConfiguration.
112
112
 
113
113
 
114
- :param config: The config of this V1KubevirtProviderConfiguration. # noqa: E501
115
- :type: V1KubevirtVmConfiguration
114
+ :param config: The config of this V1VmProviderConfiguration. # noqa: E501
115
+ :type: V1VmConfiguration
116
116
  """
117
117
 
118
118
  self._config = config
119
119
 
120
120
  @property
121
121
  def name(self) -> 'str':
122
- """Gets the name of this V1KubevirtProviderConfiguration. # noqa: E501
122
+ """Gets the name of this V1VmProviderConfiguration. # noqa: E501
123
123
 
124
124
 
125
- :return: The name of this V1KubevirtProviderConfiguration. # noqa: E501
125
+ :return: The name of this V1VmProviderConfiguration. # noqa: E501
126
126
  :rtype: str
127
127
  """
128
128
  return self._name
129
129
 
130
130
  @name.setter
131
131
  def name(self, name: 'str'):
132
- """Sets the name of this V1KubevirtProviderConfiguration.
132
+ """Sets the name of this V1VmProviderConfiguration.
133
133
 
134
134
 
135
- :param name: The name of this V1KubevirtProviderConfiguration. # noqa: E501
135
+ :param name: The name of this V1VmProviderConfiguration. # noqa: E501
136
136
  :type: str
137
137
  """
138
138
 
@@ -140,20 +140,20 @@ class V1KubevirtProviderConfiguration(object):
140
140
 
141
141
  @property
142
142
  def node(self) -> 'str':
143
- """Gets the node of this V1KubevirtProviderConfiguration. # noqa: E501
143
+ """Gets the node of this V1VmProviderConfiguration. # noqa: E501
144
144
 
145
145
 
146
- :return: The node of this V1KubevirtProviderConfiguration. # noqa: E501
146
+ :return: The node of this V1VmProviderConfiguration. # noqa: E501
147
147
  :rtype: str
148
148
  """
149
149
  return self._node
150
150
 
151
151
  @node.setter
152
152
  def node(self, node: 'str'):
153
- """Sets the node of this V1KubevirtProviderConfiguration.
153
+ """Sets the node of this V1VmProviderConfiguration.
154
154
 
155
155
 
156
- :param node: The node of this V1KubevirtProviderConfiguration. # noqa: E501
156
+ :param node: The node of this V1VmProviderConfiguration. # noqa: E501
157
157
  :type: str
158
158
  """
159
159
 
@@ -161,20 +161,20 @@ class V1KubevirtProviderConfiguration(object):
161
161
 
162
162
  @property
163
163
  def status(self) -> 'str':
164
- """Gets the status of this V1KubevirtProviderConfiguration. # noqa: E501
164
+ """Gets the status of this V1VmProviderConfiguration. # noqa: E501
165
165
 
166
166
 
167
- :return: The status of this V1KubevirtProviderConfiguration. # noqa: E501
167
+ :return: The status of this V1VmProviderConfiguration. # noqa: E501
168
168
  :rtype: str
169
169
  """
170
170
  return self._status
171
171
 
172
172
  @status.setter
173
173
  def status(self, status: 'str'):
174
- """Sets the status of this V1KubevirtProviderConfiguration.
174
+ """Sets the status of this V1VmProviderConfiguration.
175
175
 
176
176
 
177
- :param status: The status of this V1KubevirtProviderConfiguration. # noqa: E501
177
+ :param status: The status of this V1VmProviderConfiguration. # noqa: E501
178
178
  :type: str
179
179
  """
180
180
 
@@ -201,7 +201,7 @@ class V1KubevirtProviderConfiguration(object):
201
201
  ))
202
202
  else:
203
203
  result[attr] = value
204
- if issubclass(V1KubevirtProviderConfiguration, dict):
204
+ if issubclass(V1VmProviderConfiguration, dict):
205
205
  for key, value in self.items():
206
206
  result[key] = value
207
207
 
@@ -215,13 +215,13 @@ class V1KubevirtProviderConfiguration(object):
215
215
  """For `print` and `pprint`"""
216
216
  return self.to_str()
217
217
 
218
- def __eq__(self, other: 'V1KubevirtProviderConfiguration') -> bool:
218
+ def __eq__(self, other: 'V1VmProviderConfiguration') -> bool:
219
219
  """Returns true if both objects are equal"""
220
- if not isinstance(other, V1KubevirtProviderConfiguration):
220
+ if not isinstance(other, V1VmProviderConfiguration):
221
221
  return False
222
222
 
223
223
  return self.__dict__ == other.__dict__
224
224
 
225
- def __ne__(self, other: 'V1KubevirtProviderConfiguration') -> bool:
225
+ def __ne__(self, other: 'V1VmProviderConfiguration') -> bool:
226
226
  """Returns true if both objects are not equal"""
227
227
  return not self == other