lightning-sdk 2025.9.30__py3-none-any.whl → 2025.10.14__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 (69) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/cloud_account_api.py +0 -2
  3. lightning_sdk/api/studio_api.py +8 -0
  4. lightning_sdk/base_studio.py +23 -12
  5. lightning_sdk/cli/base_studio/__init__.py +10 -0
  6. lightning_sdk/cli/base_studio/list.py +45 -0
  7. lightning_sdk/cli/entrypoint.py +2 -0
  8. lightning_sdk/cli/groups.py +7 -0
  9. lightning_sdk/cli/studio/connect.py +117 -22
  10. lightning_sdk/cli/studio/ssh.py +3 -6
  11. lightning_sdk/cli/utils/ssh_connection.py +8 -0
  12. lightning_sdk/job/job.py +5 -0
  13. lightning_sdk/job/v1.py +8 -0
  14. lightning_sdk/job/v2.py +8 -0
  15. lightning_sdk/lightning_cloud/openapi/__init__.py +20 -0
  16. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  17. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +19 -19
  18. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +105 -0
  19. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +1463 -240
  20. lightning_sdk/lightning_cloud/openapi/api/sdk_command_history_service_api.py +141 -0
  21. lightning_sdk/lightning_cloud/openapi/models/__init__.py +19 -0
  22. lightning_sdk/lightning_cloud/openapi/models/cloudspace_id_visibility_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +53 -1
  24. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +53 -1
  26. lightning_sdk/lightning_cloud/openapi/models/id_transfer_body.py +53 -1
  27. lightning_sdk/lightning_cloud/openapi/models/incident_id_messages_body.py +149 -0
  28. lightning_sdk/lightning_cloud/openapi/models/incidents_id_body.py +279 -0
  29. lightning_sdk/lightning_cloud/openapi/models/messages_message_id_body.py +149 -0
  30. lightning_sdk/lightning_cloud/openapi/models/project_id_incidents_body.py +279 -0
  31. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/storage_complete_body.py +15 -15
  33. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_transfer_metadata.py +53 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +27 -1
  35. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +253 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_response.py +97 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_message_response.py +97 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_delete_incident_response.py +97 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_transfer_estimate_response.py +123 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_group_pod_metrics.py +1241 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_incident.py +539 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_incident_message.py +253 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_incident_type.py +1 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_job.py +53 -1
  46. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_kai_scheduler_queue_metrics.py +627 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_list_group_pod_metrics_response.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_list_incident_messages_response.py +149 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_list_incidents_response.py +149 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_list_kai_scheduler_queues_metrics_response.py +123 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +53 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +27 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +27 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +1 -27
  57. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_severity.py +104 -0
  58. lightning_sdk/lightning_cloud/openapi/models/v1_sdk_command_history_type.py +104 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_type.py +1 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +157 -53
  61. lightning_sdk/machine.py +0 -1
  62. lightning_sdk/studio.py +42 -5
  63. lightning_sdk/utils/progress.py +32 -33
  64. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/METADATA +1 -1
  65. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/RECORD +69 -47
  66. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/LICENSE +0 -0
  67. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/WHEEL +0 -0
  68. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/entry_points.txt +0 -0
  69. {lightning_sdk-2025.9.30.dist-info → lightning_sdk-2025.10.14.dist-info}/top_level.txt +0 -0
@@ -1570,43 +1570,45 @@ class AssistantsServiceApi(object):
1570
1570
  _request_timeout=params.get('_request_timeout'),
1571
1571
  collection_formats=collection_formats)
1572
1572
 
1573
- def assistants_service_get_published_managed_endpoint_by_model_id(self, id: 'str', **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1574
- """GetPublishedManagedEndpointModel returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1573
+ def assistants_service_get_published_managed_endpoint(self, **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1574
+ """GetPublishedManagedEndpoint returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1575
1575
 
1576
1576
  This method makes a synchronous HTTP request by default. To make an
1577
1577
  asynchronous HTTP request, please pass async_req=True
1578
- >>> thread = api.assistants_service_get_published_managed_endpoint_by_model_id(id, async_req=True)
1578
+ >>> thread = api.assistants_service_get_published_managed_endpoint(async_req=True)
1579
1579
  >>> result = thread.get()
1580
1580
 
1581
1581
  :param async_req bool
1582
- :param str id: (required)
1582
+ :param str id:
1583
+ :param str name:
1583
1584
  :return: V1ManagedEndpoint
1584
1585
  If the method is called asynchronously,
1585
1586
  returns the request thread.
1586
1587
  """
1587
1588
  kwargs['_return_http_data_only'] = True
1588
1589
  if kwargs.get('async_req'):
1589
- return self.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, **kwargs) # noqa: E501
1590
+ return self.assistants_service_get_published_managed_endpoint_with_http_info(**kwargs) # noqa: E501
1590
1591
  else:
1591
- (data) = self.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, **kwargs) # noqa: E501
1592
+ (data) = self.assistants_service_get_published_managed_endpoint_with_http_info(**kwargs) # noqa: E501
1592
1593
  return data
1593
1594
 
1594
- def assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(self, id: 'str', **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1595
- """GetPublishedManagedEndpointModel returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1595
+ def assistants_service_get_published_managed_endpoint_with_http_info(self, **kwargs) -> 'V1ManagedEndpoint': # noqa: E501
1596
+ """GetPublishedManagedEndpoint returns a managed endpoint with a single specific managed endpoint model included in modelsMetadata # noqa: E501
1596
1597
 
1597
1598
  This method makes a synchronous HTTP request by default. To make an
1598
1599
  asynchronous HTTP request, please pass async_req=True
1599
- >>> thread = api.assistants_service_get_published_managed_endpoint_by_model_id_with_http_info(id, async_req=True)
1600
+ >>> thread = api.assistants_service_get_published_managed_endpoint_with_http_info(async_req=True)
1600
1601
  >>> result = thread.get()
1601
1602
 
1602
1603
  :param async_req bool
1603
- :param str id: (required)
1604
+ :param str id:
1605
+ :param str name:
1604
1606
  :return: V1ManagedEndpoint
1605
1607
  If the method is called asynchronously,
1606
1608
  returns the request thread.
1607
1609
  """
1608
1610
 
1609
- all_params = ['id'] # noqa: E501
1611
+ all_params = ['id', 'name'] # noqa: E501
1610
1612
  all_params.append('async_req')
1611
1613
  all_params.append('_return_http_data_only')
1612
1614
  all_params.append('_preload_content')
@@ -1617,22 +1619,20 @@ class AssistantsServiceApi(object):
1617
1619
  if key not in all_params:
1618
1620
  raise TypeError(
1619
1621
  "Got an unexpected keyword argument '%s'"
1620
- " to method assistants_service_get_published_managed_endpoint_by_model_id" % key
1622
+ " to method assistants_service_get_published_managed_endpoint" % key
1621
1623
  )
1622
1624
  params[key] = val
1623
1625
  del params['kwargs']
1624
- # verify the required parameter 'id' is set
1625
- if ('id' not in params or
1626
- params['id'] is None):
1627
- raise ValueError("Missing the required parameter `id` when calling `assistants_service_get_published_managed_endpoint_by_model_id`") # noqa: E501
1628
1626
 
1629
1627
  collection_formats = {}
1630
1628
 
1631
1629
  path_params = {}
1632
- if 'id' in params:
1633
- path_params['id'] = params['id'] # noqa: E501
1634
1630
 
1635
1631
  query_params = []
1632
+ if 'id' in params:
1633
+ query_params.append(('id', params['id'])) # noqa: E501
1634
+ if 'name' in params:
1635
+ query_params.append(('name', params['name'])) # noqa: E501
1636
1636
 
1637
1637
  header_params = {}
1638
1638
 
@@ -1648,7 +1648,7 @@ class AssistantsServiceApi(object):
1648
1648
  auth_settings = [] # noqa: E501
1649
1649
 
1650
1650
  return self.api_client.call_api(
1651
- '/v1/agent-published-managed-model/{id}', 'GET',
1651
+ '/v1/agent-published-managed-model', 'GET',
1652
1652
  path_params,
1653
1653
  query_params,
1654
1654
  header_params,
@@ -4192,6 +4192,111 @@ class CloudSpaceServiceApi(object):
4192
4192
  _request_timeout=params.get('_request_timeout'),
4193
4193
  collection_formats=collection_formats)
4194
4194
 
4195
+ def cloud_space_service_get_cloud_space_transfer_estimate(self, project_id: 'str', id: 'str', **kwargs) -> 'V1GetCloudSpaceTransferEstimateResponse': # noqa: E501
4196
+ """cloud_space_service_get_cloud_space_transfer_estimate # noqa: E501
4197
+
4198
+ This method makes a synchronous HTTP request by default. To make an
4199
+ asynchronous HTTP request, please pass async_req=True
4200
+ >>> thread = api.cloud_space_service_get_cloud_space_transfer_estimate(project_id, id, async_req=True)
4201
+ >>> result = thread.get()
4202
+
4203
+ :param async_req bool
4204
+ :param str project_id: (required)
4205
+ :param str id: (required)
4206
+ :param str target_cluster_id:
4207
+ :return: V1GetCloudSpaceTransferEstimateResponse
4208
+ If the method is called asynchronously,
4209
+ returns the request thread.
4210
+ """
4211
+ kwargs['_return_http_data_only'] = True
4212
+ if kwargs.get('async_req'):
4213
+ return self.cloud_space_service_get_cloud_space_transfer_estimate_with_http_info(project_id, id, **kwargs) # noqa: E501
4214
+ else:
4215
+ (data) = self.cloud_space_service_get_cloud_space_transfer_estimate_with_http_info(project_id, id, **kwargs) # noqa: E501
4216
+ return data
4217
+
4218
+ def cloud_space_service_get_cloud_space_transfer_estimate_with_http_info(self, project_id: 'str', id: 'str', **kwargs) -> 'V1GetCloudSpaceTransferEstimateResponse': # noqa: E501
4219
+ """cloud_space_service_get_cloud_space_transfer_estimate # noqa: E501
4220
+
4221
+ This method makes a synchronous HTTP request by default. To make an
4222
+ asynchronous HTTP request, please pass async_req=True
4223
+ >>> thread = api.cloud_space_service_get_cloud_space_transfer_estimate_with_http_info(project_id, id, async_req=True)
4224
+ >>> result = thread.get()
4225
+
4226
+ :param async_req bool
4227
+ :param str project_id: (required)
4228
+ :param str id: (required)
4229
+ :param str target_cluster_id:
4230
+ :return: V1GetCloudSpaceTransferEstimateResponse
4231
+ If the method is called asynchronously,
4232
+ returns the request thread.
4233
+ """
4234
+
4235
+ all_params = ['project_id', 'id', 'target_cluster_id'] # noqa: E501
4236
+ all_params.append('async_req')
4237
+ all_params.append('_return_http_data_only')
4238
+ all_params.append('_preload_content')
4239
+ all_params.append('_request_timeout')
4240
+
4241
+ params = locals()
4242
+ for key, val in six.iteritems(params['kwargs']):
4243
+ if key not in all_params:
4244
+ raise TypeError(
4245
+ "Got an unexpected keyword argument '%s'"
4246
+ " to method cloud_space_service_get_cloud_space_transfer_estimate" % key
4247
+ )
4248
+ params[key] = val
4249
+ del params['kwargs']
4250
+ # verify the required parameter 'project_id' is set
4251
+ if ('project_id' not in params or
4252
+ params['project_id'] is None):
4253
+ raise ValueError("Missing the required parameter `project_id` when calling `cloud_space_service_get_cloud_space_transfer_estimate`") # noqa: E501
4254
+ # verify the required parameter 'id' is set
4255
+ if ('id' not in params or
4256
+ params['id'] is None):
4257
+ raise ValueError("Missing the required parameter `id` when calling `cloud_space_service_get_cloud_space_transfer_estimate`") # noqa: E501
4258
+
4259
+ collection_formats = {}
4260
+
4261
+ path_params = {}
4262
+ if 'project_id' in params:
4263
+ path_params['projectId'] = params['project_id'] # noqa: E501
4264
+ if 'id' in params:
4265
+ path_params['id'] = params['id'] # noqa: E501
4266
+
4267
+ query_params = []
4268
+ if 'target_cluster_id' in params:
4269
+ query_params.append(('targetClusterId', params['target_cluster_id'])) # noqa: E501
4270
+
4271
+ header_params = {}
4272
+
4273
+ form_params = []
4274
+ local_var_files = {}
4275
+
4276
+ body_params = None
4277
+ # HTTP header `Accept`
4278
+ header_params['Accept'] = self.api_client.select_header_accept(
4279
+ ['application/json']) # noqa: E501
4280
+
4281
+ # Authentication setting
4282
+ auth_settings = [] # noqa: E501
4283
+
4284
+ return self.api_client.call_api(
4285
+ '/v1/projects/{projectId}/cloudspaces/{id}/transfer/duration', 'GET',
4286
+ path_params,
4287
+ query_params,
4288
+ header_params,
4289
+ body=body_params,
4290
+ post_params=form_params,
4291
+ files=local_var_files,
4292
+ response_type='V1GetCloudSpaceTransferEstimateResponse', # noqa: E501
4293
+ auth_settings=auth_settings,
4294
+ async_req=params.get('async_req'),
4295
+ _return_http_data_only=params.get('_return_http_data_only'),
4296
+ _preload_content=params.get('_preload_content', True),
4297
+ _request_timeout=params.get('_request_timeout'),
4298
+ collection_formats=collection_formats)
4299
+
4195
4300
  def cloud_space_service_get_cloud_space_version(self, project_id: 'str', cloud_space_id: 'str', id: 'str', **kwargs) -> 'V1CloudSpaceVersion': # noqa: E501
4196
4301
  """cloud_space_service_get_cloud_space_version # noqa: E501
4197
4302