lightning-sdk 2025.12.17__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 (99) 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 +195 -33
  4. lightning_sdk/api/teamspace_api.py +28 -9
  5. lightning_sdk/cli/cp/__init__.py +64 -0
  6. lightning_sdk/cli/entrypoint.py +2 -0
  7. lightning_sdk/cli/groups.py +22 -0
  8. lightning_sdk/cli/legacy/clusters_menu.py +2 -2
  9. lightning_sdk/cli/legacy/deploy/_auth.py +7 -6
  10. lightning_sdk/cli/legacy/run.py +13 -2
  11. lightning_sdk/cli/studio/__init__.py +4 -0
  12. lightning_sdk/cli/studio/cp.py +20 -64
  13. lightning_sdk/cli/studio/ls.py +57 -0
  14. lightning_sdk/cli/studio/rm.py +71 -0
  15. lightning_sdk/cli/utils/logging.py +2 -1
  16. lightning_sdk/cli/utils/studio_filesystem.py +65 -0
  17. lightning_sdk/cli/utils/teamspace_selection.py +5 -0
  18. lightning_sdk/exceptions.py +4 -0
  19. lightning_sdk/job/base.py +1 -1
  20. lightning_sdk/k8s_cluster.py +9 -10
  21. lightning_sdk/lightning_cloud/__version__.py +1 -1
  22. lightning_sdk/lightning_cloud/openapi/__init__.py +29 -11
  23. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -1
  24. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +113 -0
  25. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +268 -123
  26. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +246 -19
  27. lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py +116 -11
  28. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +588 -2
  29. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +9 -1
  30. lightning_sdk/lightning_cloud/openapi/api/{kubernetes_virtual_machine_service_api.py → virtual_machine_service_api.py} +82 -82
  31. lightning_sdk/lightning_cloud/openapi/models/__init__.py +28 -10
  32. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_cluster_capacity_reservation_body.py +53 -1
  33. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_machine_body.py +53 -1
  34. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_org_cluster_capacity_reservation_body.py +409 -0
  35. lightning_sdk/lightning_cloud/openapi/models/cluster_service_report_machine_system_metrics_body.py +123 -0
  36. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_create_lit_logger_media_body.py +305 -0
  38. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_lit_logger_media_body.py +149 -0
  39. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_metrics_stream_body.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_reservation_used_by.py +227 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +1 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -27
  46. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +0 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_create_lit_logger_media_response.py +149 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_create_org_cluster_capacity_reservation_response.py +201 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +29 -3
  50. lightning_sdk/lightning_cloud/openapi/models/{v1_ai_pod_v1.py → v1_cudo_direct_v1.py} +51 -51
  51. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_kubernetes_virtual_machine_response.py → v1_delete_lit_logger_media_response.py} +6 -6
  52. lightning_sdk/lightning_cloud/openapi/models/{kubernetes_virtual_machine_service_update_kubernetes_virtual_machine_body.py → v1_delete_virtual_machine_response.py} +6 -6
  53. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -27
  54. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_get_kubernetes_pod_logs_response.py +149 -0
  56. lightning_sdk/lightning_cloud/openapi/models/{v1_get_machine_response.py → v1_get_kubernetes_pod_response.py} +23 -23
  57. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_joinable_organization.py +27 -1
  59. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_setting.py +149 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_type.py +108 -0
  61. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +53 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +53 -1
  63. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +27 -1
  64. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod_logs_page.py +227 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_config.py +53 -1
  66. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +43 -17
  67. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_sort_order.py +104 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_logger_media_response.py +149 -0
  69. lightning_sdk/lightning_cloud/openapi/models/v1_list_models_response.py +55 -3
  70. lightning_sdk/lightning_cloud/openapi/models/{v1_list_kubernetes_virtual_machines_response.py → v1_list_virtual_machines_response.py} +16 -16
  71. lightning_sdk/lightning_cloud/openapi/models/v1_lit_logger_media.py +513 -0
  72. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +27 -53
  73. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +107 -3
  74. lightning_sdk/lightning_cloud/openapi/models/v1_media_type.py +104 -0
  75. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  76. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  77. lightning_sdk/lightning_cloud/openapi/models/v1_report_cloud_space_instance_idle_state_response.py +97 -0
  78. lightning_sdk/lightning_cloud/openapi/models/v1_report_machine_system_metrics_response.py +97 -0
  79. lightning_sdk/lightning_cloud/openapi/models/v1_tenant_credentials.py +201 -0
  80. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +157 -131
  81. lightning_sdk/lightning_cloud/openapi/models/{v1_kubernetes_virtual_machine.py → v1_virtual_machine.py} +94 -68
  82. lightning_sdk/lightning_cloud/openapi/models/{v1_kubevirt_vm_configuration.py → v1_vm_configuration.py} +20 -20
  83. lightning_sdk/lightning_cloud/openapi/models/{v1_kubevirt_provider_configuration.py → v1_vm_provider_configuration.py} +32 -32
  84. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_create_virtual_machine_body.py +565 -0
  85. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_update_virtual_machine_body.py +97 -0
  86. lightning_sdk/lightning_cloud/rest_client.py +0 -2
  87. lightning_sdk/machine.py +3 -3
  88. lightning_sdk/studio.py +14 -4
  89. lightning_sdk/utils/logging.py +2 -1
  90. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/METADATA +1 -5
  91. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/RECORD +95 -75
  92. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/WHEEL +1 -1
  93. lightning_sdk/lightning_cloud/cli/__main__.py +0 -29
  94. lightning_sdk/lightning_cloud/openapi/models/kubernetes_virtual_machine_service_create_kubernetes_virtual_machine_body.py +0 -513
  95. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_vm_resources.py +0 -201
  96. lightning_sdk/lightning_cloud/source_code/logs_socket_api.py +0 -103
  97. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/LICENSE +0 -0
  98. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/entry_points.txt +0 -0
  99. {lightning_sdk-2025.12.17.dist-info → lightning_sdk-2026.1.22.dist-info}/top_level.txt +0 -0
@@ -41,7 +41,6 @@ class V1ExternalClusterSpec(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
- 'ai_pod_v1': 'V1AiPodV1',
45
44
  'auth_token': 'str',
46
45
  'available_accelerators': 'list[str]',
47
46
  'aws_v1': 'V1AWSDirectV1',
@@ -49,6 +48,7 @@ class V1ExternalClusterSpec(object):
49
48
  'cluster_type': 'V1ClusterType',
50
49
  'compute_cluster_ids': 'list[str]',
51
50
  'compute_cluster_request': 'V1ComputeClusterRequest',
51
+ 'cudo_v1': 'V1CudoDirectV1',
52
52
  'deletion_options': 'V1ClusterDeletionOptions',
53
53
  'desired_state': 'V1ClusterState',
54
54
  'domain': 'str',
@@ -77,7 +77,6 @@ class V1ExternalClusterSpec(object):
77
77
  }
78
78
 
79
79
  attribute_map = {
80
- 'ai_pod_v1': 'aiPodV1',
81
80
  'auth_token': 'authToken',
82
81
  'available_accelerators': 'availableAccelerators',
83
82
  'aws_v1': 'awsV1',
@@ -85,6 +84,7 @@ class V1ExternalClusterSpec(object):
85
84
  'cluster_type': 'clusterType',
86
85
  'compute_cluster_ids': 'computeClusterIds',
87
86
  'compute_cluster_request': 'computeClusterRequest',
87
+ 'cudo_v1': 'cudoV1',
88
88
  'deletion_options': 'deletionOptions',
89
89
  'desired_state': 'desiredState',
90
90
  'domain': 'domain',
@@ -112,9 +112,8 @@ class V1ExternalClusterSpec(object):
112
112
  'vultr_v1': 'vultrV1'
113
113
  }
114
114
 
115
- def __init__(self, ai_pod_v1: 'V1AiPodV1' =None, auth_token: 'str' =None, available_accelerators: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cloudflare_v1: 'V1CloudflareV1' =None, cluster_type: 'V1ClusterType' =None, compute_cluster_ids: 'list[str]' =None, compute_cluster_request: 'V1ComputeClusterRequest' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, driver: 'V1CloudProvider' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, kubernetes_v1: 'V1KubernetesDirectV1' =None, lambda_labs_v1: 'V1LambdaLabsDirectV1' =None, lightning_elastic_cluster_v1: 'V1LightningElasticClusterV1' =None, locked_zones: 'list[str]' =None, machine_v1: 'V1MachineDirectV1' =None, monitor_deletion_disabled: 'bool' =None, nebius_v1: 'V1NebiusDirectV1' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, parent_cluster_id: 'str' =None, parent_cluster_type: 'str' =None, pause_automation: 'bool' =None, reservation_details: 'V1ReservationDetails' =None, reserved_capacity_provider: 'bool' =None, reserved_instances_only: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None, voltage_park_v1: 'V1VoltageParkDirectV1' =None, vultr_v1: 'V1VultrDirectV1' =None): # noqa: E501
115
+ def __init__(self, auth_token: 'str' =None, available_accelerators: 'list[str]' =None, aws_v1: 'V1AWSDirectV1' =None, cloudflare_v1: 'V1CloudflareV1' =None, cluster_type: 'V1ClusterType' =None, compute_cluster_ids: 'list[str]' =None, compute_cluster_request: 'V1ComputeClusterRequest' =None, cudo_v1: 'V1CudoDirectV1' =None, deletion_options: 'V1ClusterDeletionOptions' =None, desired_state: 'V1ClusterState' =None, domain: 'str' =None, driver: 'V1CloudProvider' =None, google_cloud_v1: 'V1GoogleCloudDirectV1' =None, kubernetes_v1: 'V1KubernetesDirectV1' =None, lambda_labs_v1: 'V1LambdaLabsDirectV1' =None, lightning_elastic_cluster_v1: 'V1LightningElasticClusterV1' =None, locked_zones: 'list[str]' =None, machine_v1: 'V1MachineDirectV1' =None, monitor_deletion_disabled: 'bool' =None, nebius_v1: 'V1NebiusDirectV1' =None, overprovisioning: 'list[V1InstanceOverprovisioningSpec]' =None, parent_cluster_id: 'str' =None, parent_cluster_type: 'str' =None, pause_automation: 'bool' =None, reservation_details: 'V1ReservationDetails' =None, reserved_capacity_provider: 'bool' =None, reserved_instances_only: 'bool' =None, security_options: 'V1ClusterSecurityOptions' =None, slurm_v1: 'V1SlurmV1' =None, tagging_options: 'V1ClusterTaggingOptions' =None, user_id: 'str' =None, voltage_park_v1: 'V1VoltageParkDirectV1' =None, vultr_v1: 'V1VultrDirectV1' =None): # noqa: E501
116
116
  """V1ExternalClusterSpec - a model defined in Swagger""" # noqa: E501
117
- self._ai_pod_v1 = None
118
117
  self._auth_token = None
119
118
  self._available_accelerators = None
120
119
  self._aws_v1 = None
@@ -122,6 +121,7 @@ class V1ExternalClusterSpec(object):
122
121
  self._cluster_type = None
123
122
  self._compute_cluster_ids = None
124
123
  self._compute_cluster_request = None
124
+ self._cudo_v1 = None
125
125
  self._deletion_options = None
126
126
  self._desired_state = None
127
127
  self._domain = None
@@ -148,8 +148,6 @@ class V1ExternalClusterSpec(object):
148
148
  self._voltage_park_v1 = None
149
149
  self._vultr_v1 = None
150
150
  self.discriminator = None
151
- if ai_pod_v1 is not None:
152
- self.ai_pod_v1 = ai_pod_v1
153
151
  if auth_token is not None:
154
152
  self.auth_token = auth_token
155
153
  if available_accelerators is not None:
@@ -164,6 +162,8 @@ class V1ExternalClusterSpec(object):
164
162
  self.compute_cluster_ids = compute_cluster_ids
165
163
  if compute_cluster_request is not None:
166
164
  self.compute_cluster_request = compute_cluster_request
165
+ if cudo_v1 is not None:
166
+ self.cudo_v1 = cudo_v1
167
167
  if deletion_options is not None:
168
168
  self.deletion_options = deletion_options
169
169
  if desired_state is not None:
@@ -215,27 +215,6 @@ class V1ExternalClusterSpec(object):
215
215
  if vultr_v1 is not None:
216
216
  self.vultr_v1 = vultr_v1
217
217
 
218
- @property
219
- def ai_pod_v1(self) -> 'V1AiPodV1':
220
- """Gets the ai_pod_v1 of this V1ExternalClusterSpec. # noqa: E501
221
-
222
-
223
- :return: The ai_pod_v1 of this V1ExternalClusterSpec. # noqa: E501
224
- :rtype: V1AiPodV1
225
- """
226
- return self._ai_pod_v1
227
-
228
- @ai_pod_v1.setter
229
- def ai_pod_v1(self, ai_pod_v1: 'V1AiPodV1'):
230
- """Sets the ai_pod_v1 of this V1ExternalClusterSpec.
231
-
232
-
233
- :param ai_pod_v1: The ai_pod_v1 of this V1ExternalClusterSpec. # noqa: E501
234
- :type: V1AiPodV1
235
- """
236
-
237
- self._ai_pod_v1 = ai_pod_v1
238
-
239
218
  @property
240
219
  def auth_token(self) -> 'str':
241
220
  """Gets the auth_token of this V1ExternalClusterSpec. # noqa: E501
@@ -383,6 +362,27 @@ class V1ExternalClusterSpec(object):
383
362
 
384
363
  self._compute_cluster_request = compute_cluster_request
385
364
 
365
+ @property
366
+ def cudo_v1(self) -> 'V1CudoDirectV1':
367
+ """Gets the cudo_v1 of this V1ExternalClusterSpec. # noqa: E501
368
+
369
+
370
+ :return: The cudo_v1 of this V1ExternalClusterSpec. # noqa: E501
371
+ :rtype: V1CudoDirectV1
372
+ """
373
+ return self._cudo_v1
374
+
375
+ @cudo_v1.setter
376
+ def cudo_v1(self, cudo_v1: 'V1CudoDirectV1'):
377
+ """Sets the cudo_v1 of this V1ExternalClusterSpec.
378
+
379
+
380
+ :param cudo_v1: The cudo_v1 of this V1ExternalClusterSpec. # noqa: E501
381
+ :type: V1CudoDirectV1
382
+ """
383
+
384
+ self._cudo_v1 = cudo_v1
385
+
386
386
  @property
387
387
  def deletion_options(self) -> 'V1ClusterDeletionOptions':
388
388
  """Gets the deletion_options of this V1ExternalClusterSpec. # noqa: E501
@@ -41,6 +41,7 @@ class V1ExternalSearchUser(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'email': 'str',
44
45
  'first_name': 'str',
45
46
  'id': 'str',
46
47
  'internal': 'bool',
@@ -53,6 +54,7 @@ class V1ExternalSearchUser(object):
53
54
  }
54
55
 
55
56
  attribute_map = {
57
+ 'email': 'email',
56
58
  'first_name': 'firstName',
57
59
  'id': 'id',
58
60
  'internal': 'internal',
@@ -64,8 +66,9 @@ class V1ExternalSearchUser(object):
64
66
  'username': 'username'
65
67
  }
66
68
 
67
- def __init__(self, first_name: 'str' =None, id: 'str' =None, internal: 'bool' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, role: 'str' =None, sb: 'bool' =None, username: 'str' =None): # noqa: E501
69
+ def __init__(self, email: 'str' =None, first_name: 'str' =None, id: 'str' =None, internal: 'bool' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, role: 'str' =None, sb: 'bool' =None, username: 'str' =None): # noqa: E501
68
70
  """V1ExternalSearchUser - a model defined in Swagger""" # noqa: E501
71
+ self._email = None
69
72
  self._first_name = None
70
73
  self._id = None
71
74
  self._internal = None
@@ -76,6 +79,8 @@ class V1ExternalSearchUser(object):
76
79
  self._sb = None
77
80
  self._username = None
78
81
  self.discriminator = None
82
+ if email is not None:
83
+ self.email = email
79
84
  if first_name is not None:
80
85
  self.first_name = first_name
81
86
  if id is not None:
@@ -95,6 +100,27 @@ class V1ExternalSearchUser(object):
95
100
  if username is not None:
96
101
  self.username = username
97
102
 
103
+ @property
104
+ def email(self) -> 'str':
105
+ """Gets the email of this V1ExternalSearchUser. # noqa: E501
106
+
107
+
108
+ :return: The email of this V1ExternalSearchUser. # noqa: E501
109
+ :rtype: str
110
+ """
111
+ return self._email
112
+
113
+ @email.setter
114
+ def email(self, email: 'str'):
115
+ """Sets the email of this V1ExternalSearchUser.
116
+
117
+
118
+ :param email: The email of this V1ExternalSearchUser. # noqa: E501
119
+ :type: str
120
+ """
121
+
122
+ self._email = email
123
+
98
124
  @property
99
125
  def first_name(self) -> 'str':
100
126
  """Gets the first_name of this V1ExternalSearchUser. # noqa: E501
@@ -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 V1GetKubernetesPodLogsResponse(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
+ 'follow_url': 'str',
45
+ 'pages': 'list[V1KubernetesPodLogsPage]'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'follow_url': 'followUrl',
50
+ 'pages': 'pages'
51
+ }
52
+
53
+ def __init__(self, follow_url: 'str' =None, pages: 'list[V1KubernetesPodLogsPage]' =None): # noqa: E501
54
+ """V1GetKubernetesPodLogsResponse - a model defined in Swagger""" # noqa: E501
55
+ self._follow_url = None
56
+ self._pages = None
57
+ self.discriminator = None
58
+ if follow_url is not None:
59
+ self.follow_url = follow_url
60
+ if pages is not None:
61
+ self.pages = pages
62
+
63
+ @property
64
+ def follow_url(self) -> 'str':
65
+ """Gets the follow_url of this V1GetKubernetesPodLogsResponse. # noqa: E501
66
+
67
+
68
+ :return: The follow_url of this V1GetKubernetesPodLogsResponse. # noqa: E501
69
+ :rtype: str
70
+ """
71
+ return self._follow_url
72
+
73
+ @follow_url.setter
74
+ def follow_url(self, follow_url: 'str'):
75
+ """Sets the follow_url of this V1GetKubernetesPodLogsResponse.
76
+
77
+
78
+ :param follow_url: The follow_url of this V1GetKubernetesPodLogsResponse. # noqa: E501
79
+ :type: str
80
+ """
81
+
82
+ self._follow_url = follow_url
83
+
84
+ @property
85
+ def pages(self) -> 'list[V1KubernetesPodLogsPage]':
86
+ """Gets the pages of this V1GetKubernetesPodLogsResponse. # noqa: E501
87
+
88
+
89
+ :return: The pages of this V1GetKubernetesPodLogsResponse. # noqa: E501
90
+ :rtype: list[V1KubernetesPodLogsPage]
91
+ """
92
+ return self._pages
93
+
94
+ @pages.setter
95
+ def pages(self, pages: 'list[V1KubernetesPodLogsPage]'):
96
+ """Sets the pages of this V1GetKubernetesPodLogsResponse.
97
+
98
+
99
+ :param pages: The pages of this V1GetKubernetesPodLogsResponse. # noqa: E501
100
+ :type: list[V1KubernetesPodLogsPage]
101
+ """
102
+
103
+ self._pages = pages
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(V1GetKubernetesPodLogsResponse, 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: 'V1GetKubernetesPodLogsResponse') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, V1GetKubernetesPodLogsResponse):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'V1GetKubernetesPodLogsResponse') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other
@@ -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 V1GetMachineResponse(object):
31
+ class V1GetKubernetesPodResponse(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.
@@ -41,40 +41,40 @@ class V1GetMachineResponse(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
- 'machine': 'V1Machine'
44
+ 'pod': 'V1KubernetesPod'
45
45
  }
46
46
 
47
47
  attribute_map = {
48
- 'machine': 'machine'
48
+ 'pod': 'pod'
49
49
  }
50
50
 
51
- def __init__(self, machine: 'V1Machine' =None): # noqa: E501
52
- """V1GetMachineResponse - a model defined in Swagger""" # noqa: E501
53
- self._machine = None
51
+ def __init__(self, pod: 'V1KubernetesPod' =None): # noqa: E501
52
+ """V1GetKubernetesPodResponse - a model defined in Swagger""" # noqa: E501
53
+ self._pod = None
54
54
  self.discriminator = None
55
- if machine is not None:
56
- self.machine = machine
55
+ if pod is not None:
56
+ self.pod = pod
57
57
 
58
58
  @property
59
- def machine(self) -> 'V1Machine':
60
- """Gets the machine of this V1GetMachineResponse. # noqa: E501
59
+ def pod(self) -> 'V1KubernetesPod':
60
+ """Gets the pod of this V1GetKubernetesPodResponse. # noqa: E501
61
61
 
62
62
 
63
- :return: The machine of this V1GetMachineResponse. # noqa: E501
64
- :rtype: V1Machine
63
+ :return: The pod of this V1GetKubernetesPodResponse. # noqa: E501
64
+ :rtype: V1KubernetesPod
65
65
  """
66
- return self._machine
66
+ return self._pod
67
67
 
68
- @machine.setter
69
- def machine(self, machine: 'V1Machine'):
70
- """Sets the machine of this V1GetMachineResponse.
68
+ @pod.setter
69
+ def pod(self, pod: 'V1KubernetesPod'):
70
+ """Sets the pod of this V1GetKubernetesPodResponse.
71
71
 
72
72
 
73
- :param machine: The machine of this V1GetMachineResponse. # noqa: E501
74
- :type: V1Machine
73
+ :param pod: The pod of this V1GetKubernetesPodResponse. # noqa: E501
74
+ :type: V1KubernetesPod
75
75
  """
76
76
 
77
- self._machine = machine
77
+ self._pod = pod
78
78
 
79
79
  def to_dict(self) -> dict:
80
80
  """Returns the model properties as a dict"""
@@ -97,7 +97,7 @@ class V1GetMachineResponse(object):
97
97
  ))
98
98
  else:
99
99
  result[attr] = value
100
- if issubclass(V1GetMachineResponse, dict):
100
+ if issubclass(V1GetKubernetesPodResponse, dict):
101
101
  for key, value in self.items():
102
102
  result[key] = value
103
103
 
@@ -111,13 +111,13 @@ class V1GetMachineResponse(object):
111
111
  """For `print` and `pprint`"""
112
112
  return self.to_str()
113
113
 
114
- def __eq__(self, other: 'V1GetMachineResponse') -> bool:
114
+ def __eq__(self, other: 'V1GetKubernetesPodResponse') -> bool:
115
115
  """Returns true if both objects are equal"""
116
- if not isinstance(other, V1GetMachineResponse):
116
+ if not isinstance(other, V1GetKubernetesPodResponse):
117
117
  return False
118
118
 
119
119
  return self.__dict__ == other.__dict__
120
120
 
121
- def __ne__(self, other: 'V1GetMachineResponse') -> bool:
121
+ def __ne__(self, other: 'V1GetKubernetesPodResponse') -> bool:
122
122
  """Returns true if both objects are not equal"""
123
123
  return not self == other
@@ -56,6 +56,7 @@ class V1JobSpec(object):
56
56
  'include_credentials': 'bool',
57
57
  'instance_name': 'str',
58
58
  'instance_type': 'str',
59
+ 'machine_id': 'str',
59
60
  'machine_image_version': 'str',
60
61
  'modified_volume': 'bool',
61
62
  'path_mappings': 'list[V1PathMapping]',
@@ -91,6 +92,7 @@ class V1JobSpec(object):
91
92
  'include_credentials': 'includeCredentials',
92
93
  'instance_name': 'instanceName',
93
94
  'instance_type': 'instanceType',
95
+ 'machine_id': 'machineId',
94
96
  'machine_image_version': 'machineImageVersion',
95
97
  'modified_volume': 'modifiedVolume',
96
98
  'path_mappings': 'pathMappings',
@@ -110,7 +112,7 @@ class V1JobSpec(object):
110
112
  'volumes': 'volumes'
111
113
  }
112
114
 
113
- def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, disable_artifacts_persistence: 'bool' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, machine_image_version: 'str' =None, modified_volume: 'bool' =None, path_mappings: 'list[V1PathMapping]' =None, pipeline_id: 'str' =None, quantity: 'int' =None, rank: 'int' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, requested_run_duration_seconds: 'str' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, shutdown_delay_seconds: 'int' =None, shutdown_timeout_seconds: 'int' =None, spot: 'bool' =None, use_tls: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
115
+ def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, disable_artifacts_persistence: 'bool' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, machine_id: 'str' =None, machine_image_version: 'str' =None, modified_volume: 'bool' =None, path_mappings: 'list[V1PathMapping]' =None, pipeline_id: 'str' =None, quantity: 'int' =None, rank: 'int' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, regions: 'list[str]' =None, requested_run_duration_seconds: 'str' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, shutdown_delay_seconds: 'int' =None, shutdown_timeout_seconds: 'int' =None, spot: 'bool' =None, use_tls: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
114
116
  """V1JobSpec - a model defined in Swagger""" # noqa: E501
115
117
  self._artifacts_destination = None
116
118
  self._artifacts_source = None
@@ -127,6 +129,7 @@ class V1JobSpec(object):
127
129
  self._include_credentials = None
128
130
  self._instance_name = None
129
131
  self._instance_type = None
132
+ self._machine_id = None
130
133
  self._machine_image_version = None
131
134
  self._modified_volume = None
132
135
  self._path_mappings = None
@@ -175,6 +178,8 @@ class V1JobSpec(object):
175
178
  self.instance_name = instance_name
176
179
  if instance_type is not None:
177
180
  self.instance_type = instance_type
181
+ if machine_id is not None:
182
+ self.machine_id = machine_id
178
183
  if machine_image_version is not None:
179
184
  self.machine_image_version = machine_image_version
180
185
  if modified_volume is not None:
@@ -531,6 +536,27 @@ class V1JobSpec(object):
531
536
 
532
537
  self._instance_type = instance_type
533
538
 
539
+ @property
540
+ def machine_id(self) -> 'str':
541
+ """Gets the machine_id of this V1JobSpec. # noqa: E501
542
+
543
+
544
+ :return: The machine_id of this V1JobSpec. # noqa: E501
545
+ :rtype: str
546
+ """
547
+ return self._machine_id
548
+
549
+ @machine_id.setter
550
+ def machine_id(self, machine_id: 'str'):
551
+ """Sets the machine_id of this V1JobSpec.
552
+
553
+
554
+ :param machine_id: The machine_id of this V1JobSpec. # noqa: E501
555
+ :type: str
556
+ """
557
+
558
+ self._machine_id = machine_id
559
+
534
560
  @property
535
561
  def machine_image_version(self) -> 'str':
536
562
  """Gets the machine_image_version of this V1JobSpec. # noqa: E501
@@ -49,6 +49,7 @@ class V1JoinableOrganization(object):
49
49
  'location': 'str',
50
50
  'member_count': 'str',
51
51
  'name': 'str',
52
+ 'skip_phone_verification': 'bool',
52
53
  'twitter_username': 'str'
53
54
  }
54
55
 
@@ -61,10 +62,11 @@ class V1JoinableOrganization(object):
61
62
  'location': 'location',
62
63
  'member_count': 'memberCount',
63
64
  'name': 'name',
65
+ 'skip_phone_verification': 'skipPhoneVerification',
64
66
  'twitter_username': 'twitterUsername'
65
67
  }
66
68
 
67
- def __init__(self, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, id: 'str' =None, location: 'str' =None, member_count: 'str' =None, name: 'str' =None, twitter_username: 'str' =None): # noqa: E501
69
+ def __init__(self, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, id: 'str' =None, location: 'str' =None, member_count: 'str' =None, name: 'str' =None, skip_phone_verification: 'bool' =None, twitter_username: 'str' =None): # noqa: E501
68
70
  """V1JoinableOrganization - a model defined in Swagger""" # noqa: E501
69
71
  self._description = None
70
72
  self._display_name = None
@@ -74,6 +76,7 @@ class V1JoinableOrganization(object):
74
76
  self._location = None
75
77
  self._member_count = None
76
78
  self._name = None
79
+ self._skip_phone_verification = None
77
80
  self._twitter_username = None
78
81
  self.discriminator = None
79
82
  if description is not None:
@@ -92,6 +95,8 @@ class V1JoinableOrganization(object):
92
95
  self.member_count = member_count
93
96
  if name is not None:
94
97
  self.name = name
98
+ if skip_phone_verification is not None:
99
+ self.skip_phone_verification = skip_phone_verification
95
100
  if twitter_username is not None:
96
101
  self.twitter_username = twitter_username
97
102
 
@@ -263,6 +268,27 @@ class V1JoinableOrganization(object):
263
268
 
264
269
  self._name = name
265
270
 
271
+ @property
272
+ def skip_phone_verification(self) -> 'bool':
273
+ """Gets the skip_phone_verification of this V1JoinableOrganization. # noqa: E501
274
+
275
+
276
+ :return: The skip_phone_verification of this V1JoinableOrganization. # noqa: E501
277
+ :rtype: bool
278
+ """
279
+ return self._skip_phone_verification
280
+
281
+ @skip_phone_verification.setter
282
+ def skip_phone_verification(self, skip_phone_verification: 'bool'):
283
+ """Sets the skip_phone_verification of this V1JoinableOrganization.
284
+
285
+
286
+ :param skip_phone_verification: The skip_phone_verification of this V1JoinableOrganization. # noqa: E501
287
+ :type: bool
288
+ """
289
+
290
+ self._skip_phone_verification = skip_phone_verification
291
+
266
292
  @property
267
293
  def twitter_username(self) -> 'str':
268
294
  """Gets the twitter_username of this V1JoinableOrganization. # noqa: E501