lightning-sdk 2025.12.16__py3-none-any.whl → 2026.1.22__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. lightning_sdk/__version__.py +1 -1
  2. lightning_sdk/api/k8s_api.py +75 -29
  3. lightning_sdk/api/org_api.py +7 -0
  4. lightning_sdk/api/studio_api.py +223 -36
  5. lightning_sdk/api/teamspace_api.py +28 -9
  6. lightning_sdk/api/user_api.py +5 -0
  7. lightning_sdk/cli/cp/__init__.py +64 -0
  8. lightning_sdk/cli/entrypoint.py +2 -0
  9. lightning_sdk/cli/groups.py +22 -0
  10. lightning_sdk/cli/legacy/clusters_menu.py +2 -2
  11. lightning_sdk/cli/legacy/deploy/_auth.py +7 -6
  12. lightning_sdk/cli/legacy/download.py +2 -1
  13. lightning_sdk/cli/legacy/run.py +13 -2
  14. lightning_sdk/cli/legacy/studios_menu.py +8 -1
  15. lightning_sdk/cli/studio/__init__.py +4 -0
  16. lightning_sdk/cli/studio/cp.py +20 -64
  17. lightning_sdk/cli/studio/ls.py +57 -0
  18. lightning_sdk/cli/studio/rm.py +71 -0
  19. lightning_sdk/cli/utils/logging.py +2 -1
  20. lightning_sdk/cli/utils/studio_filesystem.py +65 -0
  21. lightning_sdk/cli/utils/teamspace_selection.py +5 -0
  22. lightning_sdk/exceptions.py +4 -0
  23. lightning_sdk/job/base.py +24 -5
  24. lightning_sdk/job/job.py +12 -5
  25. lightning_sdk/job/v1.py +5 -2
  26. lightning_sdk/job/v2.py +9 -1
  27. lightning_sdk/k8s_cluster.py +9 -10
  28. lightning_sdk/lightning_cloud/__version__.py +1 -1
  29. lightning_sdk/lightning_cloud/openapi/__init__.py +46 -3
  30. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  31. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +118 -1
  32. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +787 -125
  33. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +5 -1
  34. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +11 -11
  35. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +246 -19
  36. lightning_sdk/lightning_cloud/openapi/api/lightningwork_service_api.py +116 -11
  37. lightning_sdk/lightning_cloud/openapi/api/lit_logger_service_api.py +588 -2
  38. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +9 -1
  39. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +5 -1
  40. lightning_sdk/lightning_cloud/openapi/api/virtual_machine_service_api.py +557 -0
  41. lightning_sdk/lightning_cloud/openapi/models/__init__.py +45 -3
  42. lightning_sdk/lightning_cloud/openapi/models/cloud_space_environment_template_service_update_cloud_space_environment_template_body.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/cluster_service_add_container_registry_body.py +123 -0
  44. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_cluster_capacity_reservation_body.py +53 -1
  45. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_machine_body.py +79 -1
  46. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_org_cluster_capacity_reservation_body.py +409 -0
  47. lightning_sdk/lightning_cloud/openapi/models/cluster_service_refresh_container_registry_credentials_body.py +97 -0
  48. lightning_sdk/lightning_cloud/openapi/models/cluster_service_report_machine_system_metrics_body.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/cluster_service_validate_container_registry_body.py +97 -0
  50. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  51. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_create_lit_logger_media_body.py +305 -0
  52. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_lit_logger_media_body.py +149 -0
  53. lightning_sdk/lightning_cloud/openapi/models/lit_logger_service_update_metrics_stream_body.py +53 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_add_container_registry_response.py +123 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_capacity_reservation_used_by.py +227 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +1 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +27 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_type.py +1 -0
  59. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +1 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  61. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +27 -1
  62. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -27
  63. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_type.py +0 -1
  64. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry.py +253 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_info.py +281 -0
  66. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_integration.py +123 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_status.py +105 -0
  68. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +27 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_create_lit_logger_media_response.py +149 -0
  70. lightning_sdk/lightning_cloud/openapi/models/v1_create_org_cluster_capacity_reservation_response.py +201 -0
  71. lightning_sdk/lightning_cloud/openapi/models/v1_create_sdk_command_history_request.py +29 -3
  72. lightning_sdk/lightning_cloud/openapi/models/v1_cudo_direct_v1.py +175 -0
  73. lightning_sdk/lightning_cloud/openapi/models/v1_delete_container_registry_response.py +97 -0
  74. lightning_sdk/lightning_cloud/openapi/models/v1_delete_lit_logger_media_response.py +97 -0
  75. lightning_sdk/lightning_cloud/openapi/models/v1_delete_virtual_machine_response.py +97 -0
  76. lightning_sdk/lightning_cloud/openapi/models/{v1_ai_pod_v1.py → v1_ecr_registry_config.py} +49 -49
  77. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_config_input.py +123 -0
  78. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_details.py +201 -0
  79. lightning_sdk/lightning_cloud/openapi/models/v1_external_cluster_spec.py +27 -27
  80. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  81. lightning_sdk/lightning_cloud/openapi/models/v1_get_artifacts_page_response.py +29 -3
  82. lightning_sdk/lightning_cloud/openapi/models/v1_get_kubernetes_pod_logs_response.py +149 -0
  83. lightning_sdk/lightning_cloud/openapi/models/{v1_get_machine_response.py → v1_get_kubernetes_pod_response.py} +23 -23
  84. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  85. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  86. lightning_sdk/lightning_cloud/openapi/models/v1_joinable_organization.py +27 -1
  87. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_setting.py +149 -0
  88. lightning_sdk/lightning_cloud/openapi/models/v1_k8s_incident_type.py +108 -0
  89. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_settings_v1.py +53 -1
  90. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +105 -1
  91. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +27 -1
  92. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod_logs_page.py +227 -0
  93. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_config.py +357 -0
  94. lightning_sdk/lightning_cloud/openapi/models/v1_list_container_registries_response.py +123 -0
  95. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +43 -17
  96. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_sort_order.py +104 -0
  97. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_logger_media_response.py +149 -0
  98. lightning_sdk/lightning_cloud/openapi/models/v1_list_models_response.py +55 -3
  99. lightning_sdk/lightning_cloud/openapi/models/v1_list_virtual_machines_response.py +123 -0
  100. lightning_sdk/lightning_cloud/openapi/models/v1_lit_logger_media.py +513 -0
  101. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +53 -53
  102. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +107 -3
  103. lightning_sdk/lightning_cloud/openapi/models/v1_media_type.py +104 -0
  104. lightning_sdk/lightning_cloud/openapi/models/v1_nebius_direct_v1.py +29 -3
  105. lightning_sdk/lightning_cloud/openapi/models/v1_node_metrics.py +27 -1
  106. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +27 -1
  107. lightning_sdk/lightning_cloud/openapi/models/v1_refresh_container_registry_credentials_response.py +123 -0
  108. lightning_sdk/lightning_cloud/openapi/models/v1_report_cloud_space_instance_idle_state_response.py +97 -0
  109. lightning_sdk/lightning_cloud/openapi/models/v1_report_machine_system_metrics_response.py +97 -0
  110. lightning_sdk/lightning_cloud/openapi/models/v1_search_user.py +27 -1
  111. lightning_sdk/lightning_cloud/openapi/models/v1_tenant_credentials.py +201 -0
  112. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +217 -113
  113. lightning_sdk/lightning_cloud/openapi/models/v1_validate_container_registry_response.py +149 -0
  114. lightning_sdk/lightning_cloud/openapi/models/v1_virtual_machine.py +409 -0
  115. lightning_sdk/lightning_cloud/openapi/models/v1_vm_configuration.py +149 -0
  116. lightning_sdk/lightning_cloud/openapi/models/v1_vm_provider_configuration.py +227 -0
  117. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_create_virtual_machine_body.py +565 -0
  118. lightning_sdk/lightning_cloud/openapi/models/virtual_machine_service_update_virtual_machine_body.py +97 -0
  119. lightning_sdk/lightning_cloud/openapi/rest.py +2 -2
  120. lightning_sdk/lightning_cloud/rest_client.py +0 -2
  121. lightning_sdk/machine.py +3 -3
  122. lightning_sdk/mmt/base.py +26 -7
  123. lightning_sdk/mmt/mmt.py +11 -6
  124. lightning_sdk/mmt/v1.py +5 -2
  125. lightning_sdk/mmt/v2.py +5 -2
  126. lightning_sdk/organization.py +10 -1
  127. lightning_sdk/owner.py +4 -0
  128. lightning_sdk/plugin.py +2 -2
  129. lightning_sdk/studio.py +47 -6
  130. lightning_sdk/user.py +22 -2
  131. lightning_sdk/utils/logging.py +2 -1
  132. lightning_sdk/utils/resolve.py +9 -7
  133. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/METADATA +1 -5
  134. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/RECORD +139 -94
  135. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/WHEEL +1 -1
  136. lightning_sdk/lightning_cloud/cli/__main__.py +0 -29
  137. lightning_sdk/lightning_cloud/source_code/logs_socket_api.py +0 -103
  138. /lightning_sdk/lightning_cloud/openapi/models/{v1_list_filesystem_mm_ts_response.py → v1_list_filesystem_mmts_response.py} +0 -0
  139. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/LICENSE +0 -0
  140. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/entry_points.txt +0 -0
  141. {lightning_sdk-2025.12.16.dist-info → lightning_sdk-2026.1.22.dist-info}/top_level.txt +0 -0
@@ -84,6 +84,7 @@ class V1Organization(object):
84
84
  'preferred_deployment_provider': 'str',
85
85
  'preferred_studio_provider': 'str',
86
86
  'show_model_apis_tab': 'bool',
87
+ 'skip_phone_verification': 'bool',
87
88
  'start_studios_on_spot_instance': 'bool',
88
89
  'storage_overuse_bytes': 'str',
89
90
  'storage_overuse_deletion_at': 'datetime',
@@ -139,6 +140,7 @@ class V1Organization(object):
139
140
  'preferred_deployment_provider': 'preferredDeploymentProvider',
140
141
  'preferred_studio_provider': 'preferredStudioProvider',
141
142
  'show_model_apis_tab': 'showModelApisTab',
143
+ 'skip_phone_verification': 'skipPhoneVerification',
142
144
  'start_studios_on_spot_instance': 'startStudiosOnSpotInstance',
143
145
  'storage_overuse_bytes': 'storageOveruseBytes',
144
146
  'storage_overuse_deletion_at': 'storageOveruseDeletionAt',
@@ -150,7 +152,7 @@ class V1Organization(object):
150
152
  'workload_max_run_duration': 'workloadMaxRunDuration'
151
153
  }
152
154
 
153
- def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_budgeting: 'bool' =None, allow_cloud_space_publish: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_guest: 'bool' =None, allow_marketplace: 'bool' =None, allow_member_invitations: 'bool' =None, allow_member_teamspace_creation: 'bool' =None, auto_invite_by_domain: 'bool' =None, auto_join_domain_validations: 'dict(str, V1AutoJoinDomainValidation)' =None, auto_join_domains: 'list[str]' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, auto_switch_machine: 'bool' =None, created_at: 'datetime' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, default_project_id: 'str' =None, description: 'str' =None, disallow_aws_saas: 'bool' =None, disallow_dgx_saas: 'bool' =None, disallow_gcp_saas: 'bool' =None, disallow_lambda_saas: 'bool' =None, disallow_lightning_saas: 'bool' =None, disallow_nebius_saas: 'bool' =None, disallow_voltage_park_saas: 'bool' =None, disallow_vultr_saas: 'bool' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, full_story_end_date: 'datetime' =None, full_story_start_date: 'datetime' =None, general_teamspace: 'bool' =None, id: 'str' =None, last_storage_overuse_notification_sent_at: 'datetime' =None, location: 'str' =None, name: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, show_model_apis_tab: 'bool' =None, start_studios_on_spot_instance: 'bool' =None, storage_overuse_bytes: 'str' =None, storage_overuse_deletion_at: 'datetime' =None, storage_overuse_notification_count: 'int' =None, switch_to_default_machine_on_idle: 'bool' =None, teamspace_default_credits: 'float' =None, twitter_username: 'str' =None, updated_at: 'datetime' =None, workload_max_run_duration: 'str' =None): # noqa: E501
155
+ def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_budgeting: 'bool' =None, allow_cloud_space_publish: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_guest: 'bool' =None, allow_marketplace: 'bool' =None, allow_member_invitations: 'bool' =None, allow_member_teamspace_creation: 'bool' =None, auto_invite_by_domain: 'bool' =None, auto_join_domain_validations: 'dict(str, V1AutoJoinDomainValidation)' =None, auto_join_domains: 'list[str]' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, auto_switch_machine: 'bool' =None, created_at: 'datetime' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, default_project_id: 'str' =None, description: 'str' =None, disallow_aws_saas: 'bool' =None, disallow_dgx_saas: 'bool' =None, disallow_gcp_saas: 'bool' =None, disallow_lambda_saas: 'bool' =None, disallow_lightning_saas: 'bool' =None, disallow_nebius_saas: 'bool' =None, disallow_voltage_park_saas: 'bool' =None, disallow_vultr_saas: 'bool' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, full_story_end_date: 'datetime' =None, full_story_start_date: 'datetime' =None, general_teamspace: 'bool' =None, id: 'str' =None, last_storage_overuse_notification_sent_at: 'datetime' =None, location: 'str' =None, name: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, show_model_apis_tab: 'bool' =None, skip_phone_verification: 'bool' =None, start_studios_on_spot_instance: 'bool' =None, storage_overuse_bytes: 'str' =None, storage_overuse_deletion_at: 'datetime' =None, storage_overuse_notification_count: 'int' =None, switch_to_default_machine_on_idle: 'bool' =None, teamspace_default_credits: 'float' =None, twitter_username: 'str' =None, updated_at: 'datetime' =None, workload_max_run_duration: 'str' =None): # noqa: E501
154
156
  """V1Organization - a model defined in Swagger""" # noqa: E501
155
157
  self._alerts_config = None
156
158
  self._allow_budgeting = None
@@ -195,6 +197,7 @@ class V1Organization(object):
195
197
  self._preferred_deployment_provider = None
196
198
  self._preferred_studio_provider = None
197
199
  self._show_model_apis_tab = None
200
+ self._skip_phone_verification = None
198
201
  self._start_studios_on_spot_instance = None
199
202
  self._storage_overuse_bytes = None
200
203
  self._storage_overuse_deletion_at = None
@@ -291,6 +294,8 @@ class V1Organization(object):
291
294
  self.preferred_studio_provider = preferred_studio_provider
292
295
  if show_model_apis_tab is not None:
293
296
  self.show_model_apis_tab = show_model_apis_tab
297
+ if skip_phone_verification is not None:
298
+ self.skip_phone_verification = skip_phone_verification
294
299
  if start_studios_on_spot_instance is not None:
295
300
  self.start_studios_on_spot_instance = start_studios_on_spot_instance
296
301
  if storage_overuse_bytes is not None:
@@ -1215,6 +1220,27 @@ class V1Organization(object):
1215
1220
 
1216
1221
  self._show_model_apis_tab = show_model_apis_tab
1217
1222
 
1223
+ @property
1224
+ def skip_phone_verification(self) -> 'bool':
1225
+ """Gets the skip_phone_verification of this V1Organization. # noqa: E501
1226
+
1227
+
1228
+ :return: The skip_phone_verification of this V1Organization. # noqa: E501
1229
+ :rtype: bool
1230
+ """
1231
+ return self._skip_phone_verification
1232
+
1233
+ @skip_phone_verification.setter
1234
+ def skip_phone_verification(self, skip_phone_verification: 'bool'):
1235
+ """Sets the skip_phone_verification of this V1Organization.
1236
+
1237
+
1238
+ :param skip_phone_verification: The skip_phone_verification of this V1Organization. # noqa: E501
1239
+ :type: bool
1240
+ """
1241
+
1242
+ self._skip_phone_verification = skip_phone_verification
1243
+
1218
1244
  @property
1219
1245
  def start_studios_on_spot_instance(self) -> 'bool':
1220
1246
  """Gets the start_studios_on_spot_instance of this V1Organization. # noqa: E501
@@ -0,0 +1,123 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class V1RefreshContainerRegistryCredentialsResponse(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
+ 'refreshed_at': 'datetime'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'refreshed_at': 'refreshedAt'
49
+ }
50
+
51
+ def __init__(self, refreshed_at: 'datetime' =None): # noqa: E501
52
+ """V1RefreshContainerRegistryCredentialsResponse - a model defined in Swagger""" # noqa: E501
53
+ self._refreshed_at = None
54
+ self.discriminator = None
55
+ if refreshed_at is not None:
56
+ self.refreshed_at = refreshed_at
57
+
58
+ @property
59
+ def refreshed_at(self) -> 'datetime':
60
+ """Gets the refreshed_at of this V1RefreshContainerRegistryCredentialsResponse. # noqa: E501
61
+
62
+
63
+ :return: The refreshed_at of this V1RefreshContainerRegistryCredentialsResponse. # noqa: E501
64
+ :rtype: datetime
65
+ """
66
+ return self._refreshed_at
67
+
68
+ @refreshed_at.setter
69
+ def refreshed_at(self, refreshed_at: 'datetime'):
70
+ """Sets the refreshed_at of this V1RefreshContainerRegistryCredentialsResponse.
71
+
72
+
73
+ :param refreshed_at: The refreshed_at of this V1RefreshContainerRegistryCredentialsResponse. # noqa: E501
74
+ :type: datetime
75
+ """
76
+
77
+ self._refreshed_at = refreshed_at
78
+
79
+ def to_dict(self) -> dict:
80
+ """Returns the model properties as a dict"""
81
+ result = {}
82
+
83
+ for attr, _ in six.iteritems(self.swagger_types):
84
+ value = getattr(self, attr)
85
+ if isinstance(value, list):
86
+ result[attr] = list(map(
87
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
88
+ value
89
+ ))
90
+ elif hasattr(value, "to_dict"):
91
+ result[attr] = value.to_dict()
92
+ elif isinstance(value, dict):
93
+ result[attr] = dict(map(
94
+ lambda item: (item[0], item[1].to_dict())
95
+ if hasattr(item[1], "to_dict") else item,
96
+ value.items()
97
+ ))
98
+ else:
99
+ result[attr] = value
100
+ if issubclass(V1RefreshContainerRegistryCredentialsResponse, dict):
101
+ for key, value in self.items():
102
+ result[key] = value
103
+
104
+ return result
105
+
106
+ def to_str(self) -> str:
107
+ """Returns the string representation of the model"""
108
+ return pprint.pformat(self.to_dict())
109
+
110
+ def __repr__(self) -> str:
111
+ """For `print` and `pprint`"""
112
+ return self.to_str()
113
+
114
+ def __eq__(self, other: 'V1RefreshContainerRegistryCredentialsResponse') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, V1RefreshContainerRegistryCredentialsResponse):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'V1RefreshContainerRegistryCredentialsResponse') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -0,0 +1,97 @@
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 V1ReportCloudSpaceInstanceIdleStateResponse(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
+ }
45
+
46
+ attribute_map = {
47
+ }
48
+
49
+ def __init__(self): # noqa: E501
50
+ """V1ReportCloudSpaceInstanceIdleStateResponse - a model defined in Swagger""" # noqa: E501
51
+ self.discriminator = None
52
+
53
+ def to_dict(self) -> dict:
54
+ """Returns the model properties as a dict"""
55
+ result = {}
56
+
57
+ for attr, _ in six.iteritems(self.swagger_types):
58
+ value = getattr(self, attr)
59
+ if isinstance(value, list):
60
+ result[attr] = list(map(
61
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
62
+ value
63
+ ))
64
+ elif hasattr(value, "to_dict"):
65
+ result[attr] = value.to_dict()
66
+ elif isinstance(value, dict):
67
+ result[attr] = dict(map(
68
+ lambda item: (item[0], item[1].to_dict())
69
+ if hasattr(item[1], "to_dict") else item,
70
+ value.items()
71
+ ))
72
+ else:
73
+ result[attr] = value
74
+ if issubclass(V1ReportCloudSpaceInstanceIdleStateResponse, dict):
75
+ for key, value in self.items():
76
+ result[key] = value
77
+
78
+ return result
79
+
80
+ def to_str(self) -> str:
81
+ """Returns the string representation of the model"""
82
+ return pprint.pformat(self.to_dict())
83
+
84
+ def __repr__(self) -> str:
85
+ """For `print` and `pprint`"""
86
+ return self.to_str()
87
+
88
+ def __eq__(self, other: 'V1ReportCloudSpaceInstanceIdleStateResponse') -> bool:
89
+ """Returns true if both objects are equal"""
90
+ if not isinstance(other, V1ReportCloudSpaceInstanceIdleStateResponse):
91
+ return False
92
+
93
+ return self.__dict__ == other.__dict__
94
+
95
+ def __ne__(self, other: 'V1ReportCloudSpaceInstanceIdleStateResponse') -> bool:
96
+ """Returns true if both objects are not equal"""
97
+ return not self == other
@@ -0,0 +1,97 @@
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 V1ReportMachineSystemMetricsResponse(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
+ }
45
+
46
+ attribute_map = {
47
+ }
48
+
49
+ def __init__(self): # noqa: E501
50
+ """V1ReportMachineSystemMetricsResponse - a model defined in Swagger""" # noqa: E501
51
+ self.discriminator = None
52
+
53
+ def to_dict(self) -> dict:
54
+ """Returns the model properties as a dict"""
55
+ result = {}
56
+
57
+ for attr, _ in six.iteritems(self.swagger_types):
58
+ value = getattr(self, attr)
59
+ if isinstance(value, list):
60
+ result[attr] = list(map(
61
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
62
+ value
63
+ ))
64
+ elif hasattr(value, "to_dict"):
65
+ result[attr] = value.to_dict()
66
+ elif isinstance(value, dict):
67
+ result[attr] = dict(map(
68
+ lambda item: (item[0], item[1].to_dict())
69
+ if hasattr(item[1], "to_dict") else item,
70
+ value.items()
71
+ ))
72
+ else:
73
+ result[attr] = value
74
+ if issubclass(V1ReportMachineSystemMetricsResponse, dict):
75
+ for key, value in self.items():
76
+ result[key] = value
77
+
78
+ return result
79
+
80
+ def to_str(self) -> str:
81
+ """Returns the string representation of the model"""
82
+ return pprint.pformat(self.to_dict())
83
+
84
+ def __repr__(self) -> str:
85
+ """For `print` and `pprint`"""
86
+ return self.to_str()
87
+
88
+ def __eq__(self, other: 'V1ReportMachineSystemMetricsResponse') -> bool:
89
+ """Returns true if both objects are equal"""
90
+ if not isinstance(other, V1ReportMachineSystemMetricsResponse):
91
+ return False
92
+
93
+ return self.__dict__ == other.__dict__
94
+
95
+ def __ne__(self, other: 'V1ReportMachineSystemMetricsResponse') -> bool:
96
+ """Returns true if both objects are not equal"""
97
+ return not self == other
@@ -46,6 +46,7 @@ class V1SearchUser(object):
46
46
  'email': 'str',
47
47
  'first_name': 'str',
48
48
  'id': 'str',
49
+ 'internal': 'bool',
49
50
  'last_name': 'str',
50
51
  'organization': 'str',
51
52
  'picture_url': 'str',
@@ -61,6 +62,7 @@ class V1SearchUser(object):
61
62
  'email': 'email',
62
63
  'first_name': 'firstName',
63
64
  'id': 'id',
65
+ 'internal': 'internal',
64
66
  'last_name': 'lastName',
65
67
  'organization': 'organization',
66
68
  'picture_url': 'pictureUrl',
@@ -70,13 +72,14 @@ class V1SearchUser(object):
70
72
  'website': 'website'
71
73
  }
72
74
 
73
- def __init__(self, auth_provider: 'str' =None, country: 'str' =None, email: 'str' =None, first_name: 'str' =None, id: 'str' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, project_memberships: 'list[str]' =None, role: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
75
+ def __init__(self, auth_provider: 'str' =None, country: 'str' =None, email: 'str' =None, first_name: 'str' =None, id: 'str' =None, internal: 'bool' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, project_memberships: 'list[str]' =None, role: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
74
76
  """V1SearchUser - a model defined in Swagger""" # noqa: E501
75
77
  self._auth_provider = None
76
78
  self._country = None
77
79
  self._email = None
78
80
  self._first_name = None
79
81
  self._id = None
82
+ self._internal = None
80
83
  self._last_name = None
81
84
  self._organization = None
82
85
  self._picture_url = None
@@ -95,6 +98,8 @@ class V1SearchUser(object):
95
98
  self.first_name = first_name
96
99
  if id is not None:
97
100
  self.id = id
101
+ if internal is not None:
102
+ self.internal = internal
98
103
  if last_name is not None:
99
104
  self.last_name = last_name
100
105
  if organization is not None:
@@ -215,6 +220,27 @@ class V1SearchUser(object):
215
220
 
216
221
  self._id = id
217
222
 
223
+ @property
224
+ def internal(self) -> 'bool':
225
+ """Gets the internal of this V1SearchUser. # noqa: E501
226
+
227
+
228
+ :return: The internal of this V1SearchUser. # noqa: E501
229
+ :rtype: bool
230
+ """
231
+ return self._internal
232
+
233
+ @internal.setter
234
+ def internal(self, internal: 'bool'):
235
+ """Sets the internal of this V1SearchUser.
236
+
237
+
238
+ :param internal: The internal of this V1SearchUser. # noqa: E501
239
+ :type: bool
240
+ """
241
+
242
+ self._internal = internal
243
+
218
244
  @property
219
245
  def last_name(self) -> 'str':
220
246
  """Gets the last_name of this V1SearchUser. # noqa: E501
@@ -0,0 +1,201 @@
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 V1TenantCredentials(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
+ 'credentials_encoded_json': 'str',
45
+ 'project_id': 'str',
46
+ 'region': 'str',
47
+ 'vpc_subnet_id': 'str'
48
+ }
49
+
50
+ attribute_map = {
51
+ 'credentials_encoded_json': 'credentialsEncodedJson',
52
+ 'project_id': 'projectId',
53
+ 'region': 'region',
54
+ 'vpc_subnet_id': 'vpcSubnetId'
55
+ }
56
+
57
+ def __init__(self, credentials_encoded_json: 'str' =None, project_id: 'str' =None, region: 'str' =None, vpc_subnet_id: 'str' =None): # noqa: E501
58
+ """V1TenantCredentials - a model defined in Swagger""" # noqa: E501
59
+ self._credentials_encoded_json = None
60
+ self._project_id = None
61
+ self._region = None
62
+ self._vpc_subnet_id = None
63
+ self.discriminator = None
64
+ if credentials_encoded_json is not None:
65
+ self.credentials_encoded_json = credentials_encoded_json
66
+ if project_id is not None:
67
+ self.project_id = project_id
68
+ if region is not None:
69
+ self.region = region
70
+ if vpc_subnet_id is not None:
71
+ self.vpc_subnet_id = vpc_subnet_id
72
+
73
+ @property
74
+ def credentials_encoded_json(self) -> 'str':
75
+ """Gets the credentials_encoded_json of this V1TenantCredentials. # noqa: E501
76
+
77
+
78
+ :return: The credentials_encoded_json of this V1TenantCredentials. # noqa: E501
79
+ :rtype: str
80
+ """
81
+ return self._credentials_encoded_json
82
+
83
+ @credentials_encoded_json.setter
84
+ def credentials_encoded_json(self, credentials_encoded_json: 'str'):
85
+ """Sets the credentials_encoded_json of this V1TenantCredentials.
86
+
87
+
88
+ :param credentials_encoded_json: The credentials_encoded_json of this V1TenantCredentials. # noqa: E501
89
+ :type: str
90
+ """
91
+
92
+ self._credentials_encoded_json = credentials_encoded_json
93
+
94
+ @property
95
+ def project_id(self) -> 'str':
96
+ """Gets the project_id of this V1TenantCredentials. # noqa: E501
97
+
98
+
99
+ :return: The project_id of this V1TenantCredentials. # noqa: E501
100
+ :rtype: str
101
+ """
102
+ return self._project_id
103
+
104
+ @project_id.setter
105
+ def project_id(self, project_id: 'str'):
106
+ """Sets the project_id of this V1TenantCredentials.
107
+
108
+
109
+ :param project_id: The project_id of this V1TenantCredentials. # noqa: E501
110
+ :type: str
111
+ """
112
+
113
+ self._project_id = project_id
114
+
115
+ @property
116
+ def region(self) -> 'str':
117
+ """Gets the region of this V1TenantCredentials. # noqa: E501
118
+
119
+
120
+ :return: The region of this V1TenantCredentials. # noqa: E501
121
+ :rtype: str
122
+ """
123
+ return self._region
124
+
125
+ @region.setter
126
+ def region(self, region: 'str'):
127
+ """Sets the region of this V1TenantCredentials.
128
+
129
+
130
+ :param region: The region of this V1TenantCredentials. # noqa: E501
131
+ :type: str
132
+ """
133
+
134
+ self._region = region
135
+
136
+ @property
137
+ def vpc_subnet_id(self) -> 'str':
138
+ """Gets the vpc_subnet_id of this V1TenantCredentials. # noqa: E501
139
+
140
+
141
+ :return: The vpc_subnet_id of this V1TenantCredentials. # noqa: E501
142
+ :rtype: str
143
+ """
144
+ return self._vpc_subnet_id
145
+
146
+ @vpc_subnet_id.setter
147
+ def vpc_subnet_id(self, vpc_subnet_id: 'str'):
148
+ """Sets the vpc_subnet_id of this V1TenantCredentials.
149
+
150
+
151
+ :param vpc_subnet_id: The vpc_subnet_id of this V1TenantCredentials. # noqa: E501
152
+ :type: str
153
+ """
154
+
155
+ self._vpc_subnet_id = vpc_subnet_id
156
+
157
+ def to_dict(self) -> dict:
158
+ """Returns the model properties as a dict"""
159
+ result = {}
160
+
161
+ for attr, _ in six.iteritems(self.swagger_types):
162
+ value = getattr(self, attr)
163
+ if isinstance(value, list):
164
+ result[attr] = list(map(
165
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
166
+ value
167
+ ))
168
+ elif hasattr(value, "to_dict"):
169
+ result[attr] = value.to_dict()
170
+ elif isinstance(value, dict):
171
+ result[attr] = dict(map(
172
+ lambda item: (item[0], item[1].to_dict())
173
+ if hasattr(item[1], "to_dict") else item,
174
+ value.items()
175
+ ))
176
+ else:
177
+ result[attr] = value
178
+ if issubclass(V1TenantCredentials, dict):
179
+ for key, value in self.items():
180
+ result[key] = value
181
+
182
+ return result
183
+
184
+ def to_str(self) -> str:
185
+ """Returns the string representation of the model"""
186
+ return pprint.pformat(self.to_dict())
187
+
188
+ def __repr__(self) -> str:
189
+ """For `print` and `pprint`"""
190
+ return self.to_str()
191
+
192
+ def __eq__(self, other: 'V1TenantCredentials') -> bool:
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, V1TenantCredentials):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other: 'V1TenantCredentials') -> bool:
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other