lightning-sdk 2025.11.13.post0__py3-none-any.whl → 2025.11.21__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 (61) hide show
  1. lightning_sdk/__init__.py +2 -0
  2. lightning_sdk/__version__.py +1 -1
  3. lightning_sdk/api/__init__.py +2 -9
  4. lightning_sdk/api/k8s_api.py +105 -0
  5. lightning_sdk/api/studio_api.py +19 -0
  6. lightning_sdk/api/utils.py +19 -0
  7. lightning_sdk/exceptions.py +2 -0
  8. lightning_sdk/k8s_cluster.py +83 -0
  9. lightning_sdk/lightning_cloud/openapi/__init__.py +15 -0
  10. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +134 -1
  11. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  12. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +539 -2
  13. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +114 -0
  14. lightning_sdk/lightning_cloud/openapi/api/markets_service_api.py +5 -1
  15. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +99 -2
  16. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +5 -1
  17. lightning_sdk/lightning_cloud/openapi/models/__init__.py +15 -0
  18. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +29 -3
  19. lightning_sdk/lightning_cloud/openapi/models/deployments_deployment_id_body.py +149 -0
  20. lightning_sdk/lightning_cloud/openapi/models/id_content_body.py +123 -0
  21. lightning_sdk/lightning_cloud/openapi/models/job_id_systemmetrics_body.py +123 -0
  22. lightning_sdk/lightning_cloud/openapi/models/message_id_actions_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +1 -27
  24. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +107 -3
  26. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_machines.py +149 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_request.py +149 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +1 -27
  30. lightning_sdk/lightning_cloud/openapi/models/v1_generic_job.py +305 -0
  31. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +435 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_list_all_jobs_response.py +175 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_by.py +104 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_order.py +104 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +149 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_list_pipelines_response.py +55 -3
  39. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +1 -27
  42. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_message_action.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_org_deployment_visibility.py +227 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_pod_preemption_event.py +305 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +1 -27
  47. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +1 -27
  48. lightning_sdk/lightning_cloud/openapi/models/v1_report_job_system_metrics_response.py +97 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_message_content_response.py +123 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +133 -107
  53. lightning_sdk/lightning_cloud/openapi/models/v1_validate_storage_transfer_response.py +15 -15
  54. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  55. lightning_sdk/studio.py +12 -0
  56. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/METADATA +2 -1
  57. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/RECORD +61 -43
  58. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/LICENSE +0 -0
  59. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/WHEEL +0 -0
  60. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/entry_points.txt +0 -0
  61. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.21.dist-info}/top_level.txt +0 -0
@@ -1521,6 +1521,120 @@ class K8SClusterServiceApi(object):
1521
1521
  _request_timeout=params.get('_request_timeout'),
1522
1522
  collection_formats=collection_formats)
1523
1523
 
1524
+ def k8_s_cluster_service_list_kubernetes_pods(self, cluster_id: 'str', **kwargs) -> 'V1ListKubernetesPodsResponse': # noqa: E501
1525
+ """k8_s_cluster_service_list_kubernetes_pods # noqa: E501
1526
+
1527
+ This method makes a synchronous HTTP request by default. To make an
1528
+ asynchronous HTTP request, please pass async_req=True
1529
+ >>> thread = api.k8_s_cluster_service_list_kubernetes_pods(cluster_id, async_req=True)
1530
+ >>> result = thread.get()
1531
+
1532
+ :param async_req bool
1533
+ :param str cluster_id: (required)
1534
+ :param list[str] statuses_in:
1535
+ :param str namespace:
1536
+ :param str user_id:
1537
+ :param str queue_name:
1538
+ :param bool deleted:
1539
+ :return: V1ListKubernetesPodsResponse
1540
+ If the method is called asynchronously,
1541
+ returns the request thread.
1542
+ """
1543
+ kwargs['_return_http_data_only'] = True
1544
+ if kwargs.get('async_req'):
1545
+ return self.k8_s_cluster_service_list_kubernetes_pods_with_http_info(cluster_id, **kwargs) # noqa: E501
1546
+ else:
1547
+ (data) = self.k8_s_cluster_service_list_kubernetes_pods_with_http_info(cluster_id, **kwargs) # noqa: E501
1548
+ return data
1549
+
1550
+ def k8_s_cluster_service_list_kubernetes_pods_with_http_info(self, cluster_id: 'str', **kwargs) -> 'V1ListKubernetesPodsResponse': # noqa: E501
1551
+ """k8_s_cluster_service_list_kubernetes_pods # noqa: E501
1552
+
1553
+ This method makes a synchronous HTTP request by default. To make an
1554
+ asynchronous HTTP request, please pass async_req=True
1555
+ >>> thread = api.k8_s_cluster_service_list_kubernetes_pods_with_http_info(cluster_id, async_req=True)
1556
+ >>> result = thread.get()
1557
+
1558
+ :param async_req bool
1559
+ :param str cluster_id: (required)
1560
+ :param list[str] statuses_in:
1561
+ :param str namespace:
1562
+ :param str user_id:
1563
+ :param str queue_name:
1564
+ :param bool deleted:
1565
+ :return: V1ListKubernetesPodsResponse
1566
+ If the method is called asynchronously,
1567
+ returns the request thread.
1568
+ """
1569
+
1570
+ all_params = ['cluster_id', 'statuses_in', 'namespace', 'user_id', 'queue_name', 'deleted'] # noqa: E501
1571
+ all_params.append('async_req')
1572
+ all_params.append('_return_http_data_only')
1573
+ all_params.append('_preload_content')
1574
+ all_params.append('_request_timeout')
1575
+
1576
+ params = locals()
1577
+ for key, val in six.iteritems(params['kwargs']):
1578
+ if key not in all_params:
1579
+ raise TypeError(
1580
+ "Got an unexpected keyword argument '%s'"
1581
+ " to method k8_s_cluster_service_list_kubernetes_pods" % key
1582
+ )
1583
+ params[key] = val
1584
+ del params['kwargs']
1585
+ # verify the required parameter 'cluster_id' is set
1586
+ if ('cluster_id' not in params or
1587
+ params['cluster_id'] is None):
1588
+ raise ValueError("Missing the required parameter `cluster_id` when calling `k8_s_cluster_service_list_kubernetes_pods`") # noqa: E501
1589
+
1590
+ collection_formats = {}
1591
+
1592
+ path_params = {}
1593
+ if 'cluster_id' in params:
1594
+ path_params['clusterId'] = params['cluster_id'] # noqa: E501
1595
+
1596
+ query_params = []
1597
+ if 'statuses_in' in params:
1598
+ query_params.append(('statusesIn', params['statuses_in'])) # noqa: E501
1599
+ collection_formats['statusesIn'] = 'multi' # noqa: E501
1600
+ if 'namespace' in params:
1601
+ query_params.append(('namespace', params['namespace'])) # noqa: E501
1602
+ if 'user_id' in params:
1603
+ query_params.append(('userId', params['user_id'])) # noqa: E501
1604
+ if 'queue_name' in params:
1605
+ query_params.append(('queueName', params['queue_name'])) # noqa: E501
1606
+ if 'deleted' in params:
1607
+ query_params.append(('deleted', params['deleted'])) # noqa: E501
1608
+
1609
+ header_params = {}
1610
+
1611
+ form_params = []
1612
+ local_var_files = {}
1613
+
1614
+ body_params = None
1615
+ # HTTP header `Accept`
1616
+ header_params['Accept'] = self.api_client.select_header_accept(
1617
+ ['application/json']) # noqa: E501
1618
+
1619
+ # Authentication setting
1620
+ auth_settings = [] # noqa: E501
1621
+
1622
+ return self.api_client.call_api(
1623
+ '/v1/k8s-clusters/{clusterId}/kubernetes-pods', 'GET',
1624
+ path_params,
1625
+ query_params,
1626
+ header_params,
1627
+ body=body_params,
1628
+ post_params=form_params,
1629
+ files=local_var_files,
1630
+ response_type='V1ListKubernetesPodsResponse', # noqa: E501
1631
+ auth_settings=auth_settings,
1632
+ async_req=params.get('async_req'),
1633
+ _return_http_data_only=params.get('_return_http_data_only'),
1634
+ _preload_content=params.get('_preload_content', True),
1635
+ _request_timeout=params.get('_request_timeout'),
1636
+ collection_formats=collection_formats)
1637
+
1524
1638
  def k8_s_cluster_service_list_kubernetes_templates(self, cluster_id: 'str', **kwargs) -> 'V1ListKubernetesTemplatesResponse': # noqa: E501
1525
1639
  """k8_s_cluster_service_list_kubernetes_templates # noqa: E501
1526
1640
 
@@ -55,6 +55,7 @@ class MarketsServiceApi(object):
55
55
  :param str asset: (required)
56
56
  :param datetime start_date:
57
57
  :param datetime end_date:
58
+ :param int number_of_gpus:
58
59
  :return: V1GetMarketPricingResponse
59
60
  If the method is called asynchronously,
60
61
  returns the request thread.
@@ -78,12 +79,13 @@ class MarketsServiceApi(object):
78
79
  :param str asset: (required)
79
80
  :param datetime start_date:
80
81
  :param datetime end_date:
82
+ :param int number_of_gpus:
81
83
  :return: V1GetMarketPricingResponse
82
84
  If the method is called asynchronously,
83
85
  returns the request thread.
84
86
  """
85
87
 
86
- all_params = ['asset', 'start_date', 'end_date'] # noqa: E501
88
+ all_params = ['asset', 'start_date', 'end_date', 'number_of_gpus'] # noqa: E501
87
89
  all_params.append('async_req')
88
90
  all_params.append('_return_http_data_only')
89
91
  all_params.append('_preload_content')
@@ -114,6 +116,8 @@ class MarketsServiceApi(object):
114
116
  query_params.append(('startDate', params['start_date'])) # noqa: E501
115
117
  if 'end_date' in params:
116
118
  query_params.append(('endDate', params['end_date'])) # noqa: E501
119
+ if 'number_of_gpus' in params:
120
+ query_params.append(('numberOfGpus', params['number_of_gpus'])) # noqa: E501
117
121
 
118
122
  header_params = {}
119
123
 
@@ -1765,7 +1765,7 @@ class OrganizationsServiceApi(object):
1765
1765
  collection_formats=collection_formats)
1766
1766
 
1767
1767
  def organizations_service_list_organizations(self, **kwargs) -> 'V1ListOrganizationsResponse': # noqa: E501
1768
- """TODO: probably a merge with user search API and have a single API to search for anything rpc SearchOrganizations(SearchOrganizationsRequest) returns (SearchOrganizationsResponse) { option (google.api.http) = { get: \"/v1/orgs/search\" }; }; # noqa: E501
1768
+ """organizations_service_list_organizations # noqa: E501
1769
1769
 
1770
1770
  This method makes a synchronous HTTP request by default. To make an
1771
1771
  asynchronous HTTP request, please pass async_req=True
@@ -1786,7 +1786,7 @@ class OrganizationsServiceApi(object):
1786
1786
  return data
1787
1787
 
1788
1788
  def organizations_service_list_organizations_with_http_info(self, **kwargs) -> 'V1ListOrganizationsResponse': # noqa: E501
1789
- """TODO: probably a merge with user search API and have a single API to search for anything rpc SearchOrganizations(SearchOrganizationsRequest) returns (SearchOrganizationsResponse) { option (google.api.http) = { get: \"/v1/orgs/search\" }; }; # noqa: E501
1789
+ """organizations_service_list_organizations # noqa: E501
1790
1790
 
1791
1791
  This method makes a synchronous HTTP request by default. To make an
1792
1792
  asynchronous HTTP request, please pass async_req=True
@@ -1853,6 +1853,103 @@ class OrganizationsServiceApi(object):
1853
1853
  _request_timeout=params.get('_request_timeout'),
1854
1854
  collection_formats=collection_formats)
1855
1855
 
1856
+ def organizations_service_search_organizations(self, **kwargs) -> 'V1ListOrganizationsResponse': # noqa: E501
1857
+ """organizations_service_search_organizations # noqa: E501
1858
+
1859
+ This method makes a synchronous HTTP request by default. To make an
1860
+ asynchronous HTTP request, please pass async_req=True
1861
+ >>> thread = api.organizations_service_search_organizations(async_req=True)
1862
+ >>> result = thread.get()
1863
+
1864
+ :param async_req bool
1865
+ :param str search_query:
1866
+ :param str page_token:
1867
+ :param str page_size:
1868
+ :return: V1ListOrganizationsResponse
1869
+ If the method is called asynchronously,
1870
+ returns the request thread.
1871
+ """
1872
+ kwargs['_return_http_data_only'] = True
1873
+ if kwargs.get('async_req'):
1874
+ return self.organizations_service_search_organizations_with_http_info(**kwargs) # noqa: E501
1875
+ else:
1876
+ (data) = self.organizations_service_search_organizations_with_http_info(**kwargs) # noqa: E501
1877
+ return data
1878
+
1879
+ def organizations_service_search_organizations_with_http_info(self, **kwargs) -> 'V1ListOrganizationsResponse': # noqa: E501
1880
+ """organizations_service_search_organizations # noqa: E501
1881
+
1882
+ This method makes a synchronous HTTP request by default. To make an
1883
+ asynchronous HTTP request, please pass async_req=True
1884
+ >>> thread = api.organizations_service_search_organizations_with_http_info(async_req=True)
1885
+ >>> result = thread.get()
1886
+
1887
+ :param async_req bool
1888
+ :param str search_query:
1889
+ :param str page_token:
1890
+ :param str page_size:
1891
+ :return: V1ListOrganizationsResponse
1892
+ If the method is called asynchronously,
1893
+ returns the request thread.
1894
+ """
1895
+
1896
+ all_params = ['search_query', 'page_token', 'page_size'] # noqa: E501
1897
+ all_params.append('async_req')
1898
+ all_params.append('_return_http_data_only')
1899
+ all_params.append('_preload_content')
1900
+ all_params.append('_request_timeout')
1901
+
1902
+ params = locals()
1903
+ for key, val in six.iteritems(params['kwargs']):
1904
+ if key not in all_params:
1905
+ raise TypeError(
1906
+ "Got an unexpected keyword argument '%s'"
1907
+ " to method organizations_service_search_organizations" % key
1908
+ )
1909
+ params[key] = val
1910
+ del params['kwargs']
1911
+
1912
+ collection_formats = {}
1913
+
1914
+ path_params = {}
1915
+
1916
+ query_params = []
1917
+ if 'search_query' in params:
1918
+ query_params.append(('searchQuery', params['search_query'])) # noqa: E501
1919
+ if 'page_token' in params:
1920
+ query_params.append(('pageToken', params['page_token'])) # noqa: E501
1921
+ if 'page_size' in params:
1922
+ query_params.append(('pageSize', params['page_size'])) # noqa: E501
1923
+
1924
+ header_params = {}
1925
+
1926
+ form_params = []
1927
+ local_var_files = {}
1928
+
1929
+ body_params = None
1930
+ # HTTP header `Accept`
1931
+ header_params['Accept'] = self.api_client.select_header_accept(
1932
+ ['application/json']) # noqa: E501
1933
+
1934
+ # Authentication setting
1935
+ auth_settings = [] # noqa: E501
1936
+
1937
+ return self.api_client.call_api(
1938
+ '/v1/orgs:search', 'GET',
1939
+ path_params,
1940
+ query_params,
1941
+ header_params,
1942
+ body=body_params,
1943
+ post_params=form_params,
1944
+ files=local_var_files,
1945
+ response_type='V1ListOrganizationsResponse', # noqa: E501
1946
+ auth_settings=auth_settings,
1947
+ async_req=params.get('async_req'),
1948
+ _return_http_data_only=params.get('_return_http_data_only'),
1949
+ _preload_content=params.get('_preload_content', True),
1950
+ _request_timeout=params.get('_request_timeout'),
1951
+ collection_formats=collection_formats)
1952
+
1856
1953
  def organizations_service_update_organization(self, body: 'OrgsIdBody', id: 'str', **kwargs) -> 'V1Organization': # noqa: E501
1857
1954
  """Update organization # noqa: E501
1858
1955
 
@@ -1395,6 +1395,7 @@ class ProjectsServiceApi(object):
1395
1395
  :param async_req bool
1396
1396
  :param str organization_id:
1397
1397
  :param bool filter_by_user_id:
1398
+ :param bool guest:
1398
1399
  :return: V1ListMembershipsResponse
1399
1400
  If the method is called asynchronously,
1400
1401
  returns the request thread.
@@ -1417,12 +1418,13 @@ class ProjectsServiceApi(object):
1417
1418
  :param async_req bool
1418
1419
  :param str organization_id:
1419
1420
  :param bool filter_by_user_id:
1421
+ :param bool guest:
1420
1422
  :return: V1ListMembershipsResponse
1421
1423
  If the method is called asynchronously,
1422
1424
  returns the request thread.
1423
1425
  """
1424
1426
 
1425
- all_params = ['organization_id', 'filter_by_user_id'] # noqa: E501
1427
+ all_params = ['organization_id', 'filter_by_user_id', 'guest'] # noqa: E501
1426
1428
  all_params.append('async_req')
1427
1429
  all_params.append('_return_http_data_only')
1428
1430
  all_params.append('_preload_content')
@@ -1447,6 +1449,8 @@ class ProjectsServiceApi(object):
1447
1449
  query_params.append(('organizationId', params['organization_id'])) # noqa: E501
1448
1450
  if 'filter_by_user_id' in params:
1449
1451
  query_params.append(('filterByUserId', params['filter_by_user_id'])) # noqa: E501
1452
+ if 'guest' in params:
1453
+ query_params.append(('guest', params['guest'])) # noqa: E501
1450
1454
 
1451
1455
  header_params = {}
1452
1456
 
@@ -69,6 +69,7 @@ from lightning_sdk.lightning_cloud.openapi.models.dataset_id_visibility_body imp
69
69
  from lightning_sdk.lightning_cloud.openapi.models.datasets_id_body import DatasetsIdBody
70
70
  from lightning_sdk.lightning_cloud.openapi.models.deployment_id_alertingpolicies_body import DeploymentIdAlertingpoliciesBody
71
71
  from lightning_sdk.lightning_cloud.openapi.models.deployment_id_alertingpolicies_body1 import DeploymentIdAlertingpoliciesBody1
72
+ from lightning_sdk.lightning_cloud.openapi.models.deployments_deployment_id_body import DeploymentsDeploymentIdBody
72
73
  from lightning_sdk.lightning_cloud.openapi.models.deployments_id_body import DeploymentsIdBody
73
74
  from lightning_sdk.lightning_cloud.openapi.models.deploymenttemplates_id_body import DeploymenttemplatesIdBody
74
75
  from lightning_sdk.lightning_cloud.openapi.models.endpoints_id_body import EndpointsIdBody
@@ -84,6 +85,7 @@ from lightning_sdk.lightning_cloud.openapi.models.id_artifacts_body import IdArt
84
85
  from lightning_sdk.lightning_cloud.openapi.models.id_codeconfig_body import IdCodeconfigBody
85
86
  from lightning_sdk.lightning_cloud.openapi.models.id_collaborate_body import IdCollaborateBody
86
87
  from lightning_sdk.lightning_cloud.openapi.models.id_contactowner_body import IdContactownerBody
88
+ from lightning_sdk.lightning_cloud.openapi.models.id_content_body import IdContentBody
87
89
  from lightning_sdk.lightning_cloud.openapi.models.id_engage_body import IdEngageBody
88
90
  from lightning_sdk.lightning_cloud.openapi.models.id_engage_body1 import IdEngageBody1
89
91
  from lightning_sdk.lightning_cloud.openapi.models.id_execute_body import IdExecuteBody
@@ -113,6 +115,7 @@ from lightning_sdk.lightning_cloud.openapi.models.id_visibility_body2 import IdV
113
115
  from lightning_sdk.lightning_cloud.openapi.models.incident_id_messages_body import IncidentIdMessagesBody
114
116
  from lightning_sdk.lightning_cloud.openapi.models.incidents_id_body import IncidentsIdBody
115
117
  from lightning_sdk.lightning_cloud.openapi.models.job_id_reportroutingtelemetry_body import JobIdReportroutingtelemetryBody
118
+ from lightning_sdk.lightning_cloud.openapi.models.job_id_systemmetrics_body import JobIdSystemmetricsBody
116
119
  from lightning_sdk.lightning_cloud.openapi.models.jobs_id_body import JobsIdBody
117
120
  from lightning_sdk.lightning_cloud.openapi.models.jobs_id_body1 import JobsIdBody1
118
121
  from lightning_sdk.lightning_cloud.openapi.models.jobs_id_body2 import JobsIdBody2
@@ -321,6 +324,8 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_complete_upload import V1Co
321
324
  from lightning_sdk.lightning_cloud.openapi.models.v1_complete_upload_project_artifact_response import V1CompleteUploadProjectArtifactResponse
322
325
  from lightning_sdk.lightning_cloud.openapi.models.v1_complete_upload_temporary_artifact_request import V1CompleteUploadTemporaryArtifactRequest
323
326
  from lightning_sdk.lightning_cloud.openapi.models.v1_completed_part import V1CompletedPart
327
+ from lightning_sdk.lightning_cloud.openapi.models.v1_compute_cluster_machines import V1ComputeClusterMachines
328
+ from lightning_sdk.lightning_cloud.openapi.models.v1_compute_cluster_request import V1ComputeClusterRequest
324
329
  from lightning_sdk.lightning_cloud.openapi.models.v1_compute_config import V1ComputeConfig
325
330
  from lightning_sdk.lightning_cloud.openapi.models.v1_contact_assistant_owner_reason import V1ContactAssistantOwnerReason
326
331
  from lightning_sdk.lightning_cloud.openapi.models.v1_contact_assistant_owner_response import V1ContactAssistantOwnerResponse
@@ -522,6 +527,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_gcp_data_connection import
522
527
  from lightning_sdk.lightning_cloud.openapi.models.v1_gcp_data_connection_setup import V1GcpDataConnectionSetup
523
528
  from lightning_sdk.lightning_cloud.openapi.models.v1_ge_list_deployment_routing_telemetry_response import V1GeListDeploymentRoutingTelemetryResponse
524
529
  from lightning_sdk.lightning_cloud.openapi.models.v1_generate_ssh_key_pair_request import V1GenerateSSHKeyPairRequest
530
+ from lightning_sdk.lightning_cloud.openapi.models.v1_generic_job import V1GenericJob
525
531
  from lightning_sdk.lightning_cloud.openapi.models.v1_get_affiliate_link_response import V1GetAffiliateLinkResponse
526
532
  from lightning_sdk.lightning_cloud.openapi.models.v1_get_agent_job_env_response import V1GetAgentJobEnvResponse
527
533
  from lightning_sdk.lightning_cloud.openapi.models.v1_get_agent_job_logs_metadata_response import V1GetAgentJobLogsMetadataResponse
@@ -620,6 +626,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_aws_config impor
620
626
  from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_direct_settings_v1 import V1KubernetesDirectSettingsV1
621
627
  from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_direct_v1 import V1KubernetesDirectV1
622
628
  from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_direct_v1_status import V1KubernetesDirectV1Status
629
+ from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_pod import V1KubernetesPod
623
630
  from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_template import V1KubernetesTemplate
624
631
  from lightning_sdk.lightning_cloud.openapi.models.v1_kubernetes_template_property import V1KubernetesTemplateProperty
625
632
  from lightning_sdk.lightning_cloud.openapi.models.v1_lambda_labs_direct_v1 import V1LambdaLabsDirectV1
@@ -648,6 +655,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_list_affiliate_links_respon
648
655
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_agent_job_artifacts_response import V1ListAgentJobArtifactsResponse
649
656
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_agent_jobs_response import V1ListAgentJobsResponse
650
657
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_aggregated_pod_metrics_response import V1ListAggregatedPodMetricsResponse
658
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_all_jobs_response import V1ListAllJobsResponse
651
659
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_assistants_response import V1ListAssistantsResponse
652
660
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_blog_posts_response import V1ListBlogPostsResponse
653
661
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_cloud_space_apps_response import V1ListCloudSpaceAppsResponse
@@ -706,8 +714,11 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_list_incidents_response imp
706
714
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_job_files_response import V1ListJobFilesResponse
707
715
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_job_resources_response import V1ListJobResourcesResponse
708
716
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_jobs_response import V1ListJobsResponse
717
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_jobs_sort_by import V1ListJobsSortBy
718
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_jobs_sort_order import V1ListJobsSortOrder
709
719
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_joinable_organizations_response import V1ListJoinableOrganizationsResponse
710
720
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_kai_scheduler_queues_metrics_response import V1ListKaiSchedulerQueuesMetricsResponse
721
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_kubernetes_pods_response import V1ListKubernetesPodsResponse
711
722
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_kubernetes_templates_response import V1ListKubernetesTemplatesResponse
712
723
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_license_response import V1ListLicenseResponse
713
724
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_lightning_run_response import V1ListLightningRunResponse
@@ -826,6 +837,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_notification_preferences_re
826
837
  from lightning_sdk.lightning_cloud.openapi.models.v1_notification_type import V1NotificationType
827
838
  from lightning_sdk.lightning_cloud.openapi.models.v1_onboarding_event_request import V1OnboardingEventRequest
828
839
  from lightning_sdk.lightning_cloud.openapi.models.v1_onboarding_event_response import V1OnboardingEventResponse
840
+ from lightning_sdk.lightning_cloud.openapi.models.v1_org_deployment_visibility import V1OrgDeploymentVisibility
829
841
  from lightning_sdk.lightning_cloud.openapi.models.v1_org_member import V1OrgMember
830
842
  from lightning_sdk.lightning_cloud.openapi.models.v1_org_membership import V1OrgMembership
831
843
  from lightning_sdk.lightning_cloud.openapi.models.v1_org_membership_role_binding import V1OrgMembershipRoleBinding
@@ -853,6 +865,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_platform_notification impor
853
865
  from lightning_sdk.lightning_cloud.openapi.models.v1_plugin import V1Plugin
854
866
  from lightning_sdk.lightning_cloud.openapi.models.v1_plugins_list_response import V1PluginsListResponse
855
867
  from lightning_sdk.lightning_cloud.openapi.models.v1_pod_metrics import V1PodMetrics
868
+ from lightning_sdk.lightning_cloud.openapi.models.v1_pod_preemption_event import V1PodPreemptionEvent
856
869
  from lightning_sdk.lightning_cloud.openapi.models.v1_post_cloud_space_artifact_events_response import V1PostCloudSpaceArtifactEventsResponse
857
870
  from lightning_sdk.lightning_cloud.openapi.models.v1_presigned_url import V1PresignedUrl
858
871
  from lightning_sdk.lightning_cloud.openapi.models.v1_profiler_capture import V1ProfilerCapture
@@ -895,6 +908,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_render_kubernetes_template_
895
908
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_cloud_space_instance_stop_at_response import V1ReportCloudSpaceInstanceStopAtResponse
896
909
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_cloud_space_instance_system_metrics_response import V1ReportCloudSpaceInstanceSystemMetricsResponse
897
910
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_deployment_routing_telemetry_response import V1ReportDeploymentRoutingTelemetryResponse
911
+ from lightning_sdk.lightning_cloud.openapi.models.v1_report_job_system_metrics_response import V1ReportJobSystemMetricsResponse
898
912
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_k8s_cluster_metrics_response import V1ReportK8sClusterMetricsResponse
899
913
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_logs_activity_response import V1ReportLogsActivityResponse
900
914
  from lightning_sdk.lightning_cloud.openapi.models.v1_report_restart_timings_response import V1ReportRestartTimingsResponse
@@ -1003,6 +1017,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_update_cluster_accelerators
1003
1017
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_cluster_accelerators_response import V1UpdateClusterAcceleratorsResponse
1004
1018
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_cluster_availability_request import V1UpdateClusterAvailabilityRequest
1005
1019
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_conversation_like_response import V1UpdateConversationLikeResponse
1020
+ from lightning_sdk.lightning_cloud.openapi.models.v1_update_conversation_message_content_response import V1UpdateConversationMessageContentResponse
1006
1021
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_conversation_message_like_response import V1UpdateConversationMessageLikeResponse
1007
1022
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_deployment_visibility_response import V1UpdateDeploymentVisibilityResponse
1008
1023
  from lightning_sdk.lightning_cloud.openapi.models.v1_update_index_response import V1UpdateIndexResponse
@@ -48,7 +48,8 @@ class ClusterIdMetricsBody(object):
48
48
  'kai_scheduler_queues_metrics': 'list[V1KaiSchedulerQueueMetrics]',
49
49
  'namespace_metrics': 'list[V1NamespaceMetrics]',
50
50
  'node_metrics': 'list[V1NodeMetrics]',
51
- 'pod_metrics': 'list[V1PodMetrics]'
51
+ 'pod_metrics': 'list[V1PodMetrics]',
52
+ 'pod_preemption_events': 'list[V1PodPreemptionEvent]'
52
53
  }
53
54
 
54
55
  attribute_map = {
@@ -59,10 +60,11 @@ class ClusterIdMetricsBody(object):
59
60
  'kai_scheduler_queues_metrics': 'kaiSchedulerQueuesMetrics',
60
61
  'namespace_metrics': 'namespaceMetrics',
61
62
  'node_metrics': 'nodeMetrics',
62
- 'pod_metrics': 'podMetrics'
63
+ 'pod_metrics': 'podMetrics',
64
+ 'pod_preemption_events': 'podPreemptionEvents'
63
65
  }
64
66
 
65
- def __init__(self, cluster_metrics: 'V1ClusterMetrics' =None, container_metrics: 'list[V1ContainerMetrics]' =None, group_node_metrics: 'list[V1GroupNodeMetrics]' =None, group_pod_metrics: 'list[V1GroupPodMetrics]' =None, kai_scheduler_queues_metrics: 'list[V1KaiSchedulerQueueMetrics]' =None, namespace_metrics: 'list[V1NamespaceMetrics]' =None, node_metrics: 'list[V1NodeMetrics]' =None, pod_metrics: 'list[V1PodMetrics]' =None): # noqa: E501
67
+ def __init__(self, cluster_metrics: 'V1ClusterMetrics' =None, container_metrics: 'list[V1ContainerMetrics]' =None, group_node_metrics: 'list[V1GroupNodeMetrics]' =None, group_pod_metrics: 'list[V1GroupPodMetrics]' =None, kai_scheduler_queues_metrics: 'list[V1KaiSchedulerQueueMetrics]' =None, namespace_metrics: 'list[V1NamespaceMetrics]' =None, node_metrics: 'list[V1NodeMetrics]' =None, pod_metrics: 'list[V1PodMetrics]' =None, pod_preemption_events: 'list[V1PodPreemptionEvent]' =None): # noqa: E501
66
68
  """ClusterIdMetricsBody - a model defined in Swagger""" # noqa: E501
67
69
  self._cluster_metrics = None
68
70
  self._container_metrics = None
@@ -72,6 +74,7 @@ class ClusterIdMetricsBody(object):
72
74
  self._namespace_metrics = None
73
75
  self._node_metrics = None
74
76
  self._pod_metrics = None
77
+ self._pod_preemption_events = None
75
78
  self.discriminator = None
76
79
  if cluster_metrics is not None:
77
80
  self.cluster_metrics = cluster_metrics
@@ -89,6 +92,8 @@ class ClusterIdMetricsBody(object):
89
92
  self.node_metrics = node_metrics
90
93
  if pod_metrics is not None:
91
94
  self.pod_metrics = pod_metrics
95
+ if pod_preemption_events is not None:
96
+ self.pod_preemption_events = pod_preemption_events
92
97
 
93
98
  @property
94
99
  def cluster_metrics(self) -> 'V1ClusterMetrics':
@@ -258,6 +263,27 @@ class ClusterIdMetricsBody(object):
258
263
 
259
264
  self._pod_metrics = pod_metrics
260
265
 
266
+ @property
267
+ def pod_preemption_events(self) -> 'list[V1PodPreemptionEvent]':
268
+ """Gets the pod_preemption_events of this ClusterIdMetricsBody. # noqa: E501
269
+
270
+
271
+ :return: The pod_preemption_events of this ClusterIdMetricsBody. # noqa: E501
272
+ :rtype: list[V1PodPreemptionEvent]
273
+ """
274
+ return self._pod_preemption_events
275
+
276
+ @pod_preemption_events.setter
277
+ def pod_preemption_events(self, pod_preemption_events: 'list[V1PodPreemptionEvent]'):
278
+ """Sets the pod_preemption_events of this ClusterIdMetricsBody.
279
+
280
+
281
+ :param pod_preemption_events: The pod_preemption_events of this ClusterIdMetricsBody. # noqa: E501
282
+ :type: list[V1PodPreemptionEvent]
283
+ """
284
+
285
+ self._pod_preemption_events = pod_preemption_events
286
+
261
287
  def to_dict(self) -> dict:
262
288
  """Returns the model properties as a dict"""
263
289
  result = {}
@@ -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 DeploymentsDeploymentIdBody(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
+ 'allowed_project_ids': 'list[str]',
45
+ 'is_allowed_to_all': 'bool'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'allowed_project_ids': 'allowedProjectIds',
50
+ 'is_allowed_to_all': 'isAllowedToAll'
51
+ }
52
+
53
+ def __init__(self, allowed_project_ids: 'list[str]' =None, is_allowed_to_all: 'bool' =None): # noqa: E501
54
+ """DeploymentsDeploymentIdBody - a model defined in Swagger""" # noqa: E501
55
+ self._allowed_project_ids = None
56
+ self._is_allowed_to_all = None
57
+ self.discriminator = None
58
+ if allowed_project_ids is not None:
59
+ self.allowed_project_ids = allowed_project_ids
60
+ if is_allowed_to_all is not None:
61
+ self.is_allowed_to_all = is_allowed_to_all
62
+
63
+ @property
64
+ def allowed_project_ids(self) -> 'list[str]':
65
+ """Gets the allowed_project_ids of this DeploymentsDeploymentIdBody. # noqa: E501
66
+
67
+
68
+ :return: The allowed_project_ids of this DeploymentsDeploymentIdBody. # noqa: E501
69
+ :rtype: list[str]
70
+ """
71
+ return self._allowed_project_ids
72
+
73
+ @allowed_project_ids.setter
74
+ def allowed_project_ids(self, allowed_project_ids: 'list[str]'):
75
+ """Sets the allowed_project_ids of this DeploymentsDeploymentIdBody.
76
+
77
+
78
+ :param allowed_project_ids: The allowed_project_ids of this DeploymentsDeploymentIdBody. # noqa: E501
79
+ :type: list[str]
80
+ """
81
+
82
+ self._allowed_project_ids = allowed_project_ids
83
+
84
+ @property
85
+ def is_allowed_to_all(self) -> 'bool':
86
+ """Gets the is_allowed_to_all of this DeploymentsDeploymentIdBody. # noqa: E501
87
+
88
+
89
+ :return: The is_allowed_to_all of this DeploymentsDeploymentIdBody. # noqa: E501
90
+ :rtype: bool
91
+ """
92
+ return self._is_allowed_to_all
93
+
94
+ @is_allowed_to_all.setter
95
+ def is_allowed_to_all(self, is_allowed_to_all: 'bool'):
96
+ """Sets the is_allowed_to_all of this DeploymentsDeploymentIdBody.
97
+
98
+
99
+ :param is_allowed_to_all: The is_allowed_to_all of this DeploymentsDeploymentIdBody. # noqa: E501
100
+ :type: bool
101
+ """
102
+
103
+ self._is_allowed_to_all = is_allowed_to_all
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(DeploymentsDeploymentIdBody, 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: 'DeploymentsDeploymentIdBody') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, DeploymentsDeploymentIdBody):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'DeploymentsDeploymentIdBody') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other