# -*- coding: utf8 -*- # Copyright (c) 2017-2021 THL A29 Limited, a Tencent company. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import json from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException from tencentcloud.common.abstract_client import AbstractClient from tencentcloud.tat.v20201028 import models class TatClient(AbstractClient): _apiVersion = '2020-10-28' _endpoint = 'tat.tencentcloudapi.com' _service = 'tat' def CancelInvocation(self, request): """取消一台或多台实例执行的命令 * 如果命令还未下发到agent,任务状态处于PENDING、DELIVERING、DELIVER_DELAYED,取消后任务状态是CANCELLED * 如果命令已下发到agent,任务状态处于RUNNING, 取消后任务状态是TERMINATED :param request: Request instance for CancelInvocation. :type request: :class:`tencentcloud.tat.v20201028.models.CancelInvocationRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.CancelInvocationResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CancelInvocation", params, headers=headers) response = json.loads(body) model = models.CancelInvocationResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def CreateCommand(self, request): """此接口用于创建命令。 :param request: Request instance for CreateCommand. :type request: :class:`tencentcloud.tat.v20201028.models.CreateCommandRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.CreateCommandResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CreateCommand", params, headers=headers) response = json.loads(body) model = models.CreateCommandResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def CreateInvoker(self, request): """此接口用于创建执行器。 :param request: Request instance for CreateInvoker. :type request: :class:`tencentcloud.tat.v20201028.models.CreateInvokerRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.CreateInvokerResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CreateInvoker", params, headers=headers) response = json.loads(body) model = models.CreateInvokerResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def CreateRegisterCode(self, request): """接口用于创建注册码。 :param request: Request instance for CreateRegisterCode. :type request: :class:`tencentcloud.tat.v20201028.models.CreateRegisterCodeRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.CreateRegisterCodeResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CreateRegisterCode", params, headers=headers) response = json.loads(body) model = models.CreateRegisterCodeResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteCommand(self, request): """此接口用于删除命令。 如果命令与执行器关联,则无法被删除。 :param request: Request instance for DeleteCommand. :type request: :class:`tencentcloud.tat.v20201028.models.DeleteCommandRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DeleteCommandResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteCommand", params, headers=headers) response = json.loads(body) model = models.DeleteCommandResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteCommands(self, request): """批量删除命令接口 :param request: Request instance for DeleteCommands. :type request: :class:`tencentcloud.tat.v20201028.models.DeleteCommandsRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DeleteCommandsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteCommands", params, headers=headers) response = json.loads(body) model = models.DeleteCommandsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteInvoker(self, request): """此接口用于删除执行器。 :param request: Request instance for DeleteInvoker. :type request: :class:`tencentcloud.tat.v20201028.models.DeleteInvokerRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DeleteInvokerResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteInvoker", params, headers=headers) response = json.loads(body) model = models.DeleteInvokerResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteRegisterCodes(self, request): """此接口用于批量删除注册码。 :param request: Request instance for DeleteRegisterCodes. :type request: :class:`tencentcloud.tat.v20201028.models.DeleteRegisterCodesRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DeleteRegisterCodesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteRegisterCodes", params, headers=headers) response = json.loads(body) model = models.DeleteRegisterCodesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteRegisterInstance(self, request): """接口用于删除托管实例。 :param request: Request instance for DeleteRegisterInstance. :type request: :class:`tencentcloud.tat.v20201028.models.DeleteRegisterInstanceRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DeleteRegisterInstanceResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteRegisterInstance", params, headers=headers) response = json.loads(body) model = models.DeleteRegisterInstanceResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeAutomationAgentStatus(self, request): """此接口用于查询自动化助手客户端的状态。 :param request: Request instance for DescribeAutomationAgentStatus. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeAutomationAgentStatusRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeAutomationAgentStatusResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeAutomationAgentStatus", params, headers=headers) response = json.loads(body) model = models.DescribeAutomationAgentStatusResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeCommands(self, request): """此接口用于查询命令详情。 :param request: Request instance for DescribeCommands. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeCommandsRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeCommandsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeCommands", params, headers=headers) response = json.loads(body) model = models.DescribeCommandsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeInvocationTasks(self, request): """此接口用于查询执行任务详情。 :param request: Request instance for DescribeInvocationTasks. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeInvocationTasksRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeInvocationTasksResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeInvocationTasks", params, headers=headers) response = json.loads(body) model = models.DescribeInvocationTasksResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeInvocations(self, request): """此接口用于查询执行活动详情。 :param request: Request instance for DescribeInvocations. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeInvocationsRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeInvocationsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeInvocations", params, headers=headers) response = json.loads(body) model = models.DescribeInvocationsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeInvokerRecords(self, request): """此接口用于查询执行器的执行记录。 :param request: Request instance for DescribeInvokerRecords. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeInvokerRecordsRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeInvokerRecordsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeInvokerRecords", params, headers=headers) response = json.loads(body) model = models.DescribeInvokerRecordsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeInvokers(self, request): """此接口用于查询执行器信息。 :param request: Request instance for DescribeInvokers. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeInvokersRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeInvokersResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeInvokers", params, headers=headers) response = json.loads(body) model = models.DescribeInvokersResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeQuotas(self, request): """此接口用于获取配额信息 :param request: Request instance for DescribeQuotas. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeQuotasRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeQuotasResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeQuotas", params, headers=headers) response = json.loads(body) model = models.DescribeQuotasResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeRegions(self, request): """此接口用于查询 TAT 产品后台地域列表。 RegionState 为 AVAILABLE,代表该地域的 TAT 后台服务已经可用;未返回,代表该地域的 TAT 后台服务尚不可用。 :param request: Request instance for DescribeRegions. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeRegionsRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeRegionsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeRegions", params, headers=headers) response = json.loads(body) model = models.DescribeRegionsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeRegisterCodes(self, request): """接口用于查询注册码信息。 :param request: Request instance for DescribeRegisterCodes. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeRegisterCodesRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeRegisterCodesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeRegisterCodes", params, headers=headers) response = json.loads(body) model = models.DescribeRegisterCodesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeRegisterInstances(self, request): """接口用于查询被托管的实例信息。 :param request: Request instance for DescribeRegisterInstances. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeRegisterInstancesRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeRegisterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeRegisterInstances", params, headers=headers) response = json.loads(body) model = models.DescribeRegisterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeScenes(self, request): """此接口用于查询场景详情。 :param request: Request instance for DescribeScenes. :type request: :class:`tencentcloud.tat.v20201028.models.DescribeScenesRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DescribeScenesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeScenes", params, headers=headers) response = json.loads(body) model = models.DescribeScenesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DisableInvoker(self, request): """此接口用于停止执行器。 :param request: Request instance for DisableInvoker. :type request: :class:`tencentcloud.tat.v20201028.models.DisableInvokerRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DisableInvokerResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DisableInvoker", params, headers=headers) response = json.loads(body) model = models.DisableInvokerResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DisableRegisterCodes(self, request): """此接口用于批量禁用注册码。 :param request: Request instance for DisableRegisterCodes. :type request: :class:`tencentcloud.tat.v20201028.models.DisableRegisterCodesRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.DisableRegisterCodesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DisableRegisterCodes", params, headers=headers) response = json.loads(body) model = models.DisableRegisterCodesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def EnableInvoker(self, request): """此接口用于启用执行器。 :param request: Request instance for EnableInvoker. :type request: :class:`tencentcloud.tat.v20201028.models.EnableInvokerRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.EnableInvokerResponse` """ try: params = request._serialize() headers = request.headers body = self.call("EnableInvoker", params, headers=headers) response = json.loads(body) model = models.EnableInvokerResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def InvokeCommand(self, request): """在指定的实例上触发命令,调用成功返回执行活动ID(inv-xxxxxxxx),每个执行活动内部有一个或多个执行任务(invt-xxxxxxxx),每个执行任务代表命令在一台 CVM 或一台 Lighthouse 上的执行记录。 * 如果指定实例未安装 agent,或 agent 不在线,返回失败 * 如果命令类型与 agent 运行环境不符,返回失败 * 指定的实例需要处于 VPC 网络 * 指定的实例需要处于 RUNNING 状态 * 不可同时指定 CVM 和 Lighthouse :param request: Request instance for InvokeCommand. :type request: :class:`tencentcloud.tat.v20201028.models.InvokeCommandRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.InvokeCommandResponse` """ try: params = request._serialize() headers = request.headers body = self.call("InvokeCommand", params, headers=headers) response = json.loads(body) model = models.InvokeCommandResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyCommand(self, request): """此接口用于修改命令。 :param request: Request instance for ModifyCommand. :type request: :class:`tencentcloud.tat.v20201028.models.ModifyCommandRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.ModifyCommandResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyCommand", params, headers=headers) response = json.loads(body) model = models.ModifyCommandResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyInvoker(self, request): """此接口用于修改执行器。 :param request: Request instance for ModifyInvoker. :type request: :class:`tencentcloud.tat.v20201028.models.ModifyInvokerRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.ModifyInvokerResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyInvoker", params, headers=headers) response = json.loads(body) model = models.ModifyInvokerResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyRegisterInstance(self, request): """接口用于修改托管实例信息。 :param request: Request instance for ModifyRegisterInstance. :type request: :class:`tencentcloud.tat.v20201028.models.ModifyRegisterInstanceRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.ModifyRegisterInstanceResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyRegisterInstance", params, headers=headers) response = json.loads(body) model = models.ModifyRegisterInstanceResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def PreviewReplacedCommandContent(self, request): """此接口用于预览自定义参数替换后的命令内容。不会触发真实执行。 :param request: Request instance for PreviewReplacedCommandContent. :type request: :class:`tencentcloud.tat.v20201028.models.PreviewReplacedCommandContentRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.PreviewReplacedCommandContentResponse` """ try: params = request._serialize() headers = request.headers body = self.call("PreviewReplacedCommandContent", params, headers=headers) response = json.loads(body) model = models.PreviewReplacedCommandContentResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def RunCommand(self, request): """执行命令,调用成功返回执行活动ID(inv-xxxxxxxx),每个执行活动内部有一个或多个执行任务(invt-xxxxxxxx),每个执行任务代表命令在一台 CVM 或一台 Lighthouse 上的执行记录。 * 如果指定实例未安装 agent,或 agent 不在线,返回失败 * 如果命令类型与 agent 运行环境不符,返回失败 * 指定的实例需要处于 VPC 网络 * 指定的实例需要处于 `RUNNING` 状态 * 不可同时指定 CVM 和 Lighthouse :param request: Request instance for RunCommand. :type request: :class:`tencentcloud.tat.v20201028.models.RunCommandRequest` :rtype: :class:`tencentcloud.tat.v20201028.models.RunCommandResponse` """ try: params = request._serialize() headers = request.headers body = self.call("RunCommand", params, headers=headers) response = json.loads(body) model = models.RunCommandResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e))
Memory