pai/libs/alibabacloud_pai_dsw20220101/client.py (2,771 lines of code) (raw):
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
from typing import Dict
from Tea.core import TeaCore
from alibabacloud_tea_openapi.client import Client as OpenApiClient
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util.client import Client as UtilClient
from alibabacloud_endpoint_util.client import Client as EndpointUtilClient
from pai.libs.alibabacloud_pai_dsw20220101 import models as pai_dsw_20220101_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_openapi_util.client import Client as OpenApiUtilClient
class Client(OpenApiClient):
"""
*\
"""
def __init__(
self,
config: open_api_models.Config,
):
super().__init__(config)
self._endpoint_rule = ''
self.check_config(config)
self._endpoint = self.get_endpoint('pai-dsw', self._region_id, self._endpoint_rule, self._network, self._suffix, self._endpoint_map, self._endpoint)
def get_endpoint(
self,
product_id: str,
region_id: str,
endpoint_rule: str,
network: str,
suffix: str,
endpoint_map: Dict[str, str],
endpoint: str,
) -> str:
if not UtilClient.empty(endpoint):
return endpoint
if not UtilClient.is_unset(endpoint_map) and not UtilClient.empty(endpoint_map.get(region_id)):
return endpoint_map.get(region_id)
return EndpointUtilClient.get_endpoint_rules(product_id, region_id, endpoint_rule, network, suffix)
def create_idle_instance_culler_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateIdleInstanceCullerRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateIdleInstanceCullerResponse:
"""
@param request: CreateIdleInstanceCullerRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateIdleInstanceCullerResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.cpu_percent_threshold):
body['CpuPercentThreshold'] = request.cpu_percent_threshold
if not UtilClient.is_unset(request.gpu_percent_threshold):
body['GpuPercentThreshold'] = request.gpu_percent_threshold
if not UtilClient.is_unset(request.max_idle_time_in_minutes):
body['MaxIdleTimeInMinutes'] = request.max_idle_time_in_minutes
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateIdleInstanceCullerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateIdleInstanceCullerResponse(),
self.execute(params, req, runtime)
)
async def create_idle_instance_culler_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateIdleInstanceCullerRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateIdleInstanceCullerResponse:
"""
@param request: CreateIdleInstanceCullerRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateIdleInstanceCullerResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.cpu_percent_threshold):
body['CpuPercentThreshold'] = request.cpu_percent_threshold
if not UtilClient.is_unset(request.gpu_percent_threshold):
body['GpuPercentThreshold'] = request.gpu_percent_threshold
if not UtilClient.is_unset(request.max_idle_time_in_minutes):
body['MaxIdleTimeInMinutes'] = request.max_idle_time_in_minutes
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateIdleInstanceCullerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateIdleInstanceCullerResponse(),
await self.execute_async(params, req, runtime)
)
def create_idle_instance_culler(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateIdleInstanceCullerRequest,
) -> pai_dsw_20220101_models.CreateIdleInstanceCullerResponse:
"""
@param request: CreateIdleInstanceCullerRequest
@return: CreateIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.create_idle_instance_culler_with_options(instance_id, request, headers, runtime)
async def create_idle_instance_culler_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateIdleInstanceCullerRequest,
) -> pai_dsw_20220101_models.CreateIdleInstanceCullerResponse:
"""
@param request: CreateIdleInstanceCullerRequest
@return: CreateIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.create_idle_instance_culler_with_options_async(instance_id, request, headers, runtime)
def create_instance_with_options(
self,
request: pai_dsw_20220101_models.CreateInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceResponse:
"""
@summary 创建实例
@param request: CreateInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.accessibility):
body['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.affinity):
body['Affinity'] = request.affinity
if not UtilClient.is_unset(request.cloud_disks):
body['CloudDisks'] = request.cloud_disks
if not UtilClient.is_unset(request.credential_config):
body['CredentialConfig'] = request.credential_config
if not UtilClient.is_unset(request.datasets):
body['Datasets'] = request.datasets
if not UtilClient.is_unset(request.driver):
body['Driver'] = request.driver
if not UtilClient.is_unset(request.dynamic_mount):
body['DynamicMount'] = request.dynamic_mount
if not UtilClient.is_unset(request.ecs_spec):
body['EcsSpec'] = request.ecs_spec
if not UtilClient.is_unset(request.environment_variables):
body['EnvironmentVariables'] = request.environment_variables
if not UtilClient.is_unset(request.image_auth):
body['ImageAuth'] = request.image_auth
if not UtilClient.is_unset(request.image_id):
body['ImageId'] = request.image_id
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.instance_name):
body['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
if not UtilClient.is_unset(request.priority):
body['Priority'] = request.priority
if not UtilClient.is_unset(request.requested_resource):
body['RequestedResource'] = request.requested_resource
if not UtilClient.is_unset(request.resource_id):
body['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.tag):
body['Tag'] = request.tag
if not UtilClient.is_unset(request.user_id):
body['UserId'] = request.user_id
if not UtilClient.is_unset(request.user_vpc):
body['UserVpc'] = request.user_vpc
if not UtilClient.is_unset(request.workspace_id):
body['WorkspaceId'] = request.workspace_id
if not UtilClient.is_unset(request.workspace_source):
body['WorkspaceSource'] = request.workspace_source
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceResponse(),
self.execute(params, req, runtime)
)
async def create_instance_with_options_async(
self,
request: pai_dsw_20220101_models.CreateInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceResponse:
"""
@summary 创建实例
@param request: CreateInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.accessibility):
body['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.affinity):
body['Affinity'] = request.affinity
if not UtilClient.is_unset(request.cloud_disks):
body['CloudDisks'] = request.cloud_disks
if not UtilClient.is_unset(request.credential_config):
body['CredentialConfig'] = request.credential_config
if not UtilClient.is_unset(request.datasets):
body['Datasets'] = request.datasets
if not UtilClient.is_unset(request.driver):
body['Driver'] = request.driver
if not UtilClient.is_unset(request.dynamic_mount):
body['DynamicMount'] = request.dynamic_mount
if not UtilClient.is_unset(request.ecs_spec):
body['EcsSpec'] = request.ecs_spec
if not UtilClient.is_unset(request.environment_variables):
body['EnvironmentVariables'] = request.environment_variables
if not UtilClient.is_unset(request.image_auth):
body['ImageAuth'] = request.image_auth
if not UtilClient.is_unset(request.image_id):
body['ImageId'] = request.image_id
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.instance_name):
body['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
if not UtilClient.is_unset(request.priority):
body['Priority'] = request.priority
if not UtilClient.is_unset(request.requested_resource):
body['RequestedResource'] = request.requested_resource
if not UtilClient.is_unset(request.resource_id):
body['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.tag):
body['Tag'] = request.tag
if not UtilClient.is_unset(request.user_id):
body['UserId'] = request.user_id
if not UtilClient.is_unset(request.user_vpc):
body['UserVpc'] = request.user_vpc
if not UtilClient.is_unset(request.workspace_id):
body['WorkspaceId'] = request.workspace_id
if not UtilClient.is_unset(request.workspace_source):
body['WorkspaceSource'] = request.workspace_source
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def create_instance(
self,
request: pai_dsw_20220101_models.CreateInstanceRequest,
) -> pai_dsw_20220101_models.CreateInstanceResponse:
"""
@summary 创建实例
@param request: CreateInstanceRequest
@return: CreateInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.create_instance_with_options(request, headers, runtime)
async def create_instance_async(
self,
request: pai_dsw_20220101_models.CreateInstanceRequest,
) -> pai_dsw_20220101_models.CreateInstanceResponse:
"""
@summary 创建实例
@param request: CreateInstanceRequest
@return: CreateInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.create_instance_with_options_async(request, headers, runtime)
def create_instance_shutdown_timer_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceShutdownTimerRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse:
"""
@summary 创建定时关机任务
@param request: CreateInstanceShutdownTimerRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceShutdownTimerResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.due_time):
body['DueTime'] = request.due_time
if not UtilClient.is_unset(request.remaining_time_in_ms):
body['RemainingTimeInMs'] = request.remaining_time_in_ms
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse(),
self.execute(params, req, runtime)
)
async def create_instance_shutdown_timer_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceShutdownTimerRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse:
"""
@summary 创建定时关机任务
@param request: CreateInstanceShutdownTimerRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceShutdownTimerResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.due_time):
body['DueTime'] = request.due_time
if not UtilClient.is_unset(request.remaining_time_in_ms):
body['RemainingTimeInMs'] = request.remaining_time_in_ms
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse(),
await self.execute_async(params, req, runtime)
)
def create_instance_shutdown_timer(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceShutdownTimerRequest,
) -> pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse:
"""
@summary 创建定时关机任务
@param request: CreateInstanceShutdownTimerRequest
@return: CreateInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.create_instance_shutdown_timer_with_options(instance_id, request, headers, runtime)
async def create_instance_shutdown_timer_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceShutdownTimerRequest,
) -> pai_dsw_20220101_models.CreateInstanceShutdownTimerResponse:
"""
@summary 创建定时关机任务
@param request: CreateInstanceShutdownTimerRequest
@return: CreateInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.create_instance_shutdown_timer_with_options_async(instance_id, request, headers, runtime)
def create_instance_snapshot_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceSnapshotRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceSnapshotResponse:
"""
@summary 创建实例快照
@param request: CreateInstanceSnapshotRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceSnapshotResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.exclude_paths):
body['ExcludePaths'] = request.exclude_paths
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
if not UtilClient.is_unset(request.overwrite):
body['Overwrite'] = request.overwrite
if not UtilClient.is_unset(request.snapshot_description):
body['SnapshotDescription'] = request.snapshot_description
if not UtilClient.is_unset(request.snapshot_name):
body['SnapshotName'] = request.snapshot_name
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceSnapshotResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceSnapshotResponse(),
self.execute(params, req, runtime)
)
async def create_instance_snapshot_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceSnapshotRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.CreateInstanceSnapshotResponse:
"""
@summary 创建实例快照
@param request: CreateInstanceSnapshotRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: CreateInstanceSnapshotResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.exclude_paths):
body['ExcludePaths'] = request.exclude_paths
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
if not UtilClient.is_unset(request.overwrite):
body['Overwrite'] = request.overwrite
if not UtilClient.is_unset(request.snapshot_description):
body['SnapshotDescription'] = request.snapshot_description
if not UtilClient.is_unset(request.snapshot_name):
body['SnapshotName'] = request.snapshot_name
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots',
method='POST',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceSnapshotResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.CreateInstanceSnapshotResponse(),
await self.execute_async(params, req, runtime)
)
def create_instance_snapshot(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceSnapshotRequest,
) -> pai_dsw_20220101_models.CreateInstanceSnapshotResponse:
"""
@summary 创建实例快照
@param request: CreateInstanceSnapshotRequest
@return: CreateInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.create_instance_snapshot_with_options(instance_id, request, headers, runtime)
async def create_instance_snapshot_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.CreateInstanceSnapshotRequest,
) -> pai_dsw_20220101_models.CreateInstanceSnapshotResponse:
"""
@summary 创建实例快照
@param request: CreateInstanceSnapshotRequest
@return: CreateInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.create_instance_snapshot_with_options_async(instance_id, request, headers, runtime)
def delete_idle_instance_culler_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse:
"""
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteIdleInstanceCullerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse(),
self.execute(params, req, runtime)
)
async def delete_idle_instance_culler_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse:
"""
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteIdleInstanceCullerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse(),
await self.execute_async(params, req, runtime)
)
def delete_idle_instance_culler(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse:
"""
@return: DeleteIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.delete_idle_instance_culler_with_options(instance_id, headers, runtime)
async def delete_idle_instance_culler_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteIdleInstanceCullerResponse:
"""
@return: DeleteIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.delete_idle_instance_culler_with_options_async(instance_id, headers, runtime)
def delete_instance_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceResponse:
"""
@summary 删除实例
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceResponse(),
self.execute(params, req, runtime)
)
async def delete_instance_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceResponse:
"""
@summary 删除实例
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def delete_instance(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceResponse:
"""
@summary 删除实例
@return: DeleteInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.delete_instance_with_options(instance_id, headers, runtime)
async def delete_instance_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceResponse:
"""
@summary 删除实例
@return: DeleteInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.delete_instance_with_options_async(instance_id, headers, runtime)
def delete_instance_labels_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.DeleteInstanceLabelsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceLabelsResponse:
"""
@summary 删除DSW实例的标签
@param request: DeleteInstanceLabelsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceLabelsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.label_keys):
query['LabelKeys'] = request.label_keys
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeleteInstanceLabels',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/labels',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceLabelsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceLabelsResponse(),
self.execute(params, req, runtime)
)
async def delete_instance_labels_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.DeleteInstanceLabelsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceLabelsResponse:
"""
@summary 删除DSW实例的标签
@param request: DeleteInstanceLabelsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceLabelsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.label_keys):
query['LabelKeys'] = request.label_keys
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeleteInstanceLabels',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/labels',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceLabelsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceLabelsResponse(),
await self.execute_async(params, req, runtime)
)
def delete_instance_labels(
self,
instance_id: str,
request: pai_dsw_20220101_models.DeleteInstanceLabelsRequest,
) -> pai_dsw_20220101_models.DeleteInstanceLabelsResponse:
"""
@summary 删除DSW实例的标签
@param request: DeleteInstanceLabelsRequest
@return: DeleteInstanceLabelsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.delete_instance_labels_with_options(instance_id, request, headers, runtime)
async def delete_instance_labels_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.DeleteInstanceLabelsRequest,
) -> pai_dsw_20220101_models.DeleteInstanceLabelsResponse:
"""
@summary 删除DSW实例的标签
@param request: DeleteInstanceLabelsRequest
@return: DeleteInstanceLabelsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.delete_instance_labels_with_options_async(instance_id, request, headers, runtime)
def delete_instance_shutdown_timer_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse:
"""
@summary 删除定时关机任务
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceShutdownTimerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse(),
self.execute(params, req, runtime)
)
async def delete_instance_shutdown_timer_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse:
"""
@summary 删除定时关机任务
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceShutdownTimerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse(),
await self.execute_async(params, req, runtime)
)
def delete_instance_shutdown_timer(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse:
"""
@summary 删除定时关机任务
@return: DeleteInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.delete_instance_shutdown_timer_with_options(instance_id, headers, runtime)
async def delete_instance_shutdown_timer_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceShutdownTimerResponse:
"""
@summary 删除定时关机任务
@return: DeleteInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.delete_instance_shutdown_timer_with_options_async(instance_id, headers, runtime)
def delete_instance_snapshot_with_options(
self,
instance_id: str,
snapshot_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceSnapshotResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots/{OpenApiUtilClient.get_encode_param(snapshot_id)}',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceSnapshotResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceSnapshotResponse(),
self.execute(params, req, runtime)
)
async def delete_instance_snapshot_with_options_async(
self,
instance_id: str,
snapshot_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.DeleteInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteInstanceSnapshotResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='DeleteInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots/{OpenApiUtilClient.get_encode_param(snapshot_id)}',
method='DELETE',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceSnapshotResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.DeleteInstanceSnapshotResponse(),
await self.execute_async(params, req, runtime)
)
def delete_instance_snapshot(
self,
instance_id: str,
snapshot_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@return: DeleteInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.delete_instance_snapshot_with_options(instance_id, snapshot_id, headers, runtime)
async def delete_instance_snapshot_async(
self,
instance_id: str,
snapshot_id: str,
) -> pai_dsw_20220101_models.DeleteInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@return: DeleteInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.delete_instance_snapshot_with_options_async(instance_id, snapshot_id, headers, runtime)
def get_idle_instance_culler_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetIdleInstanceCullerResponse:
"""
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetIdleInstanceCullerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetIdleInstanceCullerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetIdleInstanceCullerResponse(),
self.execute(params, req, runtime)
)
async def get_idle_instance_culler_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetIdleInstanceCullerResponse:
"""
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetIdleInstanceCullerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetIdleInstanceCuller',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/idleinstanceculler',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetIdleInstanceCullerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetIdleInstanceCullerResponse(),
await self.execute_async(params, req, runtime)
)
def get_idle_instance_culler(
self,
instance_id: str,
) -> pai_dsw_20220101_models.GetIdleInstanceCullerResponse:
"""
@return: GetIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_idle_instance_culler_with_options(instance_id, headers, runtime)
async def get_idle_instance_culler_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.GetIdleInstanceCullerResponse:
"""
@return: GetIdleInstanceCullerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_idle_instance_culler_with_options_async(instance_id, headers, runtime)
def get_instance_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceResponse:
"""
@summary 获取实例详情
@param request: GetInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceResponse(),
self.execute(params, req, runtime)
)
async def get_instance_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceResponse:
"""
@summary 获取实例详情
@param request: GetInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def get_instance(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceRequest,
) -> pai_dsw_20220101_models.GetInstanceResponse:
"""
@summary 获取实例详情
@param request: GetInstanceRequest
@return: GetInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_instance_with_options(instance_id, request, headers, runtime)
async def get_instance_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceRequest,
) -> pai_dsw_20220101_models.GetInstanceResponse:
"""
@summary 获取实例详情
@param request: GetInstanceRequest
@return: GetInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_instance_with_options_async(instance_id, request, headers, runtime)
def get_instance_events_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceEventsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceEventsResponse:
"""
@param request: GetInstanceEventsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceEventsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.max_events_num):
query['MaxEventsNum'] = request.max_events_num
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstanceEvents',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/events',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceEventsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceEventsResponse(),
self.execute(params, req, runtime)
)
async def get_instance_events_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceEventsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceEventsResponse:
"""
@param request: GetInstanceEventsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceEventsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.max_events_num):
query['MaxEventsNum'] = request.max_events_num
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstanceEvents',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/events',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceEventsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceEventsResponse(),
await self.execute_async(params, req, runtime)
)
def get_instance_events(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceEventsRequest,
) -> pai_dsw_20220101_models.GetInstanceEventsResponse:
"""
@param request: GetInstanceEventsRequest
@return: GetInstanceEventsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_instance_events_with_options(instance_id, request, headers, runtime)
async def get_instance_events_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceEventsRequest,
) -> pai_dsw_20220101_models.GetInstanceEventsResponse:
"""
@param request: GetInstanceEventsRequest
@return: GetInstanceEventsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_instance_events_with_options_async(instance_id, request, headers, runtime)
def get_instance_metrics_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceMetricsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceMetricsResponse:
"""
@param request: GetInstanceMetricsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceMetricsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.metric_type):
query['MetricType'] = request.metric_type
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.time_step):
query['TimeStep'] = request.time_step
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstanceMetrics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instance/{OpenApiUtilClient.get_encode_param(instance_id)}/metrics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceMetricsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceMetricsResponse(),
self.execute(params, req, runtime)
)
async def get_instance_metrics_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceMetricsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceMetricsResponse:
"""
@param request: GetInstanceMetricsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceMetricsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.metric_type):
query['MetricType'] = request.metric_type
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.time_step):
query['TimeStep'] = request.time_step
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetInstanceMetrics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instance/{OpenApiUtilClient.get_encode_param(instance_id)}/metrics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceMetricsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceMetricsResponse(),
await self.execute_async(params, req, runtime)
)
def get_instance_metrics(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceMetricsRequest,
) -> pai_dsw_20220101_models.GetInstanceMetricsResponse:
"""
@param request: GetInstanceMetricsRequest
@return: GetInstanceMetricsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_instance_metrics_with_options(instance_id, request, headers, runtime)
async def get_instance_metrics_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetInstanceMetricsRequest,
) -> pai_dsw_20220101_models.GetInstanceMetricsResponse:
"""
@param request: GetInstanceMetricsRequest
@return: GetInstanceMetricsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_instance_metrics_with_options_async(instance_id, request, headers, runtime)
def get_instance_shutdown_timer_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceShutdownTimerResponse:
"""
@summary 获取定时关机任务
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceShutdownTimerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceShutdownTimerResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceShutdownTimerResponse(),
self.execute(params, req, runtime)
)
async def get_instance_shutdown_timer_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceShutdownTimerResponse:
"""
@summary 获取定时关机任务
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceShutdownTimerResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetInstanceShutdownTimer',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/shutdowntimer',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceShutdownTimerResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceShutdownTimerResponse(),
await self.execute_async(params, req, runtime)
)
def get_instance_shutdown_timer(
self,
instance_id: str,
) -> pai_dsw_20220101_models.GetInstanceShutdownTimerResponse:
"""
@summary 获取定时关机任务
@return: GetInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_instance_shutdown_timer_with_options(instance_id, headers, runtime)
async def get_instance_shutdown_timer_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.GetInstanceShutdownTimerResponse:
"""
@summary 获取定时关机任务
@return: GetInstanceShutdownTimerResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_instance_shutdown_timer_with_options_async(instance_id, headers, runtime)
def get_instance_snapshot_with_options(
self,
instance_id: str,
snapshot_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceSnapshotResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots/{OpenApiUtilClient.get_encode_param(snapshot_id)}',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceSnapshotResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceSnapshotResponse(),
self.execute(params, req, runtime)
)
async def get_instance_snapshot_with_options_async(
self,
instance_id: str,
snapshot_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetInstanceSnapshotResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots/{OpenApiUtilClient.get_encode_param(snapshot_id)}',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceSnapshotResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetInstanceSnapshotResponse(),
await self.execute_async(params, req, runtime)
)
def get_instance_snapshot(
self,
instance_id: str,
snapshot_id: str,
) -> pai_dsw_20220101_models.GetInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@return: GetInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_instance_snapshot_with_options(instance_id, snapshot_id, headers, runtime)
async def get_instance_snapshot_async(
self,
instance_id: str,
snapshot_id: str,
) -> pai_dsw_20220101_models.GetInstanceSnapshotResponse:
"""
@summary 获取实例快照详情
@return: GetInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_instance_snapshot_with_options_async(instance_id, snapshot_id, headers, runtime)
def get_lifecycle_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetLifecycleRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetLifecycleResponse:
"""
@param request: GetLifecycleRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetLifecycleResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.limit):
query['Limit'] = request.limit
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.session_number):
query['SessionNumber'] = request.session_number
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetLifecycle',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/lifecycle',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetLifecycleResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetLifecycleResponse(),
self.execute(params, req, runtime)
)
async def get_lifecycle_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetLifecycleRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetLifecycleResponse:
"""
@param request: GetLifecycleRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetLifecycleResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.limit):
query['Limit'] = request.limit
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.session_number):
query['SessionNumber'] = request.session_number
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.token):
query['Token'] = request.token
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetLifecycle',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/lifecycle',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetLifecycleResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetLifecycleResponse(),
await self.execute_async(params, req, runtime)
)
def get_lifecycle(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetLifecycleRequest,
) -> pai_dsw_20220101_models.GetLifecycleResponse:
"""
@param request: GetLifecycleRequest
@return: GetLifecycleResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_lifecycle_with_options(instance_id, request, headers, runtime)
async def get_lifecycle_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetLifecycleRequest,
) -> pai_dsw_20220101_models.GetLifecycleResponse:
"""
@param request: GetLifecycleRequest
@return: GetLifecycleResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_lifecycle_with_options_async(instance_id, request, headers, runtime)
def get_metrics_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetMetricsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetMetricsResponse:
"""
@summary 获取metrics数据
@param request: GetMetricsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetMetricsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.dimensions):
query['Dimensions'] = request.dimensions
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.length):
query['Length'] = request.length
if not UtilClient.is_unset(request.metric_name):
query['MetricName'] = request.metric_name
if not UtilClient.is_unset(request.namespace):
query['Namespace'] = request.namespace
if not UtilClient.is_unset(request.next_token):
query['NextToken'] = request.next_token
if not UtilClient.is_unset(request.period):
query['Period'] = request.period
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetMetrics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instance/{OpenApiUtilClient.get_encode_param(instance_id)}/cms/metrics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetMetricsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetMetricsResponse(),
self.execute(params, req, runtime)
)
async def get_metrics_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetMetricsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetMetricsResponse:
"""
@summary 获取metrics数据
@param request: GetMetricsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetMetricsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.dimensions):
query['Dimensions'] = request.dimensions
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.length):
query['Length'] = request.length
if not UtilClient.is_unset(request.metric_name):
query['MetricName'] = request.metric_name
if not UtilClient.is_unset(request.namespace):
query['Namespace'] = request.namespace
if not UtilClient.is_unset(request.next_token):
query['NextToken'] = request.next_token
if not UtilClient.is_unset(request.period):
query['Period'] = request.period
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetMetrics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instance/{OpenApiUtilClient.get_encode_param(instance_id)}/cms/metrics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetMetricsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetMetricsResponse(),
await self.execute_async(params, req, runtime)
)
def get_metrics(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetMetricsRequest,
) -> pai_dsw_20220101_models.GetMetricsResponse:
"""
@summary 获取metrics数据
@param request: GetMetricsRequest
@return: GetMetricsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_metrics_with_options(instance_id, request, headers, runtime)
async def get_metrics_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.GetMetricsRequest,
) -> pai_dsw_20220101_models.GetMetricsResponse:
"""
@summary 获取metrics数据
@param request: GetMetricsRequest
@return: GetMetricsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_metrics_with_options_async(instance_id, request, headers, runtime)
def get_resource_group_statistics_with_options(
self,
request: pai_dsw_20220101_models.GetResourceGroupStatisticsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetResourceGroupStatisticsResponse:
"""
@param request: GetResourceGroupStatisticsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetResourceGroupStatisticsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.resource_id):
query['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.workspace_ids):
query['WorkspaceIds'] = request.workspace_ids
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetResourceGroupStatistics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/resourcegroupstatistics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetResourceGroupStatisticsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetResourceGroupStatisticsResponse(),
self.execute(params, req, runtime)
)
async def get_resource_group_statistics_with_options_async(
self,
request: pai_dsw_20220101_models.GetResourceGroupStatisticsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetResourceGroupStatisticsResponse:
"""
@param request: GetResourceGroupStatisticsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetResourceGroupStatisticsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.end_time):
query['EndTime'] = request.end_time
if not UtilClient.is_unset(request.resource_id):
query['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.start_time):
query['StartTime'] = request.start_time
if not UtilClient.is_unset(request.workspace_ids):
query['WorkspaceIds'] = request.workspace_ids
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetResourceGroupStatistics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/resourcegroupstatistics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetResourceGroupStatisticsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetResourceGroupStatisticsResponse(),
await self.execute_async(params, req, runtime)
)
def get_resource_group_statistics(
self,
request: pai_dsw_20220101_models.GetResourceGroupStatisticsRequest,
) -> pai_dsw_20220101_models.GetResourceGroupStatisticsResponse:
"""
@param request: GetResourceGroupStatisticsRequest
@return: GetResourceGroupStatisticsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_resource_group_statistics_with_options(request, headers, runtime)
async def get_resource_group_statistics_async(
self,
request: pai_dsw_20220101_models.GetResourceGroupStatisticsRequest,
) -> pai_dsw_20220101_models.GetResourceGroupStatisticsResponse:
"""
@param request: GetResourceGroupStatisticsRequest
@return: GetResourceGroupStatisticsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_resource_group_statistics_with_options_async(request, headers, runtime)
def get_token_with_options(
self,
request: pai_dsw_20220101_models.GetTokenRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetTokenResponse:
"""
@param request: GetTokenRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetTokenResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.expire_time):
query['ExpireTime'] = request.expire_time
if not UtilClient.is_unset(request.instance_id):
query['InstanceId'] = request.instance_id
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetToken',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/tokens',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetTokenResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetTokenResponse(),
self.execute(params, req, runtime)
)
async def get_token_with_options_async(
self,
request: pai_dsw_20220101_models.GetTokenRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetTokenResponse:
"""
@param request: GetTokenRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetTokenResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.expire_time):
query['ExpireTime'] = request.expire_time
if not UtilClient.is_unset(request.instance_id):
query['InstanceId'] = request.instance_id
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GetToken',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/tokens',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetTokenResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetTokenResponse(),
await self.execute_async(params, req, runtime)
)
def get_token(
self,
request: pai_dsw_20220101_models.GetTokenRequest,
) -> pai_dsw_20220101_models.GetTokenResponse:
"""
@param request: GetTokenRequest
@return: GetTokenResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_token_with_options(request, headers, runtime)
async def get_token_async(
self,
request: pai_dsw_20220101_models.GetTokenRequest,
) -> pai_dsw_20220101_models.GetTokenResponse:
"""
@param request: GetTokenRequest
@return: GetTokenResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_token_with_options_async(request, headers, runtime)
def get_user_config_with_options(
self,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetUserConfigResponse:
"""
@summary 获取用户配置
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetUserConfigResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetUserConfig',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/userconfig',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetUserConfigResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetUserConfigResponse(),
self.execute(params, req, runtime)
)
async def get_user_config_with_options_async(
self,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.GetUserConfigResponse:
"""
@summary 获取用户配置
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: GetUserConfigResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='GetUserConfig',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/userconfig',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.GetUserConfigResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.GetUserConfigResponse(),
await self.execute_async(params, req, runtime)
)
def get_user_config(self) -> pai_dsw_20220101_models.GetUserConfigResponse:
"""
@summary 获取用户配置
@return: GetUserConfigResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.get_user_config_with_options(headers, runtime)
async def get_user_config_async(self) -> pai_dsw_20220101_models.GetUserConfigResponse:
"""
@summary 获取用户配置
@return: GetUserConfigResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.get_user_config_with_options_async(headers, runtime)
def list_ecs_specs_with_options(
self,
request: pai_dsw_20220101_models.ListEcsSpecsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListEcsSpecsResponse:
"""
@summary 获取ECS规格列表
@param request: ListEcsSpecsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListEcsSpecsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.accelerator_type):
query['AcceleratorType'] = request.accelerator_type
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListEcsSpecs',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/ecsspecs',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListEcsSpecsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListEcsSpecsResponse(),
self.execute(params, req, runtime)
)
async def list_ecs_specs_with_options_async(
self,
request: pai_dsw_20220101_models.ListEcsSpecsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListEcsSpecsResponse:
"""
@summary 获取ECS规格列表
@param request: ListEcsSpecsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListEcsSpecsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.accelerator_type):
query['AcceleratorType'] = request.accelerator_type
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListEcsSpecs',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/ecsspecs',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListEcsSpecsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListEcsSpecsResponse(),
await self.execute_async(params, req, runtime)
)
def list_ecs_specs(
self,
request: pai_dsw_20220101_models.ListEcsSpecsRequest,
) -> pai_dsw_20220101_models.ListEcsSpecsResponse:
"""
@summary 获取ECS规格列表
@param request: ListEcsSpecsRequest
@return: ListEcsSpecsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.list_ecs_specs_with_options(request, headers, runtime)
async def list_ecs_specs_async(
self,
request: pai_dsw_20220101_models.ListEcsSpecsRequest,
) -> pai_dsw_20220101_models.ListEcsSpecsResponse:
"""
@summary 获取ECS规格列表
@param request: ListEcsSpecsRequest
@return: ListEcsSpecsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.list_ecs_specs_with_options_async(request, headers, runtime)
def list_instance_snapshot_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.ListInstanceSnapshotRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstanceSnapshotResponse:
"""
@summary 查询实例快照列表
@param request: ListInstanceSnapshotRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstanceSnapshotResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceSnapshotResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceSnapshotResponse(),
self.execute(params, req, runtime)
)
async def list_instance_snapshot_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.ListInstanceSnapshotRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstanceSnapshotResponse:
"""
@summary 查询实例快照列表
@param request: ListInstanceSnapshotRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstanceSnapshotResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstanceSnapshot',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/snapshots',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceSnapshotResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceSnapshotResponse(),
await self.execute_async(params, req, runtime)
)
def list_instance_snapshot(
self,
instance_id: str,
request: pai_dsw_20220101_models.ListInstanceSnapshotRequest,
) -> pai_dsw_20220101_models.ListInstanceSnapshotResponse:
"""
@summary 查询实例快照列表
@param request: ListInstanceSnapshotRequest
@return: ListInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.list_instance_snapshot_with_options(instance_id, request, headers, runtime)
async def list_instance_snapshot_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.ListInstanceSnapshotRequest,
) -> pai_dsw_20220101_models.ListInstanceSnapshotResponse:
"""
@summary 查询实例快照列表
@param request: ListInstanceSnapshotRequest
@return: ListInstanceSnapshotResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.list_instance_snapshot_with_options_async(instance_id, request, headers, runtime)
def list_instance_statistics_with_options(
self,
request: pai_dsw_20220101_models.ListInstanceStatisticsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstanceStatisticsResponse:
"""
@summary 获取实例统计信息
@param request: ListInstanceStatisticsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstanceStatisticsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.workspace_ids):
query['WorkspaceIds'] = request.workspace_ids
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstanceStatistics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instancestatistics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceStatisticsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceStatisticsResponse(),
self.execute(params, req, runtime)
)
async def list_instance_statistics_with_options_async(
self,
request: pai_dsw_20220101_models.ListInstanceStatisticsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstanceStatisticsResponse:
"""
@summary 获取实例统计信息
@param request: ListInstanceStatisticsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstanceStatisticsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.workspace_ids):
query['WorkspaceIds'] = request.workspace_ids
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstanceStatistics',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instancestatistics',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceStatisticsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstanceStatisticsResponse(),
await self.execute_async(params, req, runtime)
)
def list_instance_statistics(
self,
request: pai_dsw_20220101_models.ListInstanceStatisticsRequest,
) -> pai_dsw_20220101_models.ListInstanceStatisticsResponse:
"""
@summary 获取实例统计信息
@param request: ListInstanceStatisticsRequest
@return: ListInstanceStatisticsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.list_instance_statistics_with_options(request, headers, runtime)
async def list_instance_statistics_async(
self,
request: pai_dsw_20220101_models.ListInstanceStatisticsRequest,
) -> pai_dsw_20220101_models.ListInstanceStatisticsResponse:
"""
@summary 获取实例统计信息
@param request: ListInstanceStatisticsRequest
@return: ListInstanceStatisticsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.list_instance_statistics_with_options_async(request, headers, runtime)
def list_instances_with_options(
self,
tmp_req: pai_dsw_20220101_models.ListInstancesRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstancesResponse:
"""
@param tmp_req: ListInstancesRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstancesResponse
"""
UtilClient.validate_model(tmp_req)
request = pai_dsw_20220101_models.ListInstancesShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.labels):
request.labels_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.labels, 'Labels', 'json')
if not UtilClient.is_unset(tmp_req.tag):
request.tag_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tag, 'Tag', 'json')
query = {}
if not UtilClient.is_unset(request.accelerator_type):
query['AcceleratorType'] = request.accelerator_type
if not UtilClient.is_unset(request.accessibility):
query['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.create_user_id):
query['CreateUserId'] = request.create_user_id
if not UtilClient.is_unset(request.gpu_type):
query['GpuType'] = request.gpu_type
if not UtilClient.is_unset(request.image_name):
query['ImageName'] = request.image_name
if not UtilClient.is_unset(request.instance_id):
query['InstanceId'] = request.instance_id
if not UtilClient.is_unset(request.instance_name):
query['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.labels_shrink):
query['Labels'] = request.labels_shrink
if not UtilClient.is_unset(request.max_cpu):
query['MaxCpu'] = request.max_cpu
if not UtilClient.is_unset(request.max_gpu):
query['MaxGpu'] = request.max_gpu
if not UtilClient.is_unset(request.max_gpu_memory):
query['MaxGpuMemory'] = request.max_gpu_memory
if not UtilClient.is_unset(request.max_memory):
query['MaxMemory'] = request.max_memory
if not UtilClient.is_unset(request.min_cpu):
query['MinCpu'] = request.min_cpu
if not UtilClient.is_unset(request.min_gpu):
query['MinGpu'] = request.min_gpu
if not UtilClient.is_unset(request.min_gpu_memory):
query['MinGpuMemory'] = request.min_gpu_memory
if not UtilClient.is_unset(request.min_memory):
query['MinMemory'] = request.min_memory
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.payment_type):
query['PaymentType'] = request.payment_type
if not UtilClient.is_unset(request.resource_id):
query['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
if not UtilClient.is_unset(request.status):
query['Status'] = request.status
if not UtilClient.is_unset(request.tag_shrink):
query['Tag'] = request.tag_shrink
if not UtilClient.is_unset(request.workspace_id):
query['WorkspaceId'] = request.workspace_id
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstances',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstancesResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstancesResponse(),
self.execute(params, req, runtime)
)
async def list_instances_with_options_async(
self,
tmp_req: pai_dsw_20220101_models.ListInstancesRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.ListInstancesResponse:
"""
@param tmp_req: ListInstancesRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: ListInstancesResponse
"""
UtilClient.validate_model(tmp_req)
request = pai_dsw_20220101_models.ListInstancesShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.labels):
request.labels_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.labels, 'Labels', 'json')
if not UtilClient.is_unset(tmp_req.tag):
request.tag_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.tag, 'Tag', 'json')
query = {}
if not UtilClient.is_unset(request.accelerator_type):
query['AcceleratorType'] = request.accelerator_type
if not UtilClient.is_unset(request.accessibility):
query['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.create_user_id):
query['CreateUserId'] = request.create_user_id
if not UtilClient.is_unset(request.gpu_type):
query['GpuType'] = request.gpu_type
if not UtilClient.is_unset(request.image_name):
query['ImageName'] = request.image_name
if not UtilClient.is_unset(request.instance_id):
query['InstanceId'] = request.instance_id
if not UtilClient.is_unset(request.instance_name):
query['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.labels_shrink):
query['Labels'] = request.labels_shrink
if not UtilClient.is_unset(request.max_cpu):
query['MaxCpu'] = request.max_cpu
if not UtilClient.is_unset(request.max_gpu):
query['MaxGpu'] = request.max_gpu
if not UtilClient.is_unset(request.max_gpu_memory):
query['MaxGpuMemory'] = request.max_gpu_memory
if not UtilClient.is_unset(request.max_memory):
query['MaxMemory'] = request.max_memory
if not UtilClient.is_unset(request.min_cpu):
query['MinCpu'] = request.min_cpu
if not UtilClient.is_unset(request.min_gpu):
query['MinGpu'] = request.min_gpu
if not UtilClient.is_unset(request.min_gpu_memory):
query['MinGpuMemory'] = request.min_gpu_memory
if not UtilClient.is_unset(request.min_memory):
query['MinMemory'] = request.min_memory
if not UtilClient.is_unset(request.order):
query['Order'] = request.order
if not UtilClient.is_unset(request.page_number):
query['PageNumber'] = request.page_number
if not UtilClient.is_unset(request.page_size):
query['PageSize'] = request.page_size
if not UtilClient.is_unset(request.payment_type):
query['PaymentType'] = request.payment_type
if not UtilClient.is_unset(request.resource_id):
query['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.sort_by):
query['SortBy'] = request.sort_by
if not UtilClient.is_unset(request.status):
query['Status'] = request.status
if not UtilClient.is_unset(request.tag_shrink):
query['Tag'] = request.tag_shrink
if not UtilClient.is_unset(request.workspace_id):
query['WorkspaceId'] = request.workspace_id
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ListInstances',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances',
method='GET',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstancesResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.ListInstancesResponse(),
await self.execute_async(params, req, runtime)
)
def list_instances(
self,
request: pai_dsw_20220101_models.ListInstancesRequest,
) -> pai_dsw_20220101_models.ListInstancesResponse:
"""
@param request: ListInstancesRequest
@return: ListInstancesResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.list_instances_with_options(request, headers, runtime)
async def list_instances_async(
self,
request: pai_dsw_20220101_models.ListInstancesRequest,
) -> pai_dsw_20220101_models.ListInstancesResponse:
"""
@param request: ListInstancesRequest
@return: ListInstancesResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.list_instances_with_options_async(request, headers, runtime)
def start_instance_with_options(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.StartInstanceResponse:
"""
@summary 启动实例
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: StartInstanceResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='StartInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/start',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.StartInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.StartInstanceResponse(),
self.execute(params, req, runtime)
)
async def start_instance_with_options_async(
self,
instance_id: str,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.StartInstanceResponse:
"""
@summary 启动实例
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: StartInstanceResponse
"""
req = open_api_models.OpenApiRequest(
headers=headers
)
params = open_api_models.Params(
action='StartInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/start',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.StartInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.StartInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def start_instance(
self,
instance_id: str,
) -> pai_dsw_20220101_models.StartInstanceResponse:
"""
@summary 启动实例
@return: StartInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.start_instance_with_options(instance_id, headers, runtime)
async def start_instance_async(
self,
instance_id: str,
) -> pai_dsw_20220101_models.StartInstanceResponse:
"""
@summary 启动实例
@return: StartInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.start_instance_with_options_async(instance_id, headers, runtime)
def stop_instance_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.StopInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.StopInstanceResponse:
"""
@summary 停止实例
@param request: StopInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: StopInstanceResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.save_image):
query['SaveImage'] = request.save_image
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='StopInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/stop',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.StopInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.StopInstanceResponse(),
self.execute(params, req, runtime)
)
async def stop_instance_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.StopInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.StopInstanceResponse:
"""
@summary 停止实例
@param request: StopInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: StopInstanceResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.save_image):
query['SaveImage'] = request.save_image
req = open_api_models.OpenApiRequest(
headers=headers,
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='StopInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/stop',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.StopInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.StopInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def stop_instance(
self,
instance_id: str,
request: pai_dsw_20220101_models.StopInstanceRequest,
) -> pai_dsw_20220101_models.StopInstanceResponse:
"""
@summary 停止实例
@param request: StopInstanceRequest
@return: StopInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.stop_instance_with_options(instance_id, request, headers, runtime)
async def stop_instance_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.StopInstanceRequest,
) -> pai_dsw_20220101_models.StopInstanceResponse:
"""
@summary 停止实例
@param request: StopInstanceRequest
@return: StopInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.stop_instance_with_options_async(instance_id, request, headers, runtime)
def update_instance_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.UpdateInstanceResponse:
"""
@summary 更新实例
@param request: UpdateInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateInstanceResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.accessibility):
body['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.affinity):
body['Affinity'] = request.affinity
if not UtilClient.is_unset(request.cloud_disks):
body['CloudDisks'] = request.cloud_disks
if not UtilClient.is_unset(request.credential_config):
body['CredentialConfig'] = request.credential_config
if not UtilClient.is_unset(request.datasets):
body['Datasets'] = request.datasets
if not UtilClient.is_unset(request.disassociate_credential):
body['DisassociateCredential'] = request.disassociate_credential
if not UtilClient.is_unset(request.disassociate_datasets):
body['DisassociateDatasets'] = request.disassociate_datasets
if not UtilClient.is_unset(request.disassociate_driver):
body['DisassociateDriver'] = request.disassociate_driver
if not UtilClient.is_unset(request.disassociate_forward_infos):
body['DisassociateForwardInfos'] = request.disassociate_forward_infos
if not UtilClient.is_unset(request.disassociate_vpc):
body['DisassociateVpc'] = request.disassociate_vpc
if not UtilClient.is_unset(request.driver):
body['Driver'] = request.driver
if not UtilClient.is_unset(request.dynamic_mount):
body['DynamicMount'] = request.dynamic_mount
if not UtilClient.is_unset(request.ecs_spec):
body['EcsSpec'] = request.ecs_spec
if not UtilClient.is_unset(request.image_auth):
body['ImageAuth'] = request.image_auth
if not UtilClient.is_unset(request.image_id):
body['ImageId'] = request.image_id
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.instance_name):
body['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.priority):
body['Priority'] = request.priority
if not UtilClient.is_unset(request.requested_resource):
body['RequestedResource'] = request.requested_resource
if not UtilClient.is_unset(request.user_id):
body['UserId'] = request.user_id
if not UtilClient.is_unset(request.user_vpc):
body['UserVpc'] = request.user_vpc
if not UtilClient.is_unset(request.workspace_source):
body['WorkspaceSource'] = request.workspace_source
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='UpdateInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceResponse(),
self.execute(params, req, runtime)
)
async def update_instance_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.UpdateInstanceResponse:
"""
@summary 更新实例
@param request: UpdateInstanceRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateInstanceResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.accessibility):
body['Accessibility'] = request.accessibility
if not UtilClient.is_unset(request.affinity):
body['Affinity'] = request.affinity
if not UtilClient.is_unset(request.cloud_disks):
body['CloudDisks'] = request.cloud_disks
if not UtilClient.is_unset(request.credential_config):
body['CredentialConfig'] = request.credential_config
if not UtilClient.is_unset(request.datasets):
body['Datasets'] = request.datasets
if not UtilClient.is_unset(request.disassociate_credential):
body['DisassociateCredential'] = request.disassociate_credential
if not UtilClient.is_unset(request.disassociate_datasets):
body['DisassociateDatasets'] = request.disassociate_datasets
if not UtilClient.is_unset(request.disassociate_driver):
body['DisassociateDriver'] = request.disassociate_driver
if not UtilClient.is_unset(request.disassociate_forward_infos):
body['DisassociateForwardInfos'] = request.disassociate_forward_infos
if not UtilClient.is_unset(request.disassociate_vpc):
body['DisassociateVpc'] = request.disassociate_vpc
if not UtilClient.is_unset(request.driver):
body['Driver'] = request.driver
if not UtilClient.is_unset(request.dynamic_mount):
body['DynamicMount'] = request.dynamic_mount
if not UtilClient.is_unset(request.ecs_spec):
body['EcsSpec'] = request.ecs_spec
if not UtilClient.is_unset(request.image_auth):
body['ImageAuth'] = request.image_auth
if not UtilClient.is_unset(request.image_id):
body['ImageId'] = request.image_id
if not UtilClient.is_unset(request.image_url):
body['ImageUrl'] = request.image_url
if not UtilClient.is_unset(request.instance_name):
body['InstanceName'] = request.instance_name
if not UtilClient.is_unset(request.priority):
body['Priority'] = request.priority
if not UtilClient.is_unset(request.requested_resource):
body['RequestedResource'] = request.requested_resource
if not UtilClient.is_unset(request.user_id):
body['UserId'] = request.user_id
if not UtilClient.is_unset(request.user_vpc):
body['UserVpc'] = request.user_vpc
if not UtilClient.is_unset(request.workspace_source):
body['WorkspaceSource'] = request.workspace_source
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='UpdateInstance',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceResponse(),
await self.execute_async(params, req, runtime)
)
def update_instance(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceRequest,
) -> pai_dsw_20220101_models.UpdateInstanceResponse:
"""
@summary 更新实例
@param request: UpdateInstanceRequest
@return: UpdateInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.update_instance_with_options(instance_id, request, headers, runtime)
async def update_instance_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceRequest,
) -> pai_dsw_20220101_models.UpdateInstanceResponse:
"""
@summary 更新实例
@param request: UpdateInstanceRequest
@return: UpdateInstanceResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.update_instance_with_options_async(instance_id, request, headers, runtime)
def update_instance_labels_with_options(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceLabelsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.UpdateInstanceLabelsResponse:
"""
@summary 修改DSW实例的标签
@param request: UpdateInstanceLabelsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateInstanceLabelsResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='UpdateInstanceLabels',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/labels',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceLabelsResponse(),
self.call_api(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceLabelsResponse(),
self.execute(params, req, runtime)
)
async def update_instance_labels_with_options_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceLabelsRequest,
headers: Dict[str, str],
runtime: util_models.RuntimeOptions,
) -> pai_dsw_20220101_models.UpdateInstanceLabelsResponse:
"""
@summary 修改DSW实例的标签
@param request: UpdateInstanceLabelsRequest
@param headers: map
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateInstanceLabelsResponse
"""
UtilClient.validate_model(request)
body = {}
if not UtilClient.is_unset(request.labels):
body['Labels'] = request.labels
req = open_api_models.OpenApiRequest(
headers=headers,
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='UpdateInstanceLabels',
version='2022-01-01',
protocol='HTTPS',
pathname=f'/api/v2/instances/{OpenApiUtilClient.get_encode_param(instance_id)}/labels',
method='PUT',
auth_type='AK',
style='ROA',
req_body_type='json',
body_type='json'
)
if UtilClient.is_unset(self._signature_version) or not UtilClient.equal_string(self._signature_version, 'v4'):
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceLabelsResponse(),
await self.call_api_async(params, req, runtime)
)
else:
return TeaCore.from_map(
pai_dsw_20220101_models.UpdateInstanceLabelsResponse(),
await self.execute_async(params, req, runtime)
)
def update_instance_labels(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceLabelsRequest,
) -> pai_dsw_20220101_models.UpdateInstanceLabelsResponse:
"""
@summary 修改DSW实例的标签
@param request: UpdateInstanceLabelsRequest
@return: UpdateInstanceLabelsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return self.update_instance_labels_with_options(instance_id, request, headers, runtime)
async def update_instance_labels_async(
self,
instance_id: str,
request: pai_dsw_20220101_models.UpdateInstanceLabelsRequest,
) -> pai_dsw_20220101_models.UpdateInstanceLabelsResponse:
"""
@summary 修改DSW实例的标签
@param request: UpdateInstanceLabelsRequest
@return: UpdateInstanceLabelsResponse
"""
runtime = util_models.RuntimeOptions()
headers = {}
return await self.update_instance_labels_with_options_async(instance_id, request, headers, runtime)