Przeglądaj źródła

Generated 2018-05-22 for eas.

sdk-team 5 lat temu
rodzic
commit
d0969fba68
35 zmienionych plików z 3533 dodań i 0 usunięć
  1. 4 0
      ChangeLog.txt
  2. 104 0
      services/eas/check_service_exists.go
  3. 104 0
      services/eas/client.go
  4. 104 0
      services/eas/create_network_interface.go
  5. 102 0
      services/eas/create_service.go
  6. 104 0
      services/eas/create_sls.go
  7. 102 0
      services/eas/create_task.go
  8. 104 0
      services/eas/delete_resource.go
  9. 104 0
      services/eas/delete_resource_instance.go
  10. 104 0
      services/eas/delete_service.go
  11. 104 0
      services/eas/delete_task.go
  12. 102 0
      services/eas/get_available_regions.go
  13. 104 0
      services/eas/get_network_interface.go
  14. 102 0
      services/eas/get_or_create_resource.go
  15. 102 0
      services/eas/get_oss_authorize.go
  16. 104 0
      services/eas/get_resource_instances.go
  17. 105 0
      services/eas/get_resource_pods.go
  18. 104 0
      services/eas/get_resource_services.go
  19. 104 0
      services/eas/get_resource_status.go
  20. 104 0
      services/eas/get_service.go
  21. 102 0
      services/eas/get_service_region.go
  22. 108 0
      services/eas/get_service_statistics.go
  23. 104 0
      services/eas/get_service_token.go
  24. 104 0
      services/eas/get_service_version.go
  25. 104 0
      services/eas/get_service_worker.go
  26. 104 0
      services/eas/get_task.go
  27. 104 0
      services/eas/list_services.go
  28. 106 0
      services/eas/list_tasks.go
  29. 102 0
      services/eas/list_v_index.go
  30. 104 0
      services/eas/modify_service.go
  31. 104 0
      services/eas/modify_service_version.go
  32. 104 0
      services/eas/release_service.go
  33. 104 0
      services/eas/start_service.go
  34. 104 0
      services/eas/stop_service.go
  35. 104 0
      services/eas/sync_service.go

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2020-03-20 Version: v1.61.69
+- Generated 2018-05-22 for `eas`.
+- Add GetNetworkInterface interface.
+
 2020-03-20 Version: v1.61.68
 - Generated 2015-05-01 for `Ram`.
 - RAM role support MaxSessionDuration.

+ 104 - 0
services/eas/check_service_exists.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// CheckServiceExists invokes the eas.CheckServiceExists API synchronously
+// api document: https://help.aliyun.com/api/eas/checkserviceexists.html
+func (client *Client) CheckServiceExists(request *CheckServiceExistsRequest) (response *CheckServiceExistsResponse, err error) {
+	response = CreateCheckServiceExistsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CheckServiceExistsWithChan invokes the eas.CheckServiceExists API asynchronously
+// api document: https://help.aliyun.com/api/eas/checkserviceexists.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CheckServiceExistsWithChan(request *CheckServiceExistsRequest) (<-chan *CheckServiceExistsResponse, <-chan error) {
+	responseChan := make(chan *CheckServiceExistsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CheckServiceExists(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CheckServiceExistsWithCallback invokes the eas.CheckServiceExists API asynchronously
+// api document: https://help.aliyun.com/api/eas/checkserviceexists.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CheckServiceExistsWithCallback(request *CheckServiceExistsRequest, callback func(response *CheckServiceExistsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CheckServiceExistsResponse
+		var err error
+		defer close(result)
+		response, err = client.CheckServiceExists(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CheckServiceExistsRequest is the request struct for api CheckServiceExists
+type CheckServiceExistsRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// CheckServiceExistsResponse is the response struct for api CheckServiceExists
+type CheckServiceExistsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateCheckServiceExistsRequest creates a request to invoke CheckServiceExists API
+func CreateCheckServiceExistsRequest() (request *CheckServiceExistsRequest) {
+	request = &CheckServiceExistsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "CheckServiceExists", "/api/services/[region]/[service_name]/exists", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateCheckServiceExistsResponse creates a response to parse from CheckServiceExists response
+func CreateCheckServiceExistsResponse() (response *CheckServiceExistsResponse) {
+	response = &CheckServiceExistsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/client.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+	"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
+type Client struct {
+	sdk.Client
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	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) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// 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)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// 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)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// 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://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)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// 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)
+	return
+}

+ 104 - 0
services/eas/create_network_interface.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// CreateNetworkInterface invokes the eas.CreateNetworkInterface API synchronously
+// api document: https://help.aliyun.com/api/eas/createnetworkinterface.html
+func (client *Client) CreateNetworkInterface(request *CreateNetworkInterfaceRequest) (response *CreateNetworkInterfaceResponse, err error) {
+	response = CreateCreateNetworkInterfaceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateNetworkInterfaceWithChan invokes the eas.CreateNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/eas/createnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateNetworkInterfaceWithChan(request *CreateNetworkInterfaceRequest) (<-chan *CreateNetworkInterfaceResponse, <-chan error) {
+	responseChan := make(chan *CreateNetworkInterfaceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateNetworkInterface(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateNetworkInterfaceWithCallback invokes the eas.CreateNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/eas/createnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateNetworkInterfaceWithCallback(request *CreateNetworkInterfaceRequest, callback func(response *CreateNetworkInterfaceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateNetworkInterfaceResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateNetworkInterface(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateNetworkInterfaceRequest is the request struct for api CreateNetworkInterface
+type CreateNetworkInterfaceRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// CreateNetworkInterfaceResponse is the response struct for api CreateNetworkInterface
+type CreateNetworkInterfaceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateCreateNetworkInterfaceRequest creates a request to invoke CreateNetworkInterface API
+func CreateCreateNetworkInterfaceRequest() (request *CreateNetworkInterfaceRequest) {
+	request = &CreateNetworkInterfaceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "CreateNetworkInterface", "/api/resources/[cluster_id]/[resource_name]/network", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateCreateNetworkInterfaceResponse creates a response to parse from CreateNetworkInterface response
+func CreateCreateNetworkInterfaceResponse() (response *CreateNetworkInterfaceResponse) {
+	response = &CreateNetworkInterfaceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/create_service.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// CreateService invokes the eas.CreateService API synchronously
+// api document: https://help.aliyun.com/api/eas/createservice.html
+func (client *Client) CreateService(request *CreateServiceRequest) (response *CreateServiceResponse, err error) {
+	response = CreateCreateServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateServiceWithChan invokes the eas.CreateService API asynchronously
+// api document: https://help.aliyun.com/api/eas/createservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateServiceWithChan(request *CreateServiceRequest) (<-chan *CreateServiceResponse, <-chan error) {
+	responseChan := make(chan *CreateServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateServiceWithCallback invokes the eas.CreateService API asynchronously
+// api document: https://help.aliyun.com/api/eas/createservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateServiceWithCallback(request *CreateServiceRequest, callback func(response *CreateServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateServiceRequest is the request struct for api CreateService
+type CreateServiceRequest struct {
+	*requests.RoaRequest
+}
+
+// CreateServiceResponse is the response struct for api CreateService
+type CreateServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateCreateServiceRequest creates a request to invoke CreateService API
+func CreateCreateServiceRequest() (request *CreateServiceRequest) {
+	request = &CreateServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "CreateService", "/api/services", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateCreateServiceResponse creates a response to parse from CreateService response
+func CreateCreateServiceResponse() (response *CreateServiceResponse) {
+	response = &CreateServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/create_sls.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// CreateSLS invokes the eas.CreateSLS API synchronously
+// api document: https://help.aliyun.com/api/eas/createsls.html
+func (client *Client) CreateSLS(request *CreateSLSRequest) (response *CreateSLSResponse, err error) {
+	response = CreateCreateSLSResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateSLSWithChan invokes the eas.CreateSLS API asynchronously
+// api document: https://help.aliyun.com/api/eas/createsls.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateSLSWithChan(request *CreateSLSRequest) (<-chan *CreateSLSResponse, <-chan error) {
+	responseChan := make(chan *CreateSLSResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateSLS(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateSLSWithCallback invokes the eas.CreateSLS API asynchronously
+// api document: https://help.aliyun.com/api/eas/createsls.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateSLSWithCallback(request *CreateSLSRequest, callback func(response *CreateSLSResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateSLSResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateSLS(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateSLSRequest is the request struct for api CreateSLS
+type CreateSLSRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// CreateSLSResponse is the response struct for api CreateSLS
+type CreateSLSResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateCreateSLSRequest creates a request to invoke CreateSLS API
+func CreateCreateSLSRequest() (request *CreateSLSRequest) {
+	request = &CreateSLSRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "CreateSLS", "/api/resources/[cluster_id]/[resource_name]/log", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateCreateSLSResponse creates a response to parse from CreateSLS response
+func CreateCreateSLSResponse() (response *CreateSLSResponse) {
+	response = &CreateSLSResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/create_task.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// CreateTask invokes the eas.CreateTask API synchronously
+// api document: https://help.aliyun.com/api/eas/createtask.html
+func (client *Client) CreateTask(request *CreateTaskRequest) (response *CreateTaskResponse, err error) {
+	response = CreateCreateTaskResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateTaskWithChan invokes the eas.CreateTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/createtask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateTaskWithChan(request *CreateTaskRequest) (<-chan *CreateTaskResponse, <-chan error) {
+	responseChan := make(chan *CreateTaskResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateTask(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateTaskWithCallback invokes the eas.CreateTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/createtask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateTaskWithCallback(request *CreateTaskRequest, callback func(response *CreateTaskResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateTaskResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateTask(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateTaskRequest is the request struct for api CreateTask
+type CreateTaskRequest struct {
+	*requests.RoaRequest
+}
+
+// CreateTaskResponse is the response struct for api CreateTask
+type CreateTaskResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateCreateTaskRequest creates a request to invoke CreateTask API
+func CreateCreateTaskRequest() (request *CreateTaskRequest) {
+	request = &CreateTaskRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "CreateTask", "/api/tasks", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateCreateTaskResponse creates a response to parse from CreateTask response
+func CreateCreateTaskResponse() (response *CreateTaskResponse) {
+	response = &CreateTaskResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/delete_resource.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// DeleteResource invokes the eas.DeleteResource API synchronously
+// api document: https://help.aliyun.com/api/eas/deleteresource.html
+func (client *Client) DeleteResource(request *DeleteResourceRequest) (response *DeleteResourceResponse, err error) {
+	response = CreateDeleteResourceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteResourceWithChan invokes the eas.DeleteResource API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteresource.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteResourceWithChan(request *DeleteResourceRequest) (<-chan *DeleteResourceResponse, <-chan error) {
+	responseChan := make(chan *DeleteResourceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteResource(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteResourceWithCallback invokes the eas.DeleteResource API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteresource.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteResourceWithCallback(request *DeleteResourceRequest, callback func(response *DeleteResourceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteResourceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteResource(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteResourceRequest is the request struct for api DeleteResource
+type DeleteResourceRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// DeleteResourceResponse is the response struct for api DeleteResource
+type DeleteResourceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteResourceRequest creates a request to invoke DeleteResource API
+func CreateDeleteResourceRequest() (request *DeleteResourceRequest) {
+	request = &DeleteResourceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "DeleteResource", "/api/resources/[cluster_id]/[resource_name]", "", "")
+	request.Method = requests.DELETE
+	return
+}
+
+// CreateDeleteResourceResponse creates a response to parse from DeleteResource response
+func CreateDeleteResourceResponse() (response *DeleteResourceResponse) {
+	response = &DeleteResourceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/delete_resource_instance.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// DeleteResourceInstance invokes the eas.DeleteResourceInstance API synchronously
+// api document: https://help.aliyun.com/api/eas/deleteresourceinstance.html
+func (client *Client) DeleteResourceInstance(request *DeleteResourceInstanceRequest) (response *DeleteResourceInstanceResponse, err error) {
+	response = CreateDeleteResourceInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteResourceInstanceWithChan invokes the eas.DeleteResourceInstance API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteresourceinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteResourceInstanceWithChan(request *DeleteResourceInstanceRequest) (<-chan *DeleteResourceInstanceResponse, <-chan error) {
+	responseChan := make(chan *DeleteResourceInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteResourceInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteResourceInstanceWithCallback invokes the eas.DeleteResourceInstance API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteresourceinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteResourceInstanceWithCallback(request *DeleteResourceInstanceRequest, callback func(response *DeleteResourceInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteResourceInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteResourceInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteResourceInstanceRequest is the request struct for api DeleteResourceInstance
+type DeleteResourceInstanceRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// DeleteResourceInstanceResponse is the response struct for api DeleteResourceInstance
+type DeleteResourceInstanceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteResourceInstanceRequest creates a request to invoke DeleteResourceInstance API
+func CreateDeleteResourceInstanceRequest() (request *DeleteResourceInstanceRequest) {
+	request = &DeleteResourceInstanceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "DeleteResourceInstance", "/api/resources/[cluster_id]/[resource_name]/instances/delete", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateDeleteResourceInstanceResponse creates a response to parse from DeleteResourceInstance response
+func CreateDeleteResourceInstanceResponse() (response *DeleteResourceInstanceResponse) {
+	response = &DeleteResourceInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/delete_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// DeleteService invokes the eas.DeleteService API synchronously
+// api document: https://help.aliyun.com/api/eas/deleteservice.html
+func (client *Client) DeleteService(request *DeleteServiceRequest) (response *DeleteServiceResponse, err error) {
+	response = CreateDeleteServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteServiceWithChan invokes the eas.DeleteService API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteServiceWithChan(request *DeleteServiceRequest) (<-chan *DeleteServiceResponse, <-chan error) {
+	responseChan := make(chan *DeleteServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteServiceWithCallback invokes the eas.DeleteService API asynchronously
+// api document: https://help.aliyun.com/api/eas/deleteservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteServiceWithCallback(request *DeleteServiceRequest, callback func(response *DeleteServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteServiceRequest is the request struct for api DeleteService
+type DeleteServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// DeleteServiceResponse is the response struct for api DeleteService
+type DeleteServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteServiceRequest creates a request to invoke DeleteService API
+func CreateDeleteServiceRequest() (request *DeleteServiceRequest) {
+	request = &DeleteServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "DeleteService", "/api/services/[region]/[service_name]", "", "")
+	request.Method = requests.DELETE
+	return
+}
+
+// CreateDeleteServiceResponse creates a response to parse from DeleteService response
+func CreateDeleteServiceResponse() (response *DeleteServiceResponse) {
+	response = &DeleteServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/delete_task.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// DeleteTask invokes the eas.DeleteTask API synchronously
+// api document: https://help.aliyun.com/api/eas/deletetask.html
+func (client *Client) DeleteTask(request *DeleteTaskRequest) (response *DeleteTaskResponse, err error) {
+	response = CreateDeleteTaskResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteTaskWithChan invokes the eas.DeleteTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/deletetask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteTaskWithChan(request *DeleteTaskRequest) (<-chan *DeleteTaskResponse, <-chan error) {
+	responseChan := make(chan *DeleteTaskResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteTask(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteTaskWithCallback invokes the eas.DeleteTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/deletetask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteTaskWithCallback(request *DeleteTaskRequest, callback func(response *DeleteTaskResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteTaskResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteTask(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteTaskRequest is the request struct for api DeleteTask
+type DeleteTaskRequest struct {
+	*requests.RoaRequest
+	TaskName string `position:"Path" name:"task_name"`
+	Region   string `position:"Path" name:"region"`
+}
+
+// DeleteTaskResponse is the response struct for api DeleteTask
+type DeleteTaskResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteTaskRequest creates a request to invoke DeleteTask API
+func CreateDeleteTaskRequest() (request *DeleteTaskRequest) {
+	request = &DeleteTaskRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "DeleteTask", "/api/tasks/[region]/[task_name]", "", "")
+	request.Method = requests.DELETE
+	return
+}
+
+// CreateDeleteTaskResponse creates a response to parse from DeleteTask response
+func CreateDeleteTaskResponse() (response *DeleteTaskResponse) {
+	response = &DeleteTaskResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/get_available_regions.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// GetAvailableRegions invokes the eas.GetAvailableRegions API synchronously
+// api document: https://help.aliyun.com/api/eas/getavailableregions.html
+func (client *Client) GetAvailableRegions(request *GetAvailableRegionsRequest) (response *GetAvailableRegionsResponse, err error) {
+	response = CreateGetAvailableRegionsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetAvailableRegionsWithChan invokes the eas.GetAvailableRegions API asynchronously
+// api document: https://help.aliyun.com/api/eas/getavailableregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetAvailableRegionsWithChan(request *GetAvailableRegionsRequest) (<-chan *GetAvailableRegionsResponse, <-chan error) {
+	responseChan := make(chan *GetAvailableRegionsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetAvailableRegions(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetAvailableRegionsWithCallback invokes the eas.GetAvailableRegions API asynchronously
+// api document: https://help.aliyun.com/api/eas/getavailableregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetAvailableRegionsWithCallback(request *GetAvailableRegionsRequest, callback func(response *GetAvailableRegionsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetAvailableRegionsResponse
+		var err error
+		defer close(result)
+		response, err = client.GetAvailableRegions(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetAvailableRegionsRequest is the request struct for api GetAvailableRegions
+type GetAvailableRegionsRequest struct {
+	*requests.RoaRequest
+}
+
+// GetAvailableRegionsResponse is the response struct for api GetAvailableRegions
+type GetAvailableRegionsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetAvailableRegionsRequest creates a request to invoke GetAvailableRegions API
+func CreateGetAvailableRegionsRequest() (request *GetAvailableRegionsRequest) {
+	request = &GetAvailableRegionsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetAvailableRegions", "/api/services/regions", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetAvailableRegionsResponse creates a response to parse from GetAvailableRegions response
+func CreateGetAvailableRegionsResponse() (response *GetAvailableRegionsResponse) {
+	response = &GetAvailableRegionsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_network_interface.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetNetworkInterface invokes the eas.GetNetworkInterface API synchronously
+// api document: https://help.aliyun.com/api/eas/getnetworkinterface.html
+func (client *Client) GetNetworkInterface(request *GetNetworkInterfaceRequest) (response *GetNetworkInterfaceResponse, err error) {
+	response = CreateGetNetworkInterfaceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetNetworkInterfaceWithChan invokes the eas.GetNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/eas/getnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetNetworkInterfaceWithChan(request *GetNetworkInterfaceRequest) (<-chan *GetNetworkInterfaceResponse, <-chan error) {
+	responseChan := make(chan *GetNetworkInterfaceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetNetworkInterface(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetNetworkInterfaceWithCallback invokes the eas.GetNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/eas/getnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetNetworkInterfaceWithCallback(request *GetNetworkInterfaceRequest, callback func(response *GetNetworkInterfaceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetNetworkInterfaceResponse
+		var err error
+		defer close(result)
+		response, err = client.GetNetworkInterface(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetNetworkInterfaceRequest is the request struct for api GetNetworkInterface
+type GetNetworkInterfaceRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// GetNetworkInterfaceResponse is the response struct for api GetNetworkInterface
+type GetNetworkInterfaceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetNetworkInterfaceRequest creates a request to invoke GetNetworkInterface API
+func CreateGetNetworkInterfaceRequest() (request *GetNetworkInterfaceRequest) {
+	request = &GetNetworkInterfaceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetNetworkInterface", "/api/resources/[cluster_id]/[resource_name]/network", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetNetworkInterfaceResponse creates a response to parse from GetNetworkInterface response
+func CreateGetNetworkInterfaceResponse() (response *GetNetworkInterfaceResponse) {
+	response = &GetNetworkInterfaceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/get_or_create_resource.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// GetOrCreateResource invokes the eas.GetOrCreateResource API synchronously
+// api document: https://help.aliyun.com/api/eas/getorcreateresource.html
+func (client *Client) GetOrCreateResource(request *GetOrCreateResourceRequest) (response *GetOrCreateResourceResponse, err error) {
+	response = CreateGetOrCreateResourceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetOrCreateResourceWithChan invokes the eas.GetOrCreateResource API asynchronously
+// api document: https://help.aliyun.com/api/eas/getorcreateresource.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetOrCreateResourceWithChan(request *GetOrCreateResourceRequest) (<-chan *GetOrCreateResourceResponse, <-chan error) {
+	responseChan := make(chan *GetOrCreateResourceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetOrCreateResource(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetOrCreateResourceWithCallback invokes the eas.GetOrCreateResource API asynchronously
+// api document: https://help.aliyun.com/api/eas/getorcreateresource.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetOrCreateResourceWithCallback(request *GetOrCreateResourceRequest, callback func(response *GetOrCreateResourceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetOrCreateResourceResponse
+		var err error
+		defer close(result)
+		response, err = client.GetOrCreateResource(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetOrCreateResourceRequest is the request struct for api GetOrCreateResource
+type GetOrCreateResourceRequest struct {
+	*requests.RoaRequest
+}
+
+// GetOrCreateResourceResponse is the response struct for api GetOrCreateResource
+type GetOrCreateResourceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetOrCreateResourceRequest creates a request to invoke GetOrCreateResource API
+func CreateGetOrCreateResourceRequest() (request *GetOrCreateResourceRequest) {
+	request = &GetOrCreateResourceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetOrCreateResource", "/api/resources", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateGetOrCreateResourceResponse creates a response to parse from GetOrCreateResource response
+func CreateGetOrCreateResourceResponse() (response *GetOrCreateResourceResponse) {
+	response = &GetOrCreateResourceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/get_oss_authorize.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// GetOssAuthorize invokes the eas.GetOssAuthorize API synchronously
+// api document: https://help.aliyun.com/api/eas/getossauthorize.html
+func (client *Client) GetOssAuthorize(request *GetOssAuthorizeRequest) (response *GetOssAuthorizeResponse, err error) {
+	response = CreateGetOssAuthorizeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetOssAuthorizeWithChan invokes the eas.GetOssAuthorize API asynchronously
+// api document: https://help.aliyun.com/api/eas/getossauthorize.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetOssAuthorizeWithChan(request *GetOssAuthorizeRequest) (<-chan *GetOssAuthorizeResponse, <-chan error) {
+	responseChan := make(chan *GetOssAuthorizeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetOssAuthorize(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetOssAuthorizeWithCallback invokes the eas.GetOssAuthorize API asynchronously
+// api document: https://help.aliyun.com/api/eas/getossauthorize.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetOssAuthorizeWithCallback(request *GetOssAuthorizeRequest, callback func(response *GetOssAuthorizeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetOssAuthorizeResponse
+		var err error
+		defer close(result)
+		response, err = client.GetOssAuthorize(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetOssAuthorizeRequest is the request struct for api GetOssAuthorize
+type GetOssAuthorizeRequest struct {
+	*requests.RoaRequest
+}
+
+// GetOssAuthorizeResponse is the response struct for api GetOssAuthorize
+type GetOssAuthorizeResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetOssAuthorizeRequest creates a request to invoke GetOssAuthorize API
+func CreateGetOssAuthorizeRequest() (request *GetOssAuthorizeRequest) {
+	request = &GetOssAuthorizeRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetOssAuthorize", "/api/services/oss_authorize", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetOssAuthorizeResponse creates a response to parse from GetOssAuthorize response
+func CreateGetOssAuthorizeResponse() (response *GetOssAuthorizeResponse) {
+	response = &GetOssAuthorizeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_resource_instances.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetResourceInstances invokes the eas.GetResourceInstances API synchronously
+// api document: https://help.aliyun.com/api/eas/getresourceinstances.html
+func (client *Client) GetResourceInstances(request *GetResourceInstancesRequest) (response *GetResourceInstancesResponse, err error) {
+	response = CreateGetResourceInstancesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetResourceInstancesWithChan invokes the eas.GetResourceInstances API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourceinstances.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceInstancesWithChan(request *GetResourceInstancesRequest) (<-chan *GetResourceInstancesResponse, <-chan error) {
+	responseChan := make(chan *GetResourceInstancesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetResourceInstances(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetResourceInstancesWithCallback invokes the eas.GetResourceInstances API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourceinstances.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceInstancesWithCallback(request *GetResourceInstancesRequest, callback func(response *GetResourceInstancesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetResourceInstancesResponse
+		var err error
+		defer close(result)
+		response, err = client.GetResourceInstances(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetResourceInstancesRequest is the request struct for api GetResourceInstances
+type GetResourceInstancesRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// GetResourceInstancesResponse is the response struct for api GetResourceInstances
+type GetResourceInstancesResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetResourceInstancesRequest creates a request to invoke GetResourceInstances API
+func CreateGetResourceInstancesRequest() (request *GetResourceInstancesRequest) {
+	request = &GetResourceInstancesRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetResourceInstances", "/api/resources/[cluster_id]/[resource_name]/instances", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetResourceInstancesResponse creates a response to parse from GetResourceInstances response
+func CreateGetResourceInstancesResponse() (response *GetResourceInstancesResponse) {
+	response = &GetResourceInstancesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/eas/get_resource_pods.go

@@ -0,0 +1,105 @@
+package eas
+
+//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"
+)
+
+// GetResourcePods invokes the eas.GetResourcePods API synchronously
+// api document: https://help.aliyun.com/api/eas/getresourcepods.html
+func (client *Client) GetResourcePods(request *GetResourcePodsRequest) (response *GetResourcePodsResponse, err error) {
+	response = CreateGetResourcePodsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetResourcePodsWithChan invokes the eas.GetResourcePods API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourcepods.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourcePodsWithChan(request *GetResourcePodsRequest) (<-chan *GetResourcePodsResponse, <-chan error) {
+	responseChan := make(chan *GetResourcePodsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetResourcePods(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetResourcePodsWithCallback invokes the eas.GetResourcePods API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourcepods.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourcePodsWithCallback(request *GetResourcePodsRequest, callback func(response *GetResourcePodsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetResourcePodsResponse
+		var err error
+		defer close(result)
+		response, err = client.GetResourcePods(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetResourcePodsRequest is the request struct for api GetResourcePods
+type GetResourcePodsRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	InstanceName string `position:"Path" name:"instance_name"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// GetResourcePodsResponse is the response struct for api GetResourcePods
+type GetResourcePodsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetResourcePodsRequest creates a request to invoke GetResourcePods API
+func CreateGetResourcePodsRequest() (request *GetResourcePodsRequest) {
+	request = &GetResourcePodsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetResourcePods", "/api/resources/[cluster_id]/[resource_name]/instances/[instance_name]/pods", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetResourcePodsResponse creates a response to parse from GetResourcePods response
+func CreateGetResourcePodsResponse() (response *GetResourcePodsResponse) {
+	response = &GetResourcePodsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_resource_services.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetResourceServices invokes the eas.GetResourceServices API synchronously
+// api document: https://help.aliyun.com/api/eas/getresourceservices.html
+func (client *Client) GetResourceServices(request *GetResourceServicesRequest) (response *GetResourceServicesResponse, err error) {
+	response = CreateGetResourceServicesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetResourceServicesWithChan invokes the eas.GetResourceServices API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourceservices.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceServicesWithChan(request *GetResourceServicesRequest) (<-chan *GetResourceServicesResponse, <-chan error) {
+	responseChan := make(chan *GetResourceServicesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetResourceServices(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetResourceServicesWithCallback invokes the eas.GetResourceServices API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourceservices.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceServicesWithCallback(request *GetResourceServicesRequest, callback func(response *GetResourceServicesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetResourceServicesResponse
+		var err error
+		defer close(result)
+		response, err = client.GetResourceServices(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetResourceServicesRequest is the request struct for api GetResourceServices
+type GetResourceServicesRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// GetResourceServicesResponse is the response struct for api GetResourceServices
+type GetResourceServicesResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetResourceServicesRequest creates a request to invoke GetResourceServices API
+func CreateGetResourceServicesRequest() (request *GetResourceServicesRequest) {
+	request = &GetResourceServicesRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetResourceServices", "/api/resources/[cluster_id]/[resource_name]/services", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetResourceServicesResponse creates a response to parse from GetResourceServices response
+func CreateGetResourceServicesResponse() (response *GetResourceServicesResponse) {
+	response = &GetResourceServicesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_resource_status.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetResourceStatus invokes the eas.GetResourceStatus API synchronously
+// api document: https://help.aliyun.com/api/eas/getresourcestatus.html
+func (client *Client) GetResourceStatus(request *GetResourceStatusRequest) (response *GetResourceStatusResponse, err error) {
+	response = CreateGetResourceStatusResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetResourceStatusWithChan invokes the eas.GetResourceStatus API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourcestatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceStatusWithChan(request *GetResourceStatusRequest) (<-chan *GetResourceStatusResponse, <-chan error) {
+	responseChan := make(chan *GetResourceStatusResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetResourceStatus(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetResourceStatusWithCallback invokes the eas.GetResourceStatus API asynchronously
+// api document: https://help.aliyun.com/api/eas/getresourcestatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetResourceStatusWithCallback(request *GetResourceStatusRequest, callback func(response *GetResourceStatusResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetResourceStatusResponse
+		var err error
+		defer close(result)
+		response, err = client.GetResourceStatus(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetResourceStatusRequest is the request struct for api GetResourceStatus
+type GetResourceStatusRequest struct {
+	*requests.RoaRequest
+	ClusterId    string `position:"Path" name:"cluster_id"`
+	ResourceName string `position:"Path" name:"resource_name"`
+}
+
+// GetResourceStatusResponse is the response struct for api GetResourceStatus
+type GetResourceStatusResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetResourceStatusRequest creates a request to invoke GetResourceStatus API
+func CreateGetResourceStatusRequest() (request *GetResourceStatusRequest) {
+	request = &GetResourceStatusRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetResourceStatus", "/api/resources/[cluster_id]/[resource_name]", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetResourceStatusResponse creates a response to parse from GetResourceStatus response
+func CreateGetResourceStatusResponse() (response *GetResourceStatusResponse) {
+	response = &GetResourceStatusResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetService invokes the eas.GetService API synchronously
+// api document: https://help.aliyun.com/api/eas/getservice.html
+func (client *Client) GetService(request *GetServiceRequest) (response *GetServiceResponse, err error) {
+	response = CreateGetServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceWithChan invokes the eas.GetService API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceWithChan(request *GetServiceRequest) (<-chan *GetServiceResponse, <-chan error) {
+	responseChan := make(chan *GetServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceWithCallback invokes the eas.GetService API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceWithCallback(request *GetServiceRequest, callback func(response *GetServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.GetService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceRequest is the request struct for api GetService
+type GetServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// GetServiceResponse is the response struct for api GetService
+type GetServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceRequest creates a request to invoke GetService API
+func CreateGetServiceRequest() (request *GetServiceRequest) {
+	request = &GetServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetService", "/api/services/[region]/[service_name]", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceResponse creates a response to parse from GetService response
+func CreateGetServiceResponse() (response *GetServiceResponse) {
+	response = &GetServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/get_service_region.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// GetServiceRegion invokes the eas.GetServiceRegion API synchronously
+// api document: https://help.aliyun.com/api/eas/getserviceregion.html
+func (client *Client) GetServiceRegion(request *GetServiceRegionRequest) (response *GetServiceRegionResponse, err error) {
+	response = CreateGetServiceRegionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceRegionWithChan invokes the eas.GetServiceRegion API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceregion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceRegionWithChan(request *GetServiceRegionRequest) (<-chan *GetServiceRegionResponse, <-chan error) {
+	responseChan := make(chan *GetServiceRegionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetServiceRegion(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceRegionWithCallback invokes the eas.GetServiceRegion API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceregion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceRegionWithCallback(request *GetServiceRegionRequest, callback func(response *GetServiceRegionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceRegionResponse
+		var err error
+		defer close(result)
+		response, err = client.GetServiceRegion(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceRegionRequest is the request struct for api GetServiceRegion
+type GetServiceRegionRequest struct {
+	*requests.RoaRequest
+}
+
+// GetServiceRegionResponse is the response struct for api GetServiceRegion
+type GetServiceRegionResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceRegionRequest creates a request to invoke GetServiceRegion API
+func CreateGetServiceRegionRequest() (request *GetServiceRegionRequest) {
+	request = &GetServiceRegionRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetServiceRegion", "/api/services/region", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceRegionResponse creates a response to parse from GetServiceRegion response
+func CreateGetServiceRegionResponse() (response *GetServiceRegionResponse) {
+	response = &GetServiceRegionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/eas/get_service_statistics.go

@@ -0,0 +1,108 @@
+package eas
+
+//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"
+)
+
+// GetServiceStatistics invokes the eas.GetServiceStatistics API synchronously
+// api document: https://help.aliyun.com/api/eas/getservicestatistics.html
+func (client *Client) GetServiceStatistics(request *GetServiceStatisticsRequest) (response *GetServiceStatisticsResponse, err error) {
+	response = CreateGetServiceStatisticsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceStatisticsWithChan invokes the eas.GetServiceStatistics API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservicestatistics.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceStatisticsWithChan(request *GetServiceStatisticsRequest) (<-chan *GetServiceStatisticsResponse, <-chan error) {
+	responseChan := make(chan *GetServiceStatisticsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetServiceStatistics(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceStatisticsWithCallback invokes the eas.GetServiceStatistics API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservicestatistics.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceStatisticsWithCallback(request *GetServiceStatisticsRequest, callback func(response *GetServiceStatisticsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceStatisticsResponse
+		var err error
+		defer close(result)
+		response, err = client.GetServiceStatistics(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceStatisticsRequest is the request struct for api GetServiceStatistics
+type GetServiceStatisticsRequest struct {
+	*requests.RoaRequest
+	Metric      string           `position:"Query" name:"metric"`
+	ServiceName string           `position:"Path" name:"service_name"`
+	Count       requests.Integer `position:"Query" name:"count"`
+	From        string           `position:"Query" name:"from"`
+	To          string           `position:"Query" name:"to"`
+	Region      string           `position:"Path" name:"region"`
+}
+
+// GetServiceStatisticsResponse is the response struct for api GetServiceStatistics
+type GetServiceStatisticsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceStatisticsRequest creates a request to invoke GetServiceStatistics API
+func CreateGetServiceStatisticsRequest() (request *GetServiceStatisticsRequest) {
+	request = &GetServiceStatisticsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetServiceStatistics", "/api/services/[region]/[service_name]/statistics", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceStatisticsResponse creates a response to parse from GetServiceStatistics response
+func CreateGetServiceStatisticsResponse() (response *GetServiceStatisticsResponse) {
+	response = &GetServiceStatisticsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_service_token.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetServiceToken invokes the eas.GetServiceToken API synchronously
+// api document: https://help.aliyun.com/api/eas/getservicetoken.html
+func (client *Client) GetServiceToken(request *GetServiceTokenRequest) (response *GetServiceTokenResponse, err error) {
+	response = CreateGetServiceTokenResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceTokenWithChan invokes the eas.GetServiceToken API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservicetoken.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceTokenWithChan(request *GetServiceTokenRequest) (<-chan *GetServiceTokenResponse, <-chan error) {
+	responseChan := make(chan *GetServiceTokenResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetServiceToken(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceTokenWithCallback invokes the eas.GetServiceToken API asynchronously
+// api document: https://help.aliyun.com/api/eas/getservicetoken.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceTokenWithCallback(request *GetServiceTokenRequest, callback func(response *GetServiceTokenResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceTokenResponse
+		var err error
+		defer close(result)
+		response, err = client.GetServiceToken(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceTokenRequest is the request struct for api GetServiceToken
+type GetServiceTokenRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// GetServiceTokenResponse is the response struct for api GetServiceToken
+type GetServiceTokenResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceTokenRequest creates a request to invoke GetServiceToken API
+func CreateGetServiceTokenRequest() (request *GetServiceTokenRequest) {
+	request = &GetServiceTokenRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetServiceToken", "/api/services/[region]/[service_name]/token", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceTokenResponse creates a response to parse from GetServiceToken response
+func CreateGetServiceTokenResponse() (response *GetServiceTokenResponse) {
+	response = &GetServiceTokenResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_service_version.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetServiceVersion invokes the eas.GetServiceVersion API synchronously
+// api document: https://help.aliyun.com/api/eas/getserviceversion.html
+func (client *Client) GetServiceVersion(request *GetServiceVersionRequest) (response *GetServiceVersionResponse, err error) {
+	response = CreateGetServiceVersionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceVersionWithChan invokes the eas.GetServiceVersion API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceversion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceVersionWithChan(request *GetServiceVersionRequest) (<-chan *GetServiceVersionResponse, <-chan error) {
+	responseChan := make(chan *GetServiceVersionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetServiceVersion(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceVersionWithCallback invokes the eas.GetServiceVersion API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceversion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceVersionWithCallback(request *GetServiceVersionRequest, callback func(response *GetServiceVersionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceVersionResponse
+		var err error
+		defer close(result)
+		response, err = client.GetServiceVersion(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceVersionRequest is the request struct for api GetServiceVersion
+type GetServiceVersionRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// GetServiceVersionResponse is the response struct for api GetServiceVersion
+type GetServiceVersionResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceVersionRequest creates a request to invoke GetServiceVersion API
+func CreateGetServiceVersionRequest() (request *GetServiceVersionRequest) {
+	request = &GetServiceVersionRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetServiceVersion", "/api/services/[region]/[service_name]/version", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceVersionResponse creates a response to parse from GetServiceVersion response
+func CreateGetServiceVersionResponse() (response *GetServiceVersionResponse) {
+	response = &GetServiceVersionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_service_worker.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetServiceWorker invokes the eas.GetServiceWorker API synchronously
+// api document: https://help.aliyun.com/api/eas/getserviceworker.html
+func (client *Client) GetServiceWorker(request *GetServiceWorkerRequest) (response *GetServiceWorkerResponse, err error) {
+	response = CreateGetServiceWorkerResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetServiceWorkerWithChan invokes the eas.GetServiceWorker API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceworker.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceWorkerWithChan(request *GetServiceWorkerRequest) (<-chan *GetServiceWorkerResponse, <-chan error) {
+	responseChan := make(chan *GetServiceWorkerResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetServiceWorker(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetServiceWorkerWithCallback invokes the eas.GetServiceWorker API asynchronously
+// api document: https://help.aliyun.com/api/eas/getserviceworker.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetServiceWorkerWithCallback(request *GetServiceWorkerRequest, callback func(response *GetServiceWorkerResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetServiceWorkerResponse
+		var err error
+		defer close(result)
+		response, err = client.GetServiceWorker(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetServiceWorkerRequest is the request struct for api GetServiceWorker
+type GetServiceWorkerRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// GetServiceWorkerResponse is the response struct for api GetServiceWorker
+type GetServiceWorkerResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetServiceWorkerRequest creates a request to invoke GetServiceWorker API
+func CreateGetServiceWorkerRequest() (request *GetServiceWorkerRequest) {
+	request = &GetServiceWorkerRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetServiceWorker", "/api/services/[region]/[service_name]/worker", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetServiceWorkerResponse creates a response to parse from GetServiceWorker response
+func CreateGetServiceWorkerResponse() (response *GetServiceWorkerResponse) {
+	response = &GetServiceWorkerResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/get_task.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// GetTask invokes the eas.GetTask API synchronously
+// api document: https://help.aliyun.com/api/eas/gettask.html
+func (client *Client) GetTask(request *GetTaskRequest) (response *GetTaskResponse, err error) {
+	response = CreateGetTaskResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetTaskWithChan invokes the eas.GetTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/gettask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetTaskWithChan(request *GetTaskRequest) (<-chan *GetTaskResponse, <-chan error) {
+	responseChan := make(chan *GetTaskResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetTask(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetTaskWithCallback invokes the eas.GetTask API asynchronously
+// api document: https://help.aliyun.com/api/eas/gettask.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetTaskWithCallback(request *GetTaskRequest, callback func(response *GetTaskResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetTaskResponse
+		var err error
+		defer close(result)
+		response, err = client.GetTask(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetTaskRequest is the request struct for api GetTask
+type GetTaskRequest struct {
+	*requests.RoaRequest
+	TaskName string `position:"Path" name:"task_name"`
+	Region   string `position:"Path" name:"region"`
+}
+
+// GetTaskResponse is the response struct for api GetTask
+type GetTaskResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetTaskRequest creates a request to invoke GetTask API
+func CreateGetTaskRequest() (request *GetTaskRequest) {
+	request = &GetTaskRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "GetTask", "/api/tasks/[region]/[task_name]", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateGetTaskResponse creates a response to parse from GetTask response
+func CreateGetTaskResponse() (response *GetTaskResponse) {
+	response = &GetTaskResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/list_services.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// ListServices invokes the eas.ListServices API synchronously
+// api document: https://help.aliyun.com/api/eas/listservices.html
+func (client *Client) ListServices(request *ListServicesRequest) (response *ListServicesResponse, err error) {
+	response = CreateListServicesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListServicesWithChan invokes the eas.ListServices API asynchronously
+// api document: https://help.aliyun.com/api/eas/listservices.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListServicesWithChan(request *ListServicesRequest) (<-chan *ListServicesResponse, <-chan error) {
+	responseChan := make(chan *ListServicesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListServices(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListServicesWithCallback invokes the eas.ListServices API asynchronously
+// api document: https://help.aliyun.com/api/eas/listservices.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListServicesWithCallback(request *ListServicesRequest, callback func(response *ListServicesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListServicesResponse
+		var err error
+		defer close(result)
+		response, err = client.ListServices(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListServicesRequest is the request struct for api ListServices
+type ListServicesRequest struct {
+	*requests.RoaRequest
+	Filter string `position:"Query" name:"filter"`
+	Sort   string `position:"Query" name:"sort"`
+}
+
+// ListServicesResponse is the response struct for api ListServices
+type ListServicesResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateListServicesRequest creates a request to invoke ListServices API
+func CreateListServicesRequest() (request *ListServicesRequest) {
+	request = &ListServicesRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ListServices", "/api/services", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateListServicesResponse creates a response to parse from ListServices response
+func CreateListServicesResponse() (response *ListServicesResponse) {
+	response = &ListServicesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/eas/list_tasks.go

@@ -0,0 +1,106 @@
+package eas
+
+//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"
+)
+
+// ListTasks invokes the eas.ListTasks API synchronously
+// api document: https://help.aliyun.com/api/eas/listtasks.html
+func (client *Client) ListTasks(request *ListTasksRequest) (response *ListTasksResponse, err error) {
+	response = CreateListTasksResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListTasksWithChan invokes the eas.ListTasks API asynchronously
+// api document: https://help.aliyun.com/api/eas/listtasks.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTasksWithChan(request *ListTasksRequest) (<-chan *ListTasksResponse, <-chan error) {
+	responseChan := make(chan *ListTasksResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListTasks(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListTasksWithCallback invokes the eas.ListTasks API asynchronously
+// api document: https://help.aliyun.com/api/eas/listtasks.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTasksWithCallback(request *ListTasksRequest, callback func(response *ListTasksResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListTasksResponse
+		var err error
+		defer close(result)
+		response, err = client.ListTasks(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListTasksRequest is the request struct for api ListTasks
+type ListTasksRequest struct {
+	*requests.RoaRequest
+	Filter   string `position:"Query" name:"filter"`
+	PageSize string `position:"Query" name:"pageSize"`
+	Sort     string `position:"Query" name:"sort"`
+	PageNum  string `position:"Query" name:"pageNum"`
+}
+
+// ListTasksResponse is the response struct for api ListTasks
+type ListTasksResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateListTasksRequest creates a request to invoke ListTasks API
+func CreateListTasksRequest() (request *ListTasksRequest) {
+	request = &ListTasksRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ListTasks", "/api/tasks", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateListTasksResponse creates a response to parse from ListTasks response
+func CreateListTasksResponse() (response *ListTasksResponse) {
+	response = &ListTasksResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 102 - 0
services/eas/list_v_index.go

@@ -0,0 +1,102 @@
+package eas
+
+//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"
+)
+
+// ListVIndex invokes the eas.ListVIndex API synchronously
+// api document: https://help.aliyun.com/api/eas/listvindex.html
+func (client *Client) ListVIndex(request *ListVIndexRequest) (response *ListVIndexResponse, err error) {
+	response = CreateListVIndexResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListVIndexWithChan invokes the eas.ListVIndex API asynchronously
+// api document: https://help.aliyun.com/api/eas/listvindex.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVIndexWithChan(request *ListVIndexRequest) (<-chan *ListVIndexResponse, <-chan error) {
+	responseChan := make(chan *ListVIndexResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListVIndex(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListVIndexWithCallback invokes the eas.ListVIndex API asynchronously
+// api document: https://help.aliyun.com/api/eas/listvindex.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVIndexWithCallback(request *ListVIndexRequest, callback func(response *ListVIndexResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListVIndexResponse
+		var err error
+		defer close(result)
+		response, err = client.ListVIndex(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListVIndexRequest is the request struct for api ListVIndex
+type ListVIndexRequest struct {
+	*requests.RoaRequest
+}
+
+// ListVIndexResponse is the response struct for api ListVIndex
+type ListVIndexResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateListVIndexRequest creates a request to invoke ListVIndex API
+func CreateListVIndexRequest() (request *ListVIndexRequest) {
+	request = &ListVIndexRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ListVIndex", "/api/vindex", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateListVIndexResponse creates a response to parse from ListVIndex response
+func CreateListVIndexResponse() (response *ListVIndexResponse) {
+	response = &ListVIndexResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/modify_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// ModifyService invokes the eas.ModifyService API synchronously
+// api document: https://help.aliyun.com/api/eas/modifyservice.html
+func (client *Client) ModifyService(request *ModifyServiceRequest) (response *ModifyServiceResponse, err error) {
+	response = CreateModifyServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyServiceWithChan invokes the eas.ModifyService API asynchronously
+// api document: https://help.aliyun.com/api/eas/modifyservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyServiceWithChan(request *ModifyServiceRequest) (<-chan *ModifyServiceResponse, <-chan error) {
+	responseChan := make(chan *ModifyServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyServiceWithCallback invokes the eas.ModifyService API asynchronously
+// api document: https://help.aliyun.com/api/eas/modifyservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyServiceWithCallback(request *ModifyServiceRequest, callback func(response *ModifyServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyServiceRequest is the request struct for api ModifyService
+type ModifyServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// ModifyServiceResponse is the response struct for api ModifyService
+type ModifyServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateModifyServiceRequest creates a request to invoke ModifyService API
+func CreateModifyServiceRequest() (request *ModifyServiceRequest) {
+	request = &ModifyServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ModifyService", "/api/services/[region]/[service_name]", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateModifyServiceResponse creates a response to parse from ModifyService response
+func CreateModifyServiceResponse() (response *ModifyServiceResponse) {
+	response = &ModifyServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/modify_service_version.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// ModifyServiceVersion invokes the eas.ModifyServiceVersion API synchronously
+// api document: https://help.aliyun.com/api/eas/modifyserviceversion.html
+func (client *Client) ModifyServiceVersion(request *ModifyServiceVersionRequest) (response *ModifyServiceVersionResponse, err error) {
+	response = CreateModifyServiceVersionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyServiceVersionWithChan invokes the eas.ModifyServiceVersion API asynchronously
+// api document: https://help.aliyun.com/api/eas/modifyserviceversion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyServiceVersionWithChan(request *ModifyServiceVersionRequest) (<-chan *ModifyServiceVersionResponse, <-chan error) {
+	responseChan := make(chan *ModifyServiceVersionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyServiceVersion(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyServiceVersionWithCallback invokes the eas.ModifyServiceVersion API asynchronously
+// api document: https://help.aliyun.com/api/eas/modifyserviceversion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyServiceVersionWithCallback(request *ModifyServiceVersionRequest, callback func(response *ModifyServiceVersionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyServiceVersionResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyServiceVersion(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyServiceVersionRequest is the request struct for api ModifyServiceVersion
+type ModifyServiceVersionRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// ModifyServiceVersionResponse is the response struct for api ModifyServiceVersion
+type ModifyServiceVersionResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateModifyServiceVersionRequest creates a request to invoke ModifyServiceVersion API
+func CreateModifyServiceVersionRequest() (request *ModifyServiceVersionRequest) {
+	request = &ModifyServiceVersionRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ModifyServiceVersion", "/api/services/[region]/[service_name]/version", "", "")
+	request.Method = requests.POST
+	return
+}
+
+// CreateModifyServiceVersionResponse creates a response to parse from ModifyServiceVersion response
+func CreateModifyServiceVersionResponse() (response *ModifyServiceVersionResponse) {
+	response = &ModifyServiceVersionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/release_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// ReleaseService invokes the eas.ReleaseService API synchronously
+// api document: https://help.aliyun.com/api/eas/releaseservice.html
+func (client *Client) ReleaseService(request *ReleaseServiceRequest) (response *ReleaseServiceResponse, err error) {
+	response = CreateReleaseServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ReleaseServiceWithChan invokes the eas.ReleaseService API asynchronously
+// api document: https://help.aliyun.com/api/eas/releaseservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseServiceWithChan(request *ReleaseServiceRequest) (<-chan *ReleaseServiceResponse, <-chan error) {
+	responseChan := make(chan *ReleaseServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ReleaseService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ReleaseServiceWithCallback invokes the eas.ReleaseService API asynchronously
+// api document: https://help.aliyun.com/api/eas/releaseservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseServiceWithCallback(request *ReleaseServiceRequest, callback func(response *ReleaseServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ReleaseServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.ReleaseService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ReleaseServiceRequest is the request struct for api ReleaseService
+type ReleaseServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// ReleaseServiceResponse is the response struct for api ReleaseService
+type ReleaseServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateReleaseServiceRequest creates a request to invoke ReleaseService API
+func CreateReleaseServiceRequest() (request *ReleaseServiceRequest) {
+	request = &ReleaseServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "ReleaseService", "/api/services/[region]/[service_name]/release", "", "")
+	request.Method = requests.PUT
+	return
+}
+
+// CreateReleaseServiceResponse creates a response to parse from ReleaseService response
+func CreateReleaseServiceResponse() (response *ReleaseServiceResponse) {
+	response = &ReleaseServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/start_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// StartService invokes the eas.StartService API synchronously
+// api document: https://help.aliyun.com/api/eas/startservice.html
+func (client *Client) StartService(request *StartServiceRequest) (response *StartServiceResponse, err error) {
+	response = CreateStartServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// StartServiceWithChan invokes the eas.StartService API asynchronously
+// api document: https://help.aliyun.com/api/eas/startservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StartServiceWithChan(request *StartServiceRequest) (<-chan *StartServiceResponse, <-chan error) {
+	responseChan := make(chan *StartServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.StartService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// StartServiceWithCallback invokes the eas.StartService API asynchronously
+// api document: https://help.aliyun.com/api/eas/startservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StartServiceWithCallback(request *StartServiceRequest, callback func(response *StartServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *StartServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.StartService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// StartServiceRequest is the request struct for api StartService
+type StartServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// StartServiceResponse is the response struct for api StartService
+type StartServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateStartServiceRequest creates a request to invoke StartService API
+func CreateStartServiceRequest() (request *StartServiceRequest) {
+	request = &StartServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "StartService", "/api/services/[region]/[service_name]/start", "", "")
+	request.Method = requests.PUT
+	return
+}
+
+// CreateStartServiceResponse creates a response to parse from StartService response
+func CreateStartServiceResponse() (response *StartServiceResponse) {
+	response = &StartServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/stop_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// StopService invokes the eas.StopService API synchronously
+// api document: https://help.aliyun.com/api/eas/stopservice.html
+func (client *Client) StopService(request *StopServiceRequest) (response *StopServiceResponse, err error) {
+	response = CreateStopServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// StopServiceWithChan invokes the eas.StopService API asynchronously
+// api document: https://help.aliyun.com/api/eas/stopservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StopServiceWithChan(request *StopServiceRequest) (<-chan *StopServiceResponse, <-chan error) {
+	responseChan := make(chan *StopServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.StopService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// StopServiceWithCallback invokes the eas.StopService API asynchronously
+// api document: https://help.aliyun.com/api/eas/stopservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StopServiceWithCallback(request *StopServiceRequest, callback func(response *StopServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *StopServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.StopService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// StopServiceRequest is the request struct for api StopService
+type StopServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// StopServiceResponse is the response struct for api StopService
+type StopServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateStopServiceRequest creates a request to invoke StopService API
+func CreateStopServiceRequest() (request *StopServiceRequest) {
+	request = &StopServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "StopService", "/api/services/[region]/[service_name]/stop", "", "")
+	request.Method = requests.PUT
+	return
+}
+
+// CreateStopServiceResponse creates a response to parse from StopService response
+func CreateStopServiceResponse() (response *StopServiceResponse) {
+	response = &StopServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/eas/sync_service.go

@@ -0,0 +1,104 @@
+package eas
+
+//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"
+)
+
+// SyncService invokes the eas.SyncService API synchronously
+// api document: https://help.aliyun.com/api/eas/syncservice.html
+func (client *Client) SyncService(request *SyncServiceRequest) (response *SyncServiceResponse, err error) {
+	response = CreateSyncServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SyncServiceWithChan invokes the eas.SyncService API asynchronously
+// api document: https://help.aliyun.com/api/eas/syncservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SyncServiceWithChan(request *SyncServiceRequest) (<-chan *SyncServiceResponse, <-chan error) {
+	responseChan := make(chan *SyncServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SyncService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SyncServiceWithCallback invokes the eas.SyncService API asynchronously
+// api document: https://help.aliyun.com/api/eas/syncservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SyncServiceWithCallback(request *SyncServiceRequest, callback func(response *SyncServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SyncServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.SyncService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SyncServiceRequest is the request struct for api SyncService
+type SyncServiceRequest struct {
+	*requests.RoaRequest
+	ServiceName string `position:"Path" name:"service_name"`
+	Region      string `position:"Path" name:"region"`
+}
+
+// SyncServiceResponse is the response struct for api SyncService
+type SyncServiceResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateSyncServiceRequest creates a request to invoke SyncService API
+func CreateSyncServiceRequest() (request *SyncServiceRequest) {
+	request = &SyncServiceRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("eas", "2018-05-22", "SyncService", "/api/services/[region]/[service_name]/sync", "", "")
+	request.Method = requests.GET
+	return
+}
+
+// CreateSyncServiceResponse creates a response to parse from SyncService response
+func CreateSyncServiceResponse() (response *SyncServiceResponse) {
+	response = &SyncServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}