adcp-20220101/alibabacloud_adcp20220101/client.py (816 lines of code) (raw):
# -*- coding: utf-8 -*-
# This file is auto-generated, don't edit it. Thanks.
from __future__ import unicode_literals
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 alibabacloud_adcp20220101 import models as adcp_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):
super(Client, self).__init__(config)
self._endpoint_rule = 'central'
self._endpoint_map = {
'cn-beijing': 'adcp.cn-beijing.aliyuncs.com',
'cn-zhangjiakou': 'adcp.cn-zhangjiakou.aliyuncs.com',
'cn-hangzhou': 'adcp.cn-hangzhou.aliyuncs.com',
'cn-shanghai': 'adcp.cn-shanghai.aliyuncs.com',
'cn-shenzhen': 'adcp.cn-shenzhen.aliyuncs.com',
'cn-heyuan': 'adcp.cn-heyuan.aliyuncs.com',
'cn-hongkong': 'adcp.cn-hongkong.aliyuncs.com',
'ap-northeast-1': 'adcp.ap-northeast-1.aliyuncs.com',
'ap-southeast-1': 'adcp.ap-southeast-1.aliyuncs.com',
'ap-southeast-5': 'adcp.ap-southeast-5.aliyuncs.com',
'ap-south-1': 'adcp.ap-south-1.aliyuncs.com',
'ap-southeast-2': 'adcp.ap-southeast-2.aliyuncs.com',
'ap-southeast-3': 'adcp.ap-southeast-3.aliyuncs.com',
'cn-chengdu': 'adcp-vpc.cn-chengdu.aliyuncs.com',
'cn-huhehaote': 'adcp.cn-huhehaote.aliyuncs.com',
'cn-qingdao': 'adcp.cn-qingdao.aliyuncs.com',
'cn-shanghai-finance-1': 'adcp-vpc.cn-shanghai-finance-1.aliyuncs.com',
'cn-wulanchabu': 'adcp.cn-wulanchabu.aliyuncs.com',
'eu-central-1': 'adcp.eu-central-1.aliyuncs.com',
'eu-west-1': 'adcp-vpc.eu-west-1.aliyuncs.com',
'me-east-1': 'adcp.me-east-1.aliyuncs.com',
'us-east-1': 'adcp.us-east-1.aliyuncs.com',
'us-west-1': 'adcp.us-west-1.aliyuncs.com'
}
self.check_config(config)
self._endpoint = self.get_endpoint('adcp', self._region_id, self._endpoint_rule, self._network, self._suffix, self._endpoint_map, self._endpoint)
def get_endpoint(self, product_id, region_id, endpoint_rule, network, suffix, endpoint_map, endpoint):
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 attach_cluster_to_hub_with_options(self, request, runtime):
"""
@summary You can search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: AttachClusterToHubRequest
@param runtime: runtime options for this request RuntimeOptions
@return: AttachClusterToHubResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.attach_to_mesh):
query['AttachToMesh'] = request.attach_to_mesh
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
body = {}
if not UtilClient.is_unset(request.cluster_ids):
body['ClusterIds'] = request.cluster_ids
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query),
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='AttachClusterToHub',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.AttachClusterToHubResponse(),
self.call_api(params, req, runtime)
)
def attach_cluster_to_hub(self, request):
"""
@summary You can search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: AttachClusterToHubRequest
@return: AttachClusterToHubResponse
"""
runtime = util_models.RuntimeOptions()
return self.attach_cluster_to_hub_with_options(request, runtime)
def change_resource_group_with_options(self, request, runtime):
"""
@summary 更新资源组
@param request: ChangeResourceGroupRequest
@param runtime: runtime options for this request RuntimeOptions
@return: ChangeResourceGroupResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.new_resource_group_id):
query['NewResourceGroupId'] = request.new_resource_group_id
if not UtilClient.is_unset(request.resource_id):
query['ResourceId'] = request.resource_id
if not UtilClient.is_unset(request.resource_type):
query['ResourceType'] = request.resource_type
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='ChangeResourceGroup',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.ChangeResourceGroupResponse(),
self.call_api(params, req, runtime)
)
def change_resource_group(self, request):
"""
@summary 更新资源组
@param request: ChangeResourceGroupRequest
@return: ChangeResourceGroupResponse
"""
runtime = util_models.RuntimeOptions()
return self.change_resource_group_with_options(request, runtime)
def create_hub_cluster_with_options(self, tmp_req, runtime):
"""
@summary Creates a master instance in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param tmp_req: CreateHubClusterRequest
@param runtime: runtime options for this request RuntimeOptions
@return: CreateHubClusterResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.CreateHubClusterShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
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.tag_shrink):
query['Tag'] = request.tag_shrink
body = {}
if not UtilClient.is_unset(request.api_server_public_eip):
body['ApiServerPublicEip'] = request.api_server_public_eip
if not UtilClient.is_unset(request.argo_server_enabled):
body['ArgoServerEnabled'] = request.argo_server_enabled
if not UtilClient.is_unset(request.audit_log_enabled):
body['AuditLogEnabled'] = request.audit_log_enabled
if not UtilClient.is_unset(request.is_enterprise_security_group):
body['IsEnterpriseSecurityGroup'] = request.is_enterprise_security_group
if not UtilClient.is_unset(request.name):
body['Name'] = request.name
if not UtilClient.is_unset(request.price_limit):
body['PriceLimit'] = request.price_limit
if not UtilClient.is_unset(request.profile):
body['Profile'] = request.profile
if not UtilClient.is_unset(request.region_id):
body['RegionId'] = request.region_id
if not UtilClient.is_unset(request.resource_group_id):
body['ResourceGroupID'] = request.resource_group_id
if not UtilClient.is_unset(request.v_switches):
body['VSwitches'] = request.v_switches
if not UtilClient.is_unset(request.vpc_id):
body['VpcId'] = request.vpc_id
if not UtilClient.is_unset(request.workflow_schedule_mode):
body['WorkflowScheduleMode'] = request.workflow_schedule_mode
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query),
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='CreateHubCluster',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.CreateHubClusterResponse(),
self.call_api(params, req, runtime)
)
def create_hub_cluster(self, request):
"""
@summary Creates a master instance in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param request: CreateHubClusterRequest
@return: CreateHubClusterResponse
"""
runtime = util_models.RuntimeOptions()
return self.create_hub_cluster_with_options(request, runtime)
def delete_hub_cluster_with_options(self, tmp_req, runtime):
"""
@summary Deletes a master cluster in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param tmp_req: DeleteHubClusterRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteHubClusterResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.DeleteHubClusterShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.retain_resources):
request.retain_resources_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.retain_resources, 'RetainResources', 'json')
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.force):
query['Force'] = request.force
if not UtilClient.is_unset(request.retain_resources_shrink):
query['RetainResources'] = request.retain_resources_shrink
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeleteHubCluster',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DeleteHubClusterResponse(),
self.call_api(params, req, runtime)
)
def delete_hub_cluster(self, request):
"""
@summary Deletes a master cluster in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param request: DeleteHubClusterRequest
@return: DeleteHubClusterResponse
"""
runtime = util_models.RuntimeOptions()
return self.delete_hub_cluster_with_options(request, runtime)
def delete_policy_instance_with_options(self, tmp_req, runtime):
"""
@summary Deletes a policy for associated clusters.
@param tmp_req: DeletePolicyInstanceRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DeletePolicyInstanceResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.DeletePolicyInstanceShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.cluster_ids):
request.cluster_ids_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.cluster_ids, 'ClusterIds', 'json')
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.cluster_ids_shrink):
query['ClusterIds'] = request.cluster_ids_shrink
if not UtilClient.is_unset(request.policy_name):
query['PolicyName'] = request.policy_name
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeletePolicyInstance',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DeletePolicyInstanceResponse(),
self.call_api(params, req, runtime)
)
def delete_policy_instance(self, request):
"""
@summary Deletes a policy for associated clusters.
@param request: DeletePolicyInstanceRequest
@return: DeletePolicyInstanceResponse
"""
runtime = util_models.RuntimeOptions()
return self.delete_policy_instance_with_options(request, runtime)
def delete_user_permission_with_options(self, request, runtime):
"""
@summary Deletes the role-based access control (RBAC) permissions of a RAM user.
@param request: DeleteUserPermissionRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DeleteUserPermissionResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.user_id):
query['UserId'] = request.user_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeleteUserPermission',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DeleteUserPermissionResponse(),
self.call_api(params, req, runtime)
)
def delete_user_permission(self, request):
"""
@summary Deletes the role-based access control (RBAC) permissions of a RAM user.
@param request: DeleteUserPermissionRequest
@return: DeleteUserPermissionResponse
"""
runtime = util_models.RuntimeOptions()
return self.delete_user_permission_with_options(request, runtime)
def deploy_policy_instance_with_options(self, tmp_req, runtime):
"""
@summary Deploys a policy instance in the clusters that are associated with a master instance.
@param tmp_req: DeployPolicyInstanceRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DeployPolicyInstanceResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.DeployPolicyInstanceShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.cluster_ids):
request.cluster_ids_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.cluster_ids, 'ClusterIds', 'json')
if not UtilClient.is_unset(tmp_req.namespaces):
request.namespaces_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.namespaces, 'Namespaces', 'json')
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.cluster_ids_shrink):
query['ClusterIds'] = request.cluster_ids_shrink
if not UtilClient.is_unset(request.namespaces_shrink):
query['Namespaces'] = request.namespaces_shrink
if not UtilClient.is_unset(request.policy_action):
query['PolicyAction'] = request.policy_action
if not UtilClient.is_unset(request.policy_name):
query['PolicyName'] = request.policy_name
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DeployPolicyInstance',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DeployPolicyInstanceResponse(),
self.call_api(params, req, runtime)
)
def deploy_policy_instance(self, request):
"""
@summary Deploys a policy instance in the clusters that are associated with a master instance.
@param request: DeployPolicyInstanceRequest
@return: DeployPolicyInstanceResponse
"""
runtime = util_models.RuntimeOptions()
return self.deploy_policy_instance_with_options(request, runtime)
def describe_hub_cluster_details_with_options(self, request, runtime):
"""
@summary Queries the details of a master instance in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param request: DescribeHubClusterDetailsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeHubClusterDetailsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeHubClusterDetails',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeHubClusterDetailsResponse(),
self.call_api(params, req, runtime)
)
def describe_hub_cluster_details(self, request):
"""
@summary Queries the details of a master instance in Alibaba Cloud Distributed Cloud Container Platform (ACK One).
@param request: DescribeHubClusterDetailsRequest
@return: DescribeHubClusterDetailsResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_hub_cluster_details_with_options(request, runtime)
def describe_hub_cluster_kubeconfig_with_options(self, request, runtime):
"""
@summary Queries the kubeconfig file of a Distributed Cloud Container Platform for Kubernetes (ACK One) cluster. In addition to the Container Service for Kubernetes (ACK) console, you can also use the Kubernetes CLI kubectl to manage clusters and applications. If you use kubectl to manage an ACK cluster, you must obtain the kubeconfig file of the cluster and use kubectl to connect to the cluster.
@param request: DescribeHubClusterKubeconfigRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeHubClusterKubeconfigResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.private_ip_address):
query['PrivateIpAddress'] = request.private_ip_address
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeHubClusterKubeconfig',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeHubClusterKubeconfigResponse(),
self.call_api(params, req, runtime)
)
def describe_hub_cluster_kubeconfig(self, request):
"""
@summary Queries the kubeconfig file of a Distributed Cloud Container Platform for Kubernetes (ACK One) cluster. In addition to the Container Service for Kubernetes (ACK) console, you can also use the Kubernetes CLI kubectl to manage clusters and applications. If you use kubectl to manage an ACK cluster, you must obtain the kubeconfig file of the cluster and use kubectl to connect to the cluster.
@param request: DescribeHubClusterKubeconfigRequest
@return: DescribeHubClusterKubeconfigResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_hub_cluster_kubeconfig_with_options(request, runtime)
def describe_hub_cluster_logs_with_options(self, request, runtime):
"""
@summary Queries the logs of the Fleet instance of a multi-cluster fleet of Distributed Cloud Container Platform for Kubernetes (ACK One).
@param request: DescribeHubClusterLogsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeHubClusterLogsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeHubClusterLogs',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeHubClusterLogsResponse(),
self.call_api(params, req, runtime)
)
def describe_hub_cluster_logs(self, request):
"""
@summary Queries the logs of the Fleet instance of a multi-cluster fleet of Distributed Cloud Container Platform for Kubernetes (ACK One).
@param request: DescribeHubClusterLogsRequest
@return: DescribeHubClusterLogsResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_hub_cluster_logs_with_options(request, runtime)
def describe_hub_clusters_with_options(self, tmp_req, runtime):
"""
@summary Queries the Distributed Cloud Container Platform for Kubernetes (ACK One) clusters that are created by the current user.
@param tmp_req: DescribeHubClustersRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeHubClustersResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.DescribeHubClustersShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
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.profile):
query['Profile'] = request.profile
if not UtilClient.is_unset(request.resource_group_id):
query['ResourceGroupId'] = request.resource_group_id
if not UtilClient.is_unset(request.tag_shrink):
query['Tag'] = request.tag_shrink
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeHubClusters',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeHubClustersResponse(),
self.call_api(params, req, runtime)
)
def describe_hub_clusters(self, request):
"""
@summary Queries the Distributed Cloud Container Platform for Kubernetes (ACK One) clusters that are created by the current user.
@param request: DescribeHubClustersRequest
@return: DescribeHubClustersResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_hub_clusters_with_options(request, runtime)
def describe_managed_clusters_with_options(self, request, runtime):
"""
@summary Alibaba Cloud CLI allows you to search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: DescribeManagedClustersRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeManagedClustersResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeManagedClusters',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeManagedClustersResponse(),
self.call_api(params, req, runtime)
)
def describe_managed_clusters(self, request):
"""
@summary Alibaba Cloud CLI allows you to search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: DescribeManagedClustersRequest
@return: DescribeManagedClustersResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_managed_clusters_with_options(request, runtime)
def describe_policies_with_options(self, runtime):
"""
@summary Queries a list of policies.
@param request: DescribePoliciesRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribePoliciesResponse
"""
req = open_api_models.OpenApiRequest()
params = open_api_models.Params(
action='DescribePolicies',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribePoliciesResponse(),
self.call_api(params, req, runtime)
)
def describe_policies(self):
"""
@summary Queries a list of policies.
@return: DescribePoliciesResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_policies_with_options(runtime)
def describe_policy_details_with_options(self, request, runtime):
"""
@summary Queries detailed information about a policy.
@param request: DescribePolicyDetailsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribePolicyDetailsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.policy_name):
query['PolicyName'] = request.policy_name
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribePolicyDetails',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribePolicyDetailsResponse(),
self.call_api(params, req, runtime)
)
def describe_policy_details(self, request):
"""
@summary Queries detailed information about a policy.
@param request: DescribePolicyDetailsRequest
@return: DescribePolicyDetailsResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_policy_details_with_options(request, runtime)
def describe_policy_governance_in_cluster_with_options(self, request, runtime):
"""
@summary Queries detailed information about the policies used by the clusters that are associated with a master instance.
@param request: DescribePolicyGovernanceInClusterRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribePolicyGovernanceInClusterResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribePolicyGovernanceInCluster',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribePolicyGovernanceInClusterResponse(),
self.call_api(params, req, runtime)
)
def describe_policy_governance_in_cluster(self, request):
"""
@summary Queries detailed information about the policies used by the clusters that are associated with a master instance.
@param request: DescribePolicyGovernanceInClusterRequest
@return: DescribePolicyGovernanceInClusterResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_policy_governance_in_cluster_with_options(request, runtime)
def describe_policy_instances_with_options(self, request, runtime):
"""
@summary Queries policy instances that are deployed in the clusters associated with a master instance.
@param request: DescribePolicyInstancesRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribePolicyInstancesResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.policy_name):
query['PolicyName'] = request.policy_name
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribePolicyInstances',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribePolicyInstancesResponse(),
self.call_api(params, req, runtime)
)
def describe_policy_instances(self, request):
"""
@summary Queries policy instances that are deployed in the clusters associated with a master instance.
@param request: DescribePolicyInstancesRequest
@return: DescribePolicyInstancesResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_policy_instances_with_options(request, runtime)
def describe_policy_instances_status_with_options(self, request, runtime):
"""
@summary Queries detailed information about policy instances that are deployed in the clusters associated with a master instance.
@param request: DescribePolicyInstancesStatusRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribePolicyInstancesStatusResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribePolicyInstancesStatus',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribePolicyInstancesStatusResponse(),
self.call_api(params, req, runtime)
)
def describe_policy_instances_status(self, request):
"""
@summary Queries detailed information about policy instances that are deployed in the clusters associated with a master instance.
@param request: DescribePolicyInstancesStatusRequest
@return: DescribePolicyInstancesStatusResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_policy_instances_status_with_options(request, runtime)
def describe_regions_with_options(self, request, runtime):
"""
@summary 查询地域列表
@param request: DescribeRegionsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeRegionsResponse
"""
UtilClient.validate_model(request)
query = OpenApiUtilClient.query(UtilClient.to_map(request))
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeRegions',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='GET',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeRegionsResponse(),
self.call_api(params, req, runtime)
)
def describe_regions(self, request):
"""
@summary 查询地域列表
@param request: DescribeRegionsRequest
@return: DescribeRegionsResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_regions_with_options(request, runtime)
def describe_user_permissions_with_options(self, request, runtime):
"""
@summary Query the permissions of a Resource Access Management (RAM) user.
@param request: DescribeUserPermissionsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DescribeUserPermissionsResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.user_id):
query['UserId'] = request.user_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='DescribeUserPermissions',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DescribeUserPermissionsResponse(),
self.call_api(params, req, runtime)
)
def describe_user_permissions(self, request):
"""
@summary Query the permissions of a Resource Access Management (RAM) user.
@param request: DescribeUserPermissionsRequest
@return: DescribeUserPermissionsResponse
"""
runtime = util_models.RuntimeOptions()
return self.describe_user_permissions_with_options(request, runtime)
def detach_cluster_from_hub_with_options(self, request, runtime):
"""
@summary Alibaba Cloud CLI allows you to search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: DetachClusterFromHubRequest
@param runtime: runtime options for this request RuntimeOptions
@return: DetachClusterFromHubResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.detach_from_mesh):
query['DetachFromMesh'] = request.detach_from_mesh
body = {}
if not UtilClient.is_unset(request.cluster_ids):
body['ClusterIds'] = request.cluster_ids
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query),
body=OpenApiUtilClient.parse_to_map(body)
)
params = open_api_models.Params(
action='DetachClusterFromHub',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.DetachClusterFromHubResponse(),
self.call_api(params, req, runtime)
)
def detach_cluster_from_hub(self, request):
"""
@summary Alibaba Cloud CLI allows you to search for API operations, call and debug API operations online, and dynamically generate executable sample code for SDKs.
@param request: DetachClusterFromHubRequest
@return: DetachClusterFromHubResponse
"""
runtime = util_models.RuntimeOptions()
return self.detach_cluster_from_hub_with_options(request, runtime)
def grant_user_permission_with_options(self, request, runtime):
"""
@summary Grants role-based access control (RBAC) permissions to Resource Access Management (RAM) users or RAM roles. System policies can be attached to RAM users to grant only the operation permissions on Distributed Cloud Container Platform for Kubernetes (ACK One) cluster resources. The operation permissions include creating and viewing instances. If you want to perform operations on Kubernetes resources in a specific cluster by using a RAM user or assuming a RAM role, such as creating GitOps applications and Argo workflows, you must grant RBAC permissions to the RAM user or RAM role to perform operations on the specified ACK One cluster and namespace. This topic describes how to grant RBAC permissions to a RAM user or RAM role.
@description To call this API operation to grant permissions to a RAM user or RAM role on a specific cluster, you must use an Alibaba Cloud account, the account that is used to create the cluster, or a RAM user that has the cluster administrator permissions. A regular RAM user does not have the permissions to call this operation.
Before you grant RBAC permissions to a RAM user or RAM role on a cluster, you must grant the operation permissions to the RAM user or RAM role on the specified cluster. For more information, see [Attach a system permission policy to a RAM user or RAM role](https://help.aliyun.com/document_detail/613486.html).
For more information, see [Authorization overview](https://help.aliyun.com/document_detail/613468.html).
@param request: GrantUserPermissionRequest
@param runtime: runtime options for this request RuntimeOptions
@return: GrantUserPermissionResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.is_ram_role):
query['IsRamRole'] = request.is_ram_role
if not UtilClient.is_unset(request.namespace):
query['Namespace'] = request.namespace
if not UtilClient.is_unset(request.role_name):
query['RoleName'] = request.role_name
if not UtilClient.is_unset(request.role_type):
query['RoleType'] = request.role_type
if not UtilClient.is_unset(request.user_id):
query['UserId'] = request.user_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GrantUserPermission',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.GrantUserPermissionResponse(),
self.call_api(params, req, runtime)
)
def grant_user_permission(self, request):
"""
@summary Grants role-based access control (RBAC) permissions to Resource Access Management (RAM) users or RAM roles. System policies can be attached to RAM users to grant only the operation permissions on Distributed Cloud Container Platform for Kubernetes (ACK One) cluster resources. The operation permissions include creating and viewing instances. If you want to perform operations on Kubernetes resources in a specific cluster by using a RAM user or assuming a RAM role, such as creating GitOps applications and Argo workflows, you must grant RBAC permissions to the RAM user or RAM role to perform operations on the specified ACK One cluster and namespace. This topic describes how to grant RBAC permissions to a RAM user or RAM role.
@description To call this API operation to grant permissions to a RAM user or RAM role on a specific cluster, you must use an Alibaba Cloud account, the account that is used to create the cluster, or a RAM user that has the cluster administrator permissions. A regular RAM user does not have the permissions to call this operation.
Before you grant RBAC permissions to a RAM user or RAM role on a cluster, you must grant the operation permissions to the RAM user or RAM role on the specified cluster. For more information, see [Attach a system permission policy to a RAM user or RAM role](https://help.aliyun.com/document_detail/613486.html).
For more information, see [Authorization overview](https://help.aliyun.com/document_detail/613468.html).
@param request: GrantUserPermissionRequest
@return: GrantUserPermissionResponse
"""
runtime = util_models.RuntimeOptions()
return self.grant_user_permission_with_options(request, runtime)
def grant_user_permissions_with_options(self, tmp_req, runtime):
"""
@deprecated OpenAPI GrantUserPermissions is deprecated, please use adcp::2022-01-01::GrantUserPermission instead.
@summary Grant permissions to a Resource Access Management (RAM) user.
@param tmp_req: GrantUserPermissionsRequest
@param runtime: runtime options for this request RuntimeOptions
@return: GrantUserPermissionsResponse
Deprecated
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.GrantUserPermissionsShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.permissions):
request.permissions_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.permissions, 'Permissions', 'json')
query = {}
if not UtilClient.is_unset(request.permissions_shrink):
query['Permissions'] = request.permissions_shrink
if not UtilClient.is_unset(request.user_id):
query['UserId'] = request.user_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='GrantUserPermissions',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.GrantUserPermissionsResponse(),
self.call_api(params, req, runtime)
)
def grant_user_permissions(self, request):
"""
@deprecated OpenAPI GrantUserPermissions is deprecated, please use adcp::2022-01-01::GrantUserPermission instead.
@summary Grant permissions to a Resource Access Management (RAM) user.
@param request: GrantUserPermissionsRequest
@return: GrantUserPermissionsResponse
Deprecated
"""
runtime = util_models.RuntimeOptions()
return self.grant_user_permissions_with_options(request, runtime)
def update_hub_cluster_feature_with_options(self, tmp_req, runtime):
"""
@summary Updates the configurations of a Container Service for Kubernetes (ACK) cluster that serves as a master instance.
@param tmp_req: UpdateHubClusterFeatureRequest
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateHubClusterFeatureResponse
"""
UtilClient.validate_model(tmp_req)
request = adcp_20220101_models.UpdateHubClusterFeatureShrinkRequest()
OpenApiUtilClient.convert(tmp_req, request)
if not UtilClient.is_unset(tmp_req.access_control_list):
request.access_control_list_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.access_control_list, 'AccessControlList', 'json')
if not UtilClient.is_unset(tmp_req.v_switches):
request.v_switches_shrink = OpenApiUtilClient.array_to_string_with_specified_style(tmp_req.v_switches, 'VSwitches', 'json')
query = {}
if not UtilClient.is_unset(request.access_control_list_shrink):
query['AccessControlList'] = request.access_control_list_shrink
if not UtilClient.is_unset(request.api_server_eip_id):
query['ApiServerEipId'] = request.api_server_eip_id
if not UtilClient.is_unset(request.argo_cdenabled):
query['ArgoCDEnabled'] = request.argo_cdenabled
if not UtilClient.is_unset(request.argo_cdhaenabled):
query['ArgoCDHAEnabled'] = request.argo_cdhaenabled
if not UtilClient.is_unset(request.argo_events_enabled):
query['ArgoEventsEnabled'] = request.argo_events_enabled
if not UtilClient.is_unset(request.argo_server_enabled):
query['ArgoServerEnabled'] = request.argo_server_enabled
if not UtilClient.is_unset(request.audit_log_enabled):
query['AuditLogEnabled'] = request.audit_log_enabled
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.deletion_protection):
query['DeletionProtection'] = request.deletion_protection
if not UtilClient.is_unset(request.enable_mesh):
query['EnableMesh'] = request.enable_mesh
if not UtilClient.is_unset(request.gateway_enabled):
query['GatewayEnabled'] = request.gateway_enabled
if not UtilClient.is_unset(request.monitor_enabled):
query['MonitorEnabled'] = request.monitor_enabled
if not UtilClient.is_unset(request.name):
query['Name'] = request.name
if not UtilClient.is_unset(request.price_limit):
query['PriceLimit'] = request.price_limit
if not UtilClient.is_unset(request.public_access_enabled):
query['PublicAccessEnabled'] = request.public_access_enabled
if not UtilClient.is_unset(request.public_api_server_enabled):
query['PublicApiServerEnabled'] = request.public_api_server_enabled
if not UtilClient.is_unset(request.v_switches_shrink):
query['VSwitches'] = request.v_switches_shrink
if not UtilClient.is_unset(request.workflow_schedule_mode):
query['WorkflowScheduleMode'] = request.workflow_schedule_mode
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='UpdateHubClusterFeature',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.UpdateHubClusterFeatureResponse(),
self.call_api(params, req, runtime)
)
def update_hub_cluster_feature(self, request):
"""
@summary Updates the configurations of a Container Service for Kubernetes (ACK) cluster that serves as a master instance.
@param request: UpdateHubClusterFeatureRequest
@return: UpdateHubClusterFeatureResponse
"""
runtime = util_models.RuntimeOptions()
return self.update_hub_cluster_feature_with_options(request, runtime)
def update_user_permission_with_options(self, request, runtime):
"""
@summary Updates the role-based access control (RBAC) permissions of a RAM user.
@param request: UpdateUserPermissionRequest
@param runtime: runtime options for this request RuntimeOptions
@return: UpdateUserPermissionResponse
"""
UtilClient.validate_model(request)
query = {}
if not UtilClient.is_unset(request.cluster_id):
query['ClusterId'] = request.cluster_id
if not UtilClient.is_unset(request.namespace):
query['Namespace'] = request.namespace
if not UtilClient.is_unset(request.role_name):
query['RoleName'] = request.role_name
if not UtilClient.is_unset(request.role_type):
query['RoleType'] = request.role_type
if not UtilClient.is_unset(request.user_id):
query['UserId'] = request.user_id
req = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(query)
)
params = open_api_models.Params(
action='UpdateUserPermission',
version='2022-01-01',
protocol='HTTPS',
pathname='/',
method='POST',
auth_type='AK',
style='RPC',
req_body_type='formData',
body_type='json'
)
return TeaCore.from_map(
adcp_20220101_models.UpdateUserPermissionResponse(),
self.call_api(params, req, runtime)
)
def update_user_permission(self, request):
"""
@summary Updates the role-based access control (RBAC) permissions of a RAM user.
@param request: UpdateUserPermissionRequest
@return: UpdateUserPermissionResponse
"""
runtime = util_models.RuntimeOptions()
return self.update_user_permission_with_options(request, runtime)