Procházet zdrojové kódy

CS SDK Auto Released By xiaobing.meng,Version:1.60.10

Signed-off-by: sdk-team <sdk-team@alibabacloud.com>
sdk-team před 6 roky
rodič
revize
3000b5bb06

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2019-05-16 Version: 1.60.10
+1, Update SDK version
+2, Add api DescribeClusterAddonsVersion
+
+
 2019-05-16 Version: 1.60.9
 1, This is an example of release-log.
 2, Please strictly follow this format to edit in English.

+ 1 - 1
services/cs/attach_instances.go

@@ -89,7 +89,7 @@ func CreateAttachInstancesRequest() (request *AttachInstancesRequest) {
 	request = &AttachInstancesRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "AttachInstances", "/clusters/[ClusterId]/attach", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "AttachInstances", "/clusters/[ClusterId]/attach", "", "")
 	request.Method = requests.POST
 	return
 }

+ 1 - 1
services/cs/check_aliyun_cs_service_role.go

@@ -88,7 +88,7 @@ func CreateCheckAliyunCSServiceRoleRequest() (request *CheckAliyunCSServiceRoleR
 	request = &CheckAliyunCSServiceRoleRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "CheckAliyunCSServiceRole", "/aliyuncsrole/status", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "CheckAliyunCSServiceRole", "/aliyuncsrole/status", "", "")
 	request.Method = requests.GET
 	return
 }

+ 28 - 5
services/cs/client.go

@@ -18,6 +18,7 @@ package cs
 import (
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
 )
 
 // Client is the sdk client struct, each func corresponds to an OpenAPI
@@ -32,6 +33,20 @@ func NewClient() (client *Client, err error) {
 	return
 }
 
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	return
+}
+
 // NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
 // this is the common api to create a sdk client
 func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
@@ -41,7 +56,7 @@ func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.C
 }
 
 // NewClientWithAccessKey is a shortcut to create sdk client with accesskey
-// usage: https://help.aliyun.com/document_detail/66217.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
@@ -49,7 +64,7 @@ func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (clie
 }
 
 // NewClientWithStsToken is a shortcut to create sdk client with sts token
-// usage: https://help.aliyun.com/document_detail/66222.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
@@ -57,15 +72,23 @@ func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToke
 }
 
 // NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
-// usage: https://help.aliyun.com/document_detail/66222.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
 	return
 }
 
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	return
+}
+
 // NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
-// usage: https://help.aliyun.com/document_detail/66223.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithEcsRamRole(regionId, roleName)
@@ -73,7 +96,7 @@ func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client,
 }
 
 // NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
-// attention: rsa key pair auth is only Japan regions available
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)

+ 1 - 1
services/cs/create_cluster.go

@@ -88,7 +88,7 @@ func CreateCreateClusterRequest() (request *CreateClusterRequest) {
 	request = &CreateClusterRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "CreateCluster", "/clusters", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "CreateCluster", "/clusters", "", "")
 	request.Method = requests.POST
 	return
 }

+ 104 - 0
services/cs/create_cluster_by_resources_group.go

@@ -0,0 +1,104 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateClusterByResourcesGroup invokes the cs.CreateClusterByResourcesGroup API synchronously
+// api document: https://help.aliyun.com/api/cs/createclusterbyresourcesgroup.html
+func (client *Client) CreateClusterByResourcesGroup(request *CreateClusterByResourcesGroupRequest) (response *CreateClusterByResourcesGroupResponse, err error) {
+	response = CreateCreateClusterByResourcesGroupResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateClusterByResourcesGroupWithChan invokes the cs.CreateClusterByResourcesGroup API asynchronously
+// api document: https://help.aliyun.com/api/cs/createclusterbyresourcesgroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateClusterByResourcesGroupWithChan(request *CreateClusterByResourcesGroupRequest) (<-chan *CreateClusterByResourcesGroupResponse, <-chan error) {
+	responseChan := make(chan *CreateClusterByResourcesGroupResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateClusterByResourcesGroup(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateClusterByResourcesGroupWithCallback invokes the cs.CreateClusterByResourcesGroup API asynchronously
+// api document: https://help.aliyun.com/api/cs/createclusterbyresourcesgroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateClusterByResourcesGroupWithCallback(request *CreateClusterByResourcesGroupRequest, callback func(response *CreateClusterByResourcesGroupResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateClusterByResourcesGroupResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateClusterByResourcesGroup(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateClusterByResourcesGroupRequest is the request struct for api CreateClusterByResourcesGroup
+type CreateClusterByResourcesGroupRequest struct {
+	*requests.RoaRequest
+	ResourceGroupId string `position:"Path" name:"ResourceGroupId"`
+}
+
+// CreateClusterByResourcesGroupResponse is the response struct for api CreateClusterByResourcesGroup
+type CreateClusterByResourcesGroupResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateCreateClusterByResourcesGroupRequest creates a request to invoke CreateClusterByResourcesGroup API
+func CreateCreateClusterByResourcesGroupRequest() (request *CreateClusterByResourcesGroupRequest) {
+	request = &CreateClusterByResourcesGroupRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "CreateClusterByResourcesGroup", "/resource_groups/[ResourceGroupId]/clusters", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateCreateClusterByResourcesGroupResponse creates a response to parse from CreateClusterByResourcesGroup response
+func CreateCreateClusterByResourcesGroupResponse() (response *CreateClusterByResourcesGroupResponse) {
+	response = &CreateClusterByResourcesGroupResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/cs/create_trigger_hook.go

@@ -0,0 +1,103 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateTriggerHook invokes the cs.CreateTriggerHook API synchronously
+// api document: https://help.aliyun.com/api/cs/createtriggerhook.html
+func (client *Client) CreateTriggerHook(request *CreateTriggerHookRequest) (response *CreateTriggerHookResponse, err error) {
+	response = CreateCreateTriggerHookResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateTriggerHookWithChan invokes the cs.CreateTriggerHook API asynchronously
+// api document: https://help.aliyun.com/api/cs/createtriggerhook.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateTriggerHookWithChan(request *CreateTriggerHookRequest) (<-chan *CreateTriggerHookResponse, <-chan error) {
+	responseChan := make(chan *CreateTriggerHookResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateTriggerHook(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateTriggerHookWithCallback invokes the cs.CreateTriggerHook API asynchronously
+// api document: https://help.aliyun.com/api/cs/createtriggerhook.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateTriggerHookWithCallback(request *CreateTriggerHookRequest, callback func(response *CreateTriggerHookResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateTriggerHookResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateTriggerHook(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateTriggerHookRequest is the request struct for api CreateTriggerHook
+type CreateTriggerHookRequest struct {
+	*requests.RoaRequest
+}
+
+// CreateTriggerHookResponse is the response struct for api CreateTriggerHook
+type CreateTriggerHookResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateCreateTriggerHookRequest creates a request to invoke CreateTriggerHook API
+func CreateCreateTriggerHookRequest() (request *CreateTriggerHookRequest) {
+	request = &CreateTriggerHookRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "CreateTriggerHook", "/hook/trigger", "", "")
+	request.Method = requests.PUT
+	return
+}
+
+// CreateCreateTriggerHookResponse creates a response to parse from CreateTriggerHook response
+func CreateCreateTriggerHookResponse() (response *CreateTriggerHookResponse) {
+	response = &CreateTriggerHookResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/cs/delete_cluster.go

@@ -89,7 +89,7 @@ func CreateDeleteClusterRequest() (request *DeleteClusterRequest) {
 	request = &DeleteClusterRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DeleteCluster", "/clusters/[ClusterId]", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DeleteCluster", "/clusters/[ClusterId]", "", "")
 	request.Method = requests.DELETE
 	return
 }

+ 1 - 1
services/cs/delete_cluster_node.go

@@ -92,7 +92,7 @@ func CreateDeleteClusterNodeRequest() (request *DeleteClusterNodeRequest) {
 	request = &DeleteClusterNodeRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DeleteClusterNode", "/clusters/[ClusterId]/ip/[Ip]", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DeleteClusterNode", "/clusters/[ClusterId]/ip/[Ip]", "", "")
 	request.Method = requests.DELETE
 	return
 }

+ 104 - 0
services/cs/delete_cluster_nodes.go

@@ -0,0 +1,104 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeleteClusterNodes invokes the cs.DeleteClusterNodes API synchronously
+// api document: https://help.aliyun.com/api/cs/deleteclusternodes.html
+func (client *Client) DeleteClusterNodes(request *DeleteClusterNodesRequest) (response *DeleteClusterNodesResponse, err error) {
+	response = CreateDeleteClusterNodesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteClusterNodesWithChan invokes the cs.DeleteClusterNodes API asynchronously
+// api document: https://help.aliyun.com/api/cs/deleteclusternodes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteClusterNodesWithChan(request *DeleteClusterNodesRequest) (<-chan *DeleteClusterNodesResponse, <-chan error) {
+	responseChan := make(chan *DeleteClusterNodesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteClusterNodes(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteClusterNodesWithCallback invokes the cs.DeleteClusterNodes API asynchronously
+// api document: https://help.aliyun.com/api/cs/deleteclusternodes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteClusterNodesWithCallback(request *DeleteClusterNodesRequest, callback func(response *DeleteClusterNodesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteClusterNodesResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteClusterNodes(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteClusterNodesRequest is the request struct for api DeleteClusterNodes
+type DeleteClusterNodesRequest struct {
+	*requests.RoaRequest
+	ClusterId string `position:"Path" name:"ClusterId"`
+}
+
+// DeleteClusterNodesResponse is the response struct for api DeleteClusterNodes
+type DeleteClusterNodesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteClusterNodesRequest creates a request to invoke DeleteClusterNodes API
+func CreateDeleteClusterNodesRequest() (request *DeleteClusterNodesRequest) {
+	request = &DeleteClusterNodesRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "DeleteClusterNodes", "/clusters/[ClusterId]/nodes", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateDeleteClusterNodesResponse creates a response to parse from DeleteClusterNodes response
+func CreateDeleteClusterNodesResponse() (response *DeleteClusterNodesResponse) {
+	response = &DeleteClusterNodesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/cs/describe_api_version.go

@@ -88,7 +88,7 @@ func CreateDescribeApiVersionRequest() (request *DescribeApiVersionRequest) {
 	request = &DescribeApiVersionRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeApiVersion", "/version", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeApiVersion", "/version", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_cluster_certs.go

@@ -89,7 +89,7 @@ func CreateDescribeClusterCertsRequest() (request *DescribeClusterCertsRequest)
 	request = &DescribeClusterCertsRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterCerts", "/clusters/[ClusterId]/certs", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterCerts", "/clusters/[ClusterId]/certs", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_cluster_detail.go

@@ -89,7 +89,7 @@ func CreateDescribeClusterDetailRequest() (request *DescribeClusterDetailRequest
 	request = &DescribeClusterDetailRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterDetail", "/clusters/[ClusterId]", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterDetail", "/clusters/[ClusterId]", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_cluster_endpoints.go

@@ -89,7 +89,7 @@ func CreateDescribeClusterEndpointsRequest() (request *DescribeClusterEndpointsR
 	request = &DescribeClusterEndpointsRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterEndpoints", "/clusters/[ClusterId]/endpoints", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterEndpoints", "/clusters/[ClusterId]/endpoints", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_cluster_logs.go

@@ -89,7 +89,7 @@ func CreateDescribeClusterLogsRequest() (request *DescribeClusterLogsRequest) {
 	request = &DescribeClusterLogsRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterLogs", "/clusters/[ClusterId]/logs", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterLogs", "/clusters/[ClusterId]/logs", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_cluster_nodes.go

@@ -91,7 +91,7 @@ func CreateDescribeClusterNodesRequest() (request *DescribeClusterNodesRequest)
 	request = &DescribeClusterNodesRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterNodes", "/clusters/[ClusterId]/nodes", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterNodes", "/clusters/[ClusterId]/nodes", "", "")
 	request.Method = requests.GET
 	return
 }

+ 4 - 2
services/cs/describe_cluster_user_kubeconfig.go

@@ -76,12 +76,14 @@ func (client *Client) DescribeClusterUserKubeconfigWithCallback(request *Describ
 // DescribeClusterUserKubeconfigRequest is the request struct for api DescribeClusterUserKubeconfig
 type DescribeClusterUserKubeconfigRequest struct {
 	*requests.RoaRequest
-	ClusterId string `position:"Path" name:"ClusterId"`
+	PrivateIpAddress requests.Boolean `position:"Query" name:"PrivateIpAddress"`
+	ClusterId        string           `position:"Path" name:"ClusterId"`
 }
 
 // DescribeClusterUserKubeconfigResponse is the response struct for api DescribeClusterUserKubeconfig
 type DescribeClusterUserKubeconfigResponse struct {
 	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
 }
 
 // CreateDescribeClusterUserKubeconfigRequest creates a request to invoke DescribeClusterUserKubeconfig API
@@ -89,7 +91,7 @@ func CreateDescribeClusterUserKubeconfigRequest() (request *DescribeClusterUserK
 	request = &DescribeClusterUserKubeconfigRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterUserKubeconfig", "/k8s/[ClusterId]/user_config", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusterUserKubeconfig", "/k8s/[ClusterId]/user_config", "", "")
 	request.Method = requests.GET
 	return
 }

+ 1 - 1
services/cs/describe_clusters.go

@@ -90,7 +90,7 @@ func CreateDescribeClustersRequest() (request *DescribeClustersRequest) {
 	request = &DescribeClustersRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusters", "/clusters", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeClusters", "/clusters", "", "")
 	request.Method = requests.GET
 	return
 }

+ 105 - 0
services/cs/describe_edge_cluster_attach_scripts.go

@@ -0,0 +1,105 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeEdgeClusterAttachScripts invokes the cs.DescribeEdgeClusterAttachScripts API synchronously
+// api document: https://help.aliyun.com/api/cs/describeedgeclusterattachscripts.html
+func (client *Client) DescribeEdgeClusterAttachScripts(request *DescribeEdgeClusterAttachScriptsRequest) (response *DescribeEdgeClusterAttachScriptsResponse, err error) {
+	response = CreateDescribeEdgeClusterAttachScriptsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeEdgeClusterAttachScriptsWithChan invokes the cs.DescribeEdgeClusterAttachScripts API asynchronously
+// api document: https://help.aliyun.com/api/cs/describeedgeclusterattachscripts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeEdgeClusterAttachScriptsWithChan(request *DescribeEdgeClusterAttachScriptsRequest) (<-chan *DescribeEdgeClusterAttachScriptsResponse, <-chan error) {
+	responseChan := make(chan *DescribeEdgeClusterAttachScriptsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeEdgeClusterAttachScripts(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeEdgeClusterAttachScriptsWithCallback invokes the cs.DescribeEdgeClusterAttachScripts API asynchronously
+// api document: https://help.aliyun.com/api/cs/describeedgeclusterattachscripts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeEdgeClusterAttachScriptsWithCallback(request *DescribeEdgeClusterAttachScriptsRequest, callback func(response *DescribeEdgeClusterAttachScriptsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeEdgeClusterAttachScriptsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeEdgeClusterAttachScripts(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeEdgeClusterAttachScriptsRequest is the request struct for api DescribeEdgeClusterAttachScripts
+type DescribeEdgeClusterAttachScriptsRequest struct {
+	*requests.RoaRequest
+	ClusterId  string `position:"Path" name:"ClusterId"`
+	NamePrefix string `position:"Query" name:"NamePrefix"`
+}
+
+// DescribeEdgeClusterAttachScriptsResponse is the response struct for api DescribeEdgeClusterAttachScripts
+type DescribeEdgeClusterAttachScriptsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDescribeEdgeClusterAttachScriptsRequest creates a request to invoke DescribeEdgeClusterAttachScripts API
+func CreateDescribeEdgeClusterAttachScriptsRequest() (request *DescribeEdgeClusterAttachScriptsRequest) {
+	request = &DescribeEdgeClusterAttachScriptsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeEdgeClusterAttachScripts", "/clusters/[ClusterId]/attachscript", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateDescribeEdgeClusterAttachScriptsResponse creates a response to parse from DescribeEdgeClusterAttachScripts response
+func CreateDescribeEdgeClusterAttachScriptsResponse() (response *DescribeEdgeClusterAttachScriptsResponse) {
+	response = &DescribeEdgeClusterAttachScriptsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/cs/describe_kubernetes_version_metadata.go

@@ -0,0 +1,107 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeKubernetesVersionMetadata invokes the cs.DescribeKubernetesVersionMetadata API synchronously
+// api document: https://help.aliyun.com/api/cs/describekubernetesversionmetadata.html
+func (client *Client) DescribeKubernetesVersionMetadata(request *DescribeKubernetesVersionMetadataRequest) (response *DescribeKubernetesVersionMetadataResponse, err error) {
+	response = CreateDescribeKubernetesVersionMetadataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeKubernetesVersionMetadataWithChan invokes the cs.DescribeKubernetesVersionMetadata API asynchronously
+// api document: https://help.aliyun.com/api/cs/describekubernetesversionmetadata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeKubernetesVersionMetadataWithChan(request *DescribeKubernetesVersionMetadataRequest) (<-chan *DescribeKubernetesVersionMetadataResponse, <-chan error) {
+	responseChan := make(chan *DescribeKubernetesVersionMetadataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeKubernetesVersionMetadata(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeKubernetesVersionMetadataWithCallback invokes the cs.DescribeKubernetesVersionMetadata API asynchronously
+// api document: https://help.aliyun.com/api/cs/describekubernetesversionmetadata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeKubernetesVersionMetadataWithCallback(request *DescribeKubernetesVersionMetadataRequest, callback func(response *DescribeKubernetesVersionMetadataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeKubernetesVersionMetadataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeKubernetesVersionMetadata(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeKubernetesVersionMetadataRequest is the request struct for api DescribeKubernetesVersionMetadata
+type DescribeKubernetesVersionMetadataRequest struct {
+	*requests.RoaRequest
+	ClusterType       string           `position:"Query" name:"ClusterType"`
+	MultiAZ           requests.Boolean `position:"Query" name:"MultiAZ"`
+	KubernetesVersion string           `position:"Query" name:"KubernetesVersion"`
+	Region            string           `position:"Query" name:"Region"`
+}
+
+// DescribeKubernetesVersionMetadataResponse is the response struct for api DescribeKubernetesVersionMetadata
+type DescribeKubernetesVersionMetadataResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDescribeKubernetesVersionMetadataRequest creates a request to invoke DescribeKubernetesVersionMetadata API
+func CreateDescribeKubernetesVersionMetadataRequest() (request *DescribeKubernetesVersionMetadataRequest) {
+	request = &DescribeKubernetesVersionMetadataRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "DescribeKubernetesVersionMetadata", "/api/v1/metadata/versions", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateDescribeKubernetesVersionMetadataResponse creates a response to parse from DescribeKubernetesVersionMetadata response
+func CreateDescribeKubernetesVersionMetadataResponse() (response *DescribeKubernetesVersionMetadataResponse) {
+	response = &DescribeKubernetesVersionMetadataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/cs/download_cluster_node_certs.go

@@ -90,7 +90,7 @@ func CreateDownloadClusterNodeCertsRequest() (request *DownloadClusterNodeCertsR
 	request = &DownloadClusterNodeCertsRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "DownloadClusterNodeCerts", "/token/[Token]/nodes/[NodeId]/certs", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "DownloadClusterNodeCerts", "/token/[Token]/nodes/[NodeId]/certs", "", "")
 	request.Method = requests.GET
 	return
 }

+ 103 - 0
services/cs/get_cluster_cert_info.go

@@ -0,0 +1,103 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// GetClusterCertInfo invokes the cs.GetClusterCertInfo API synchronously
+// api document: https://help.aliyun.com/api/cs/getclustercertinfo.html
+func (client *Client) GetClusterCertInfo(request *GetClusterCertInfoRequest) (response *GetClusterCertInfoResponse, err error) {
+	response = CreateGetClusterCertInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetClusterCertInfoWithChan invokes the cs.GetClusterCertInfo API asynchronously
+// api document: https://help.aliyun.com/api/cs/getclustercertinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetClusterCertInfoWithChan(request *GetClusterCertInfoRequest) (<-chan *GetClusterCertInfoResponse, <-chan error) {
+	responseChan := make(chan *GetClusterCertInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetClusterCertInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetClusterCertInfoWithCallback invokes the cs.GetClusterCertInfo API asynchronously
+// api document: https://help.aliyun.com/api/cs/getclustercertinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetClusterCertInfoWithCallback(request *GetClusterCertInfoRequest, callback func(response *GetClusterCertInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetClusterCertInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.GetClusterCertInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetClusterCertInfoRequest is the request struct for api GetClusterCertInfo
+type GetClusterCertInfoRequest struct {
+	*requests.RoaRequest
+	ClusterId string `position:"Path" name:"ClusterId"`
+}
+
+// GetClusterCertInfoResponse is the response struct for api GetClusterCertInfo
+type GetClusterCertInfoResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetClusterCertInfoRequest creates a request to invoke GetClusterCertInfo API
+func CreateGetClusterCertInfoRequest() (request *GetClusterCertInfoRequest) {
+	request = &GetClusterCertInfoRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "GetClusterCertInfo", "/clusters/[ClusterId]/hosts/certs", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetClusterCertInfoResponse creates a response to parse from GetClusterCertInfo response
+func CreateGetClusterCertInfoResponse() (response *GetClusterCertInfoResponse) {
+	response = &GetClusterCertInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/cs/pre_check_for_create_cluster.go

@@ -0,0 +1,103 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// PreCheckForCreateCluster invokes the cs.PreCheckForCreateCluster API synchronously
+// api document: https://help.aliyun.com/api/cs/precheckforcreatecluster.html
+func (client *Client) PreCheckForCreateCluster(request *PreCheckForCreateClusterRequest) (response *PreCheckForCreateClusterResponse, err error) {
+	response = CreatePreCheckForCreateClusterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// PreCheckForCreateClusterWithChan invokes the cs.PreCheckForCreateCluster API asynchronously
+// api document: https://help.aliyun.com/api/cs/precheckforcreatecluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PreCheckForCreateClusterWithChan(request *PreCheckForCreateClusterRequest) (<-chan *PreCheckForCreateClusterResponse, <-chan error) {
+	responseChan := make(chan *PreCheckForCreateClusterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.PreCheckForCreateCluster(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// PreCheckForCreateClusterWithCallback invokes the cs.PreCheckForCreateCluster API asynchronously
+// api document: https://help.aliyun.com/api/cs/precheckforcreatecluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PreCheckForCreateClusterWithCallback(request *PreCheckForCreateClusterRequest, callback func(response *PreCheckForCreateClusterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *PreCheckForCreateClusterResponse
+		var err error
+		defer close(result)
+		response, err = client.PreCheckForCreateCluster(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// PreCheckForCreateClusterRequest is the request struct for api PreCheckForCreateCluster
+type PreCheckForCreateClusterRequest struct {
+	*requests.RoaRequest
+}
+
+// PreCheckForCreateClusterResponse is the response struct for api PreCheckForCreateCluster
+type PreCheckForCreateClusterResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreatePreCheckForCreateClusterRequest creates a request to invoke PreCheckForCreateCluster API
+func CreatePreCheckForCreateClusterRequest() (request *PreCheckForCreateClusterRequest) {
+	request = &PreCheckForCreateClusterRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "PreCheckForCreateCluster", "/api/v1/ess/precheck", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreatePreCheckForCreateClusterResponse creates a response to parse from PreCheckForCreateCluster response
+func CreatePreCheckForCreateClusterResponse() (response *PreCheckForCreateClusterResponse) {
+	response = &PreCheckForCreateClusterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/cs/reset_cluster_node.go

@@ -90,7 +90,7 @@ func CreateResetClusterNodeRequest() (request *ResetClusterNodeRequest) {
 	request = &ResetClusterNodeRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "ResetClusterNode", "/clusters/[ClusterId]/instances/[InstanceId]/reset", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "ResetClusterNode", "/clusters/[ClusterId]/instances/[InstanceId]/reset", "", "")
 	request.Method = requests.POST
 	return
 }

+ 1 - 1
services/cs/revoke_cluster_token.go

@@ -89,7 +89,7 @@ func CreateRevokeClusterTokenRequest() (request *RevokeClusterTokenRequest) {
 	request = &RevokeClusterTokenRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "RevokeClusterToken", "/token/[Token]/revoke", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "RevokeClusterToken", "/token/[Token]/revoke", "", "")
 	request.Method = requests.DELETE
 	return
 }

+ 2 - 1
services/cs/scale_cluster.go

@@ -82,6 +82,7 @@ type ScaleClusterRequest struct {
 // ScaleClusterResponse is the response struct for api ScaleCluster
 type ScaleClusterResponse struct {
 	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
 }
 
 // CreateScaleClusterRequest creates a request to invoke ScaleCluster API
@@ -89,7 +90,7 @@ func CreateScaleClusterRequest() (request *ScaleClusterRequest) {
 	request = &ScaleClusterRequest{
 		RoaRequest: &requests.RoaRequest{},
 	}
-	request.InitWithApiInfo("CS", "2015-12-15", "ScaleCluster", "/clusters/[ClusterId]", "cs", "openAPI")
+	request.InitWithApiInfo("CS", "2015-12-15", "ScaleCluster", "/clusters/[ClusterId]", "", "")
 	request.Method = requests.PUT
 	return
 }

+ 104 - 0
services/cs/scale_out_cluster.go

@@ -0,0 +1,104 @@
+package cs
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ScaleOutCluster invokes the cs.ScaleOutCluster API synchronously
+// api document: https://help.aliyun.com/api/cs/scaleoutcluster.html
+func (client *Client) ScaleOutCluster(request *ScaleOutClusterRequest) (response *ScaleOutClusterResponse, err error) {
+	response = CreateScaleOutClusterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ScaleOutClusterWithChan invokes the cs.ScaleOutCluster API asynchronously
+// api document: https://help.aliyun.com/api/cs/scaleoutcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ScaleOutClusterWithChan(request *ScaleOutClusterRequest) (<-chan *ScaleOutClusterResponse, <-chan error) {
+	responseChan := make(chan *ScaleOutClusterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ScaleOutCluster(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ScaleOutClusterWithCallback invokes the cs.ScaleOutCluster API asynchronously
+// api document: https://help.aliyun.com/api/cs/scaleoutcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ScaleOutClusterWithCallback(request *ScaleOutClusterRequest, callback func(response *ScaleOutClusterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ScaleOutClusterResponse
+		var err error
+		defer close(result)
+		response, err = client.ScaleOutCluster(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ScaleOutClusterRequest is the request struct for api ScaleOutCluster
+type ScaleOutClusterRequest struct {
+	*requests.RoaRequest
+	ClusterId string `position:"Path" name:"ClusterId"`
+}
+
+// ScaleOutClusterResponse is the response struct for api ScaleOutCluster
+type ScaleOutClusterResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateScaleOutClusterRequest creates a request to invoke ScaleOutCluster API
+func CreateScaleOutClusterRequest() (request *ScaleOutClusterRequest) {
+	request = &ScaleOutClusterRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("CS", "2015-12-15", "ScaleOutCluster", "/api/v2/clusters/[ClusterId]", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateScaleOutClusterResponse creates a response to parse from ScaleOutCluster response
+func CreateScaleOutClusterResponse() (response *ScaleOutClusterResponse) {
+	response = &ScaleOutClusterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}