lightning-sdk 2025.8.8__py3-none-any.whl → 2025.8.14__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lightning_sdk/__init__.py +1 -1
- lightning_sdk/api/studio_api.py +26 -4
- lightning_sdk/job/base.py +12 -5
- lightning_sdk/lightning_cloud/openapi/__init__.py +7 -0
- lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +5 -1
- lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +113 -0
- lightning_sdk/lightning_cloud/openapi/api/cloudy_service_api.py +0 -97
- lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +339 -0
- lightning_sdk/lightning_cloud/openapi/models/__init__.py +7 -0
- lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/create.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/id_sleepconfig_body.py +175 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_billing_tier.py +0 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_transfer_metadata.py +69 -17
- lightning_sdk/lightning_cloud/openapi/models/v1_cluster_metrics.py +53 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +1 -27
- lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +29 -3
- lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_metrics_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_metrics_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_list_cluster_namespace_user_metrics_response.py +123 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_lustre_data_connection.py +149 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +1 -27
- lightning_sdk/lightning_cloud/openapi/models/v1_namespace_metrics.py +591 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_namespace_user_metrics.py +435 -0
- lightning_sdk/lightning_cloud/openapi/models/v1_pod_metrics.py +55 -3
- lightning_sdk/lightning_cloud/openapi/models/v1_storage_asset.py +27 -1
- lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +1 -27
- lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +27 -79
- lightning_sdk/llm/llm.py +67 -37
- lightning_sdk/llm/public_assistants.py +3 -3
- lightning_sdk/studio.py +11 -3
- lightning_sdk/utils/resolve.py +13 -0
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/METADATA +1 -1
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/RECORD +41 -34
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/LICENSE +0 -0
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/WHEEL +0 -0
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/entry_points.txt +0 -0
- {lightning_sdk-2025.8.8.dist-info → lightning_sdk-2025.8.14.dist-info}/top_level.txt +0 -0
lightning_sdk/__init__.py
CHANGED
lightning_sdk/api/studio_api.py
CHANGED
|
@@ -253,8 +253,25 @@ class StudioApi:
|
|
|
253
253
|
)
|
|
254
254
|
|
|
255
255
|
# Wait until it's time to switch
|
|
256
|
+
requested_was_found = False
|
|
257
|
+
startup_status = None
|
|
256
258
|
while True:
|
|
257
|
-
|
|
259
|
+
status = self.get_studio_status(studio_id, teamspace_id)
|
|
260
|
+
requested_machine = status.requested
|
|
261
|
+
|
|
262
|
+
if requested_machine is not None:
|
|
263
|
+
requested_was_found = True
|
|
264
|
+
startup_status = requested_machine.startup_status
|
|
265
|
+
|
|
266
|
+
# if the requested machine was found in the past, use the in_use status instead.
|
|
267
|
+
# it might be that it either was cancelled or it actually is ready.
|
|
268
|
+
# Either way, since we're actually blocking below for the in use startup status
|
|
269
|
+
# it's safe to switch at this point
|
|
270
|
+
elif requested_was_found:
|
|
271
|
+
in_use_machine = status.in_use
|
|
272
|
+
if in_use_machine is not None:
|
|
273
|
+
startup_status = in_use_machine.startup_status
|
|
274
|
+
|
|
258
275
|
if startup_status and startup_status.initial_restore_finished:
|
|
259
276
|
break
|
|
260
277
|
time.sleep(1)
|
|
@@ -263,7 +280,10 @@ class StudioApi:
|
|
|
263
280
|
|
|
264
281
|
# Wait until the new machine is ready to use
|
|
265
282
|
while True:
|
|
266
|
-
|
|
283
|
+
in_use = self.get_studio_status(studio_id, teamspace_id).in_use
|
|
284
|
+
if in_use is None:
|
|
285
|
+
continue
|
|
286
|
+
startup_status = in_use.startup_status
|
|
267
287
|
if startup_status and startup_status.top_up_restore_finished:
|
|
268
288
|
break
|
|
269
289
|
time.sleep(1)
|
|
@@ -441,7 +461,9 @@ class StudioApi:
|
|
|
441
461
|
body=body,
|
|
442
462
|
)
|
|
443
463
|
|
|
444
|
-
def duplicate_studio(
|
|
464
|
+
def duplicate_studio(
|
|
465
|
+
self, studio_id: str, teamspace_id: str, target_teamspace_id: str, machine: Machine = Machine.CPU
|
|
466
|
+
) -> Dict[str, Any]:
|
|
445
467
|
"""Duplicates the given Studio from a given Teamspace into a given target Teamspace."""
|
|
446
468
|
target_teamspace = self._client.projects_service_get_project(target_teamspace_id)
|
|
447
469
|
init_kwargs = {}
|
|
@@ -464,7 +486,7 @@ class StudioApi:
|
|
|
464
486
|
init_kwargs["name"] = new_cloudspace.name
|
|
465
487
|
init_kwargs["teamspace"] = target_teamspace.name
|
|
466
488
|
|
|
467
|
-
self.start_studio(new_cloudspace.id, target_teamspace_id,
|
|
489
|
+
self.start_studio(new_cloudspace.id, target_teamspace_id, machine, False, None)
|
|
468
490
|
return init_kwargs
|
|
469
491
|
|
|
470
492
|
def delete_studio(self, studio_id: str, teamspace_id: str) -> None:
|
lightning_sdk/job/base.py
CHANGED
|
@@ -4,7 +4,7 @@ from typing import TYPE_CHECKING, Any, Dict, Optional, TypedDict, Union
|
|
|
4
4
|
|
|
5
5
|
from lightning_sdk.api.cloud_account_api import CloudAccountApi
|
|
6
6
|
from lightning_sdk.api.utils import _get_cloud_url
|
|
7
|
-
from lightning_sdk.utils.resolve import _resolve_deprecated_cluster, _resolve_teamspace, in_studio
|
|
7
|
+
from lightning_sdk.utils.resolve import _resolve_deprecated_cluster, _resolve_teamspace, in_studio, skip_studio_setup
|
|
8
8
|
|
|
9
9
|
if TYPE_CHECKING:
|
|
10
10
|
from lightning_sdk.machine import CloudProvider, Machine
|
|
@@ -145,9 +145,15 @@ class _BaseJob(ABC):
|
|
|
145
145
|
|
|
146
146
|
if image is None:
|
|
147
147
|
if not isinstance(studio, Studio):
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
148
|
+
with skip_studio_setup():
|
|
149
|
+
studio = Studio(
|
|
150
|
+
name=studio,
|
|
151
|
+
teamspace=teamspace,
|
|
152
|
+
org=org,
|
|
153
|
+
user=user,
|
|
154
|
+
cloud_account=cloud_account,
|
|
155
|
+
create_ok=False,
|
|
156
|
+
)
|
|
151
157
|
|
|
152
158
|
# studio is a Studio instance at this point
|
|
153
159
|
if teamspace is None:
|
|
@@ -192,7 +198,8 @@ class _BaseJob(ABC):
|
|
|
192
198
|
)
|
|
193
199
|
if cloud_account is None and in_studio():
|
|
194
200
|
try:
|
|
195
|
-
|
|
201
|
+
with skip_studio_setup():
|
|
202
|
+
resolve_studio = Studio(teamspace=teamspace, user=user, org=org)
|
|
196
203
|
cloud_account = resolve_studio.cloud_account
|
|
197
204
|
except (ValueError, ApiException):
|
|
198
205
|
warnings.warn("Could not infer cloud account from studio. Using teamspace default.")
|
|
@@ -148,6 +148,7 @@ from lightning_sdk.lightning_cloud.openapi.models.id_publications_body1 import I
|
|
|
148
148
|
from lightning_sdk.lightning_cloud.openapi.models.id_release_body import IdReleaseBody
|
|
149
149
|
from lightning_sdk.lightning_cloud.openapi.models.id_reportlogsactivity_body import IdReportlogsactivityBody
|
|
150
150
|
from lightning_sdk.lightning_cloud.openapi.models.id_reportrestarttimings_body import IdReportrestarttimingsBody
|
|
151
|
+
from lightning_sdk.lightning_cloud.openapi.models.id_sleepconfig_body import IdSleepconfigBody
|
|
151
152
|
from lightning_sdk.lightning_cloud.openapi.models.id_start_body import IdStartBody
|
|
152
153
|
from lightning_sdk.lightning_cloud.openapi.models.id_transfer_body import IdTransferBody
|
|
153
154
|
from lightning_sdk.lightning_cloud.openapi.models.id_uploads_body import IdUploadsBody
|
|
@@ -654,6 +655,9 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_list_cloudy_experts_respons
|
|
|
654
655
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_accelerators_response import V1ListClusterAcceleratorsResponse
|
|
655
656
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_availabilities_response import V1ListClusterAvailabilitiesResponse
|
|
656
657
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_capacity_reservations_response import V1ListClusterCapacityReservationsResponse
|
|
658
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_metrics_response import V1ListClusterMetricsResponse
|
|
659
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_namespace_metrics_response import V1ListClusterNamespaceMetricsResponse
|
|
660
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_namespace_user_metrics_response import V1ListClusterNamespaceUserMetricsResponse
|
|
657
661
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_proxies_response import V1ListClusterProxiesResponse
|
|
658
662
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_cluster_usage_restrictions_response import V1ListClusterUsageRestrictionsResponse
|
|
659
663
|
from lightning_sdk.lightning_cloud.openapi.models.v1_list_clusters_response import V1ListClustersResponse
|
|
@@ -753,6 +757,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_login_response import V1Log
|
|
|
753
757
|
from lightning_sdk.lightning_cloud.openapi.models.v1_logout_request import V1LogoutRequest
|
|
754
758
|
from lightning_sdk.lightning_cloud.openapi.models.v1_logout_response import V1LogoutResponse
|
|
755
759
|
from lightning_sdk.lightning_cloud.openapi.models.v1_logs_response import V1LogsResponse
|
|
760
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_lustre_data_connection import V1LustreDataConnection
|
|
756
761
|
from lightning_sdk.lightning_cloud.openapi.models.v1_machines_selector import V1MachinesSelector
|
|
757
762
|
from lightning_sdk.lightning_cloud.openapi.models.v1_magic_link_login_request import V1MagicLinkLoginRequest
|
|
758
763
|
from lightning_sdk.lightning_cloud.openapi.models.v1_magic_link_login_response import V1MagicLinkLoginResponse
|
|
@@ -783,6 +788,8 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_multi_machine_job_fault_tol
|
|
|
783
788
|
from lightning_sdk.lightning_cloud.openapi.models.v1_multi_machine_job_state import V1MultiMachineJobState
|
|
784
789
|
from lightning_sdk.lightning_cloud.openapi.models.v1_multi_machine_job_status import V1MultiMachineJobStatus
|
|
785
790
|
from lightning_sdk.lightning_cloud.openapi.models.v1_named_get_logger_metrics import V1NamedGetLoggerMetrics
|
|
791
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_namespace_metrics import V1NamespaceMetrics
|
|
792
|
+
from lightning_sdk.lightning_cloud.openapi.models.v1_namespace_user_metrics import V1NamespaceUserMetrics
|
|
786
793
|
from lightning_sdk.lightning_cloud.openapi.models.v1_nebius_direct_v1 import V1NebiusDirectV1
|
|
787
794
|
from lightning_sdk.lightning_cloud.openapi.models.v1_network_config import V1NetworkConfig
|
|
788
795
|
from lightning_sdk.lightning_cloud.openapi.models.v1_new_feature import V1NewFeature
|
|
@@ -248,6 +248,7 @@ class CloudSpaceEnvironmentTemplateServiceApi(object):
|
|
|
248
248
|
:param async_req bool
|
|
249
249
|
:param str id: (required)
|
|
250
250
|
:param str org_id:
|
|
251
|
+
:param str project_id:
|
|
251
252
|
:return: V1CloudSpaceEnvironmentTemplate
|
|
252
253
|
If the method is called asynchronously,
|
|
253
254
|
returns the request thread.
|
|
@@ -270,12 +271,13 @@ class CloudSpaceEnvironmentTemplateServiceApi(object):
|
|
|
270
271
|
:param async_req bool
|
|
271
272
|
:param str id: (required)
|
|
272
273
|
:param str org_id:
|
|
274
|
+
:param str project_id:
|
|
273
275
|
:return: V1CloudSpaceEnvironmentTemplate
|
|
274
276
|
If the method is called asynchronously,
|
|
275
277
|
returns the request thread.
|
|
276
278
|
"""
|
|
277
279
|
|
|
278
|
-
all_params = ['id', 'org_id'] # noqa: E501
|
|
280
|
+
all_params = ['id', 'org_id', 'project_id'] # noqa: E501
|
|
279
281
|
all_params.append('async_req')
|
|
280
282
|
all_params.append('_return_http_data_only')
|
|
281
283
|
all_params.append('_preload_content')
|
|
@@ -304,6 +306,8 @@ class CloudSpaceEnvironmentTemplateServiceApi(object):
|
|
|
304
306
|
query_params = []
|
|
305
307
|
if 'org_id' in params:
|
|
306
308
|
query_params.append(('orgId', params['org_id'])) # noqa: E501
|
|
309
|
+
if 'project_id' in params:
|
|
310
|
+
query_params.append(('projectId', params['project_id'])) # noqa: E501
|
|
307
311
|
|
|
308
312
|
header_params = {}
|
|
309
313
|
|
|
@@ -9066,6 +9066,119 @@ class CloudSpaceServiceApi(object):
|
|
|
9066
9066
|
_request_timeout=params.get('_request_timeout'),
|
|
9067
9067
|
collection_formats=collection_formats)
|
|
9068
9068
|
|
|
9069
|
+
def cloud_space_service_update_cloud_space_sleep_config(self, body: 'IdSleepconfigBody', project_id: 'str', id: 'str', **kwargs) -> 'V1CloudSpaceInstanceConfig': # noqa: E501
|
|
9070
|
+
"""cloud_space_service_update_cloud_space_sleep_config # noqa: E501
|
|
9071
|
+
|
|
9072
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
9073
|
+
asynchronous HTTP request, please pass async_req=True
|
|
9074
|
+
>>> thread = api.cloud_space_service_update_cloud_space_sleep_config(body, project_id, id, async_req=True)
|
|
9075
|
+
>>> result = thread.get()
|
|
9076
|
+
|
|
9077
|
+
:param async_req bool
|
|
9078
|
+
:param IdSleepconfigBody body: (required)
|
|
9079
|
+
:param str project_id: (required)
|
|
9080
|
+
:param str id: (required)
|
|
9081
|
+
:return: V1CloudSpaceInstanceConfig
|
|
9082
|
+
If the method is called asynchronously,
|
|
9083
|
+
returns the request thread.
|
|
9084
|
+
"""
|
|
9085
|
+
kwargs['_return_http_data_only'] = True
|
|
9086
|
+
if kwargs.get('async_req'):
|
|
9087
|
+
return self.cloud_space_service_update_cloud_space_sleep_config_with_http_info(body, project_id, id, **kwargs) # noqa: E501
|
|
9088
|
+
else:
|
|
9089
|
+
(data) = self.cloud_space_service_update_cloud_space_sleep_config_with_http_info(body, project_id, id, **kwargs) # noqa: E501
|
|
9090
|
+
return data
|
|
9091
|
+
|
|
9092
|
+
def cloud_space_service_update_cloud_space_sleep_config_with_http_info(self, body: 'IdSleepconfigBody', project_id: 'str', id: 'str', **kwargs) -> 'V1CloudSpaceInstanceConfig': # noqa: E501
|
|
9093
|
+
"""cloud_space_service_update_cloud_space_sleep_config # noqa: E501
|
|
9094
|
+
|
|
9095
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
9096
|
+
asynchronous HTTP request, please pass async_req=True
|
|
9097
|
+
>>> thread = api.cloud_space_service_update_cloud_space_sleep_config_with_http_info(body, project_id, id, async_req=True)
|
|
9098
|
+
>>> result = thread.get()
|
|
9099
|
+
|
|
9100
|
+
:param async_req bool
|
|
9101
|
+
:param IdSleepconfigBody body: (required)
|
|
9102
|
+
:param str project_id: (required)
|
|
9103
|
+
:param str id: (required)
|
|
9104
|
+
:return: V1CloudSpaceInstanceConfig
|
|
9105
|
+
If the method is called asynchronously,
|
|
9106
|
+
returns the request thread.
|
|
9107
|
+
"""
|
|
9108
|
+
|
|
9109
|
+
all_params = ['body', 'project_id', 'id'] # noqa: E501
|
|
9110
|
+
all_params.append('async_req')
|
|
9111
|
+
all_params.append('_return_http_data_only')
|
|
9112
|
+
all_params.append('_preload_content')
|
|
9113
|
+
all_params.append('_request_timeout')
|
|
9114
|
+
|
|
9115
|
+
params = locals()
|
|
9116
|
+
for key, val in six.iteritems(params['kwargs']):
|
|
9117
|
+
if key not in all_params:
|
|
9118
|
+
raise TypeError(
|
|
9119
|
+
"Got an unexpected keyword argument '%s'"
|
|
9120
|
+
" to method cloud_space_service_update_cloud_space_sleep_config" % key
|
|
9121
|
+
)
|
|
9122
|
+
params[key] = val
|
|
9123
|
+
del params['kwargs']
|
|
9124
|
+
# verify the required parameter 'body' is set
|
|
9125
|
+
if ('body' not in params or
|
|
9126
|
+
params['body'] is None):
|
|
9127
|
+
raise ValueError("Missing the required parameter `body` when calling `cloud_space_service_update_cloud_space_sleep_config`") # noqa: E501
|
|
9128
|
+
# verify the required parameter 'project_id' is set
|
|
9129
|
+
if ('project_id' not in params or
|
|
9130
|
+
params['project_id'] is None):
|
|
9131
|
+
raise ValueError("Missing the required parameter `project_id` when calling `cloud_space_service_update_cloud_space_sleep_config`") # noqa: E501
|
|
9132
|
+
# verify the required parameter 'id' is set
|
|
9133
|
+
if ('id' not in params or
|
|
9134
|
+
params['id'] is None):
|
|
9135
|
+
raise ValueError("Missing the required parameter `id` when calling `cloud_space_service_update_cloud_space_sleep_config`") # noqa: E501
|
|
9136
|
+
|
|
9137
|
+
collection_formats = {}
|
|
9138
|
+
|
|
9139
|
+
path_params = {}
|
|
9140
|
+
if 'project_id' in params:
|
|
9141
|
+
path_params['projectId'] = params['project_id'] # noqa: E501
|
|
9142
|
+
if 'id' in params:
|
|
9143
|
+
path_params['id'] = params['id'] # noqa: E501
|
|
9144
|
+
|
|
9145
|
+
query_params = []
|
|
9146
|
+
|
|
9147
|
+
header_params = {}
|
|
9148
|
+
|
|
9149
|
+
form_params = []
|
|
9150
|
+
local_var_files = {}
|
|
9151
|
+
|
|
9152
|
+
body_params = None
|
|
9153
|
+
if 'body' in params:
|
|
9154
|
+
body_params = params['body']
|
|
9155
|
+
# HTTP header `Accept`
|
|
9156
|
+
header_params['Accept'] = self.api_client.select_header_accept(
|
|
9157
|
+
['application/json']) # noqa: E501
|
|
9158
|
+
|
|
9159
|
+
# HTTP header `Content-Type`
|
|
9160
|
+
header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
|
|
9161
|
+
['application/json']) # noqa: E501
|
|
9162
|
+
|
|
9163
|
+
# Authentication setting
|
|
9164
|
+
auth_settings = [] # noqa: E501
|
|
9165
|
+
|
|
9166
|
+
return self.api_client.call_api(
|
|
9167
|
+
'/v1/projects/{projectId}/cloudspaces/{id}/sleepconfig', 'PUT',
|
|
9168
|
+
path_params,
|
|
9169
|
+
query_params,
|
|
9170
|
+
header_params,
|
|
9171
|
+
body=body_params,
|
|
9172
|
+
post_params=form_params,
|
|
9173
|
+
files=local_var_files,
|
|
9174
|
+
response_type='V1CloudSpaceInstanceConfig', # noqa: E501
|
|
9175
|
+
auth_settings=auth_settings,
|
|
9176
|
+
async_req=params.get('async_req'),
|
|
9177
|
+
_return_http_data_only=params.get('_return_http_data_only'),
|
|
9178
|
+
_preload_content=params.get('_preload_content', True),
|
|
9179
|
+
_request_timeout=params.get('_request_timeout'),
|
|
9180
|
+
collection_formats=collection_formats)
|
|
9181
|
+
|
|
9069
9182
|
def cloud_space_service_update_cloud_space_version(self, body: 'VersionsIdBody', project_id: 'str', cloud_space_id: 'str', id: 'str', **kwargs) -> 'V1CloudSpaceVersion': # noqa: E501
|
|
9070
9183
|
"""cloud_space_service_update_cloud_space_version # noqa: E501
|
|
9071
9184
|
|
|
@@ -43,103 +43,6 @@ class CloudyServiceApi(object):
|
|
|
43
43
|
api_client = ApiClient()
|
|
44
44
|
self.api_client = api_client
|
|
45
45
|
|
|
46
|
-
def cloudy_service_create_user_cloudy_settings(self, body: 'V1CloudySettings', **kwargs) -> 'V1CloudySettings': # noqa: E501
|
|
47
|
-
"""cloudy_service_create_user_cloudy_settings # noqa: E501
|
|
48
|
-
|
|
49
|
-
This method makes a synchronous HTTP request by default. To make an
|
|
50
|
-
asynchronous HTTP request, please pass async_req=True
|
|
51
|
-
>>> thread = api.cloudy_service_create_user_cloudy_settings(body, async_req=True)
|
|
52
|
-
>>> result = thread.get()
|
|
53
|
-
|
|
54
|
-
:param async_req bool
|
|
55
|
-
:param V1CloudySettings body: (required)
|
|
56
|
-
:return: V1CloudySettings
|
|
57
|
-
If the method is called asynchronously,
|
|
58
|
-
returns the request thread.
|
|
59
|
-
"""
|
|
60
|
-
kwargs['_return_http_data_only'] = True
|
|
61
|
-
if kwargs.get('async_req'):
|
|
62
|
-
return self.cloudy_service_create_user_cloudy_settings_with_http_info(body, **kwargs) # noqa: E501
|
|
63
|
-
else:
|
|
64
|
-
(data) = self.cloudy_service_create_user_cloudy_settings_with_http_info(body, **kwargs) # noqa: E501
|
|
65
|
-
return data
|
|
66
|
-
|
|
67
|
-
def cloudy_service_create_user_cloudy_settings_with_http_info(self, body: 'V1CloudySettings', **kwargs) -> 'V1CloudySettings': # noqa: E501
|
|
68
|
-
"""cloudy_service_create_user_cloudy_settings # noqa: E501
|
|
69
|
-
|
|
70
|
-
This method makes a synchronous HTTP request by default. To make an
|
|
71
|
-
asynchronous HTTP request, please pass async_req=True
|
|
72
|
-
>>> thread = api.cloudy_service_create_user_cloudy_settings_with_http_info(body, async_req=True)
|
|
73
|
-
>>> result = thread.get()
|
|
74
|
-
|
|
75
|
-
:param async_req bool
|
|
76
|
-
:param V1CloudySettings body: (required)
|
|
77
|
-
:return: V1CloudySettings
|
|
78
|
-
If the method is called asynchronously,
|
|
79
|
-
returns the request thread.
|
|
80
|
-
"""
|
|
81
|
-
|
|
82
|
-
all_params = ['body'] # noqa: E501
|
|
83
|
-
all_params.append('async_req')
|
|
84
|
-
all_params.append('_return_http_data_only')
|
|
85
|
-
all_params.append('_preload_content')
|
|
86
|
-
all_params.append('_request_timeout')
|
|
87
|
-
|
|
88
|
-
params = locals()
|
|
89
|
-
for key, val in six.iteritems(params['kwargs']):
|
|
90
|
-
if key not in all_params:
|
|
91
|
-
raise TypeError(
|
|
92
|
-
"Got an unexpected keyword argument '%s'"
|
|
93
|
-
" to method cloudy_service_create_user_cloudy_settings" % key
|
|
94
|
-
)
|
|
95
|
-
params[key] = val
|
|
96
|
-
del params['kwargs']
|
|
97
|
-
# verify the required parameter 'body' is set
|
|
98
|
-
if ('body' not in params or
|
|
99
|
-
params['body'] is None):
|
|
100
|
-
raise ValueError("Missing the required parameter `body` when calling `cloudy_service_create_user_cloudy_settings`") # noqa: E501
|
|
101
|
-
|
|
102
|
-
collection_formats = {}
|
|
103
|
-
|
|
104
|
-
path_params = {}
|
|
105
|
-
|
|
106
|
-
query_params = []
|
|
107
|
-
|
|
108
|
-
header_params = {}
|
|
109
|
-
|
|
110
|
-
form_params = []
|
|
111
|
-
local_var_files = {}
|
|
112
|
-
|
|
113
|
-
body_params = None
|
|
114
|
-
if 'body' in params:
|
|
115
|
-
body_params = params['body']
|
|
116
|
-
# HTTP header `Accept`
|
|
117
|
-
header_params['Accept'] = self.api_client.select_header_accept(
|
|
118
|
-
['application/json']) # noqa: E501
|
|
119
|
-
|
|
120
|
-
# HTTP header `Content-Type`
|
|
121
|
-
header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
|
|
122
|
-
['application/json']) # noqa: E501
|
|
123
|
-
|
|
124
|
-
# Authentication setting
|
|
125
|
-
auth_settings = [] # noqa: E501
|
|
126
|
-
|
|
127
|
-
return self.api_client.call_api(
|
|
128
|
-
'/v1/cloudy/settings/user', 'POST',
|
|
129
|
-
path_params,
|
|
130
|
-
query_params,
|
|
131
|
-
header_params,
|
|
132
|
-
body=body_params,
|
|
133
|
-
post_params=form_params,
|
|
134
|
-
files=local_var_files,
|
|
135
|
-
response_type='V1CloudySettings', # noqa: E501
|
|
136
|
-
auth_settings=auth_settings,
|
|
137
|
-
async_req=params.get('async_req'),
|
|
138
|
-
_return_http_data_only=params.get('_return_http_data_only'),
|
|
139
|
-
_preload_content=params.get('_preload_content', True),
|
|
140
|
-
_request_timeout=params.get('_request_timeout'),
|
|
141
|
-
collection_formats=collection_formats)
|
|
142
|
-
|
|
143
46
|
def cloudy_service_get_user_cloudy_settings(self, user_id: 'str', **kwargs) -> 'V1CloudySettings': # noqa: E501
|
|
144
47
|
"""cloudy_service_get_user_cloudy_settings # noqa: E501
|
|
145
48
|
|