Browse Source

EHPC SDK Auto Released By qianzheng.llc,Version:1.23.0

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 7 years ago
parent
commit
59d358a696
61 changed files with 1963 additions and 101 deletions
  1. 5 0
      ChangeLog.txt
  2. 108 0
      services/ehpc/add_container_app.go
  3. 9 8
      services/ehpc/add_nodes.go
  4. 2 3
      services/ehpc/add_users.go
  5. 31 31
      services/ehpc/create_cluster.go
  6. 129 0
      services/ehpc/create_hybrid_cluster.go
  7. 6 6
      services/ehpc/create_job_template.go
  8. 1 1
      services/ehpc/delete_cluster.go
  9. 108 0
      services/ehpc/delete_container_apps.go
  10. 1 1
      services/ehpc/delete_jobs.go
  11. 2 2
      services/ehpc/delete_nodes.go
  12. 118 0
      services/ehpc/describe_auto_scale_config.go
  13. 104 0
      services/ehpc/describe_container_app.go
  14. 7 7
      services/ehpc/edit_job_template.go
  15. 104 0
      services/ehpc/get_hybrid_cluster_config.go
  16. 114 0
      services/ehpc/invoke_shell_command.go
  17. 1 1
      services/ehpc/list_cluster_logs.go
  18. 1 1
      services/ehpc/list_clusters.go
  19. 110 0
      services/ehpc/list_commands.go
  20. 108 0
      services/ehpc/list_container_apps.go
  21. 111 0
      services/ehpc/list_container_images.go
  22. 3 3
      services/ehpc/list_custom_images.go
  23. 117 0
      services/ehpc/list_invocation_results.go
  24. 107 0
      services/ehpc/list_invocation_status.go
  25. 1 1
      services/ehpc/list_job_templates.go
  26. 2 2
      services/ehpc/list_jobs.go
  27. 3 3
      services/ehpc/list_nodes.go
  28. 2 2
      services/ehpc/list_nodes_no_paging.go
  29. 1 1
      services/ehpc/list_preferred_ecs_types.go
  30. 1 1
      services/ehpc/list_users.go
  31. 1 1
      services/ehpc/list_volumes.go
  32. 1 1
      services/ehpc/modify_cluster_attributes.go
  33. 104 0
      services/ehpc/modify_container_app_attributes.go
  34. 106 0
      services/ehpc/pull_image.go
  35. 1 1
      services/ehpc/rerun_jobs.go
  36. 1 1
      services/ehpc/reset_nodes.go
  37. 5 5
      services/ehpc/set_auto_scale_config.go
  38. 2 2
      services/ehpc/set_job_user.go
  39. 1 1
      services/ehpc/start_nodes.go
  40. 1 1
      services/ehpc/stop_jobs.go
  41. 1 1
      services/ehpc/stop_nodes.go
  42. 2 0
      services/ehpc/struct_cluster_info.go
  43. 1 0
      services/ehpc/struct_cluster_info_simple.go
  44. 24 0
      services/ehpc/struct_command.go
  45. 21 0
      services/ehpc/struct_commands.go
  46. 27 0
      services/ehpc/struct_container_app_info.go
  47. 21 0
      services/ehpc/struct_container_apps.go
  48. 27 0
      services/ehpc/struct_container_apps_item.go
  49. 21 0
      services/ehpc/struct_container_id.go
  50. 21 0
      services/ehpc/struct_images_in_list_container_images.go
  51. 2 2
      services/ehpc/struct_images_in_list_custom_images.go
  52. 27 0
      services/ehpc/struct_images_item.go
  53. 2 2
      services/ehpc/struct_instance_ids_in_add_nodes.go
  54. 21 0
      services/ehpc/struct_instance_ids_in_invoke_shell_command.go
  55. 27 0
      services/ehpc/struct_invocation_result.go
  56. 21 0
      services/ehpc/struct_invocation_results.go
  57. 22 0
      services/ehpc/struct_invoke_instance.go
  58. 21 0
      services/ehpc/struct_invoke_instances.go
  59. 1 0
      services/ehpc/struct_node_info.go
  60. 12 8
      services/ehpc/submit_job.go
  61. 1 1
      services/ehpc/upgrade_client.go

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2018-07-13 Version: 1.23.0
+1, New APIs for batch executing commands in cluster: InvokeShellCommand, ListCommands, etc.
+2, New APIs for HybridCluster (link E-HPC with cluster in local IDC): CreateHybridCluster, etc.
+3, New APIs for Container applications: AddContainerApp, etc.
+
 2018-07-13 Version: 1.22.6
 1, Release 2016-06-20 TableStore Open API
 

+ 108 - 0
services/ehpc/add_container_app.go

@@ -0,0 +1,108 @@
+package ehpc
+
+//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"
+)
+
+// AddContainerApp invokes the ehpc.AddContainerApp API synchronously
+// api document: https://help.aliyun.com/api/ehpc/addcontainerapp.html
+func (client *Client) AddContainerApp(request *AddContainerAppRequest) (response *AddContainerAppResponse, err error) {
+	response = CreateAddContainerAppResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddContainerAppWithChan invokes the ehpc.AddContainerApp API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/addcontainerapp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddContainerAppWithChan(request *AddContainerAppRequest) (<-chan *AddContainerAppResponse, <-chan error) {
+	responseChan := make(chan *AddContainerAppResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddContainerApp(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddContainerAppWithCallback invokes the ehpc.AddContainerApp API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/addcontainerapp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddContainerAppWithCallback(request *AddContainerAppRequest, callback func(response *AddContainerAppResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddContainerAppResponse
+		var err error
+		defer close(result)
+		response, err = client.AddContainerApp(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddContainerAppRequest is the request struct for api AddContainerApp
+type AddContainerAppRequest struct {
+	*requests.RpcRequest
+	ContainerType string `position:"Query" name:"ContainerType"`
+	Name          string `position:"Query" name:"Name"`
+	Description   string `position:"Query" name:"Description"`
+	Repository    string `position:"Query" name:"Repository"`
+	ImageTag      string `position:"Query" name:"ImageTag"`
+}
+
+// AddContainerAppResponse is the response struct for api AddContainerApp
+type AddContainerAppResponse struct {
+	*responses.BaseResponse
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	ContainerId ContainerId `json:"ContainerId" xml:"ContainerId"`
+}
+
+// CreateAddContainerAppRequest creates a request to invoke AddContainerApp API
+func CreateAddContainerAppRequest() (request *AddContainerAppRequest) {
+	request = &AddContainerAppRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "AddContainerApp", "ehs", "openAPI")
+	return
+}
+
+// CreateAddContainerAppResponse creates a response to parse from AddContainerApp response
+func CreateAddContainerAppResponse() (response *AddContainerAppResponse) {
+	response = &AddContainerAppResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 9 - 8
services/ehpc/add_nodes.go

@@ -76,24 +76,25 @@ func (client *Client) AddNodesWithCallback(request *AddNodesRequest, callback fu
 // AddNodesRequest is the request struct for api AddNodes
 type AddNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId             string           `position:"Query" name:"ClusterId"`
-	ImageOwnerAlias       string           `position:"Query" name:"ImageOwnerAlias"`
+	AutoRenewPeriod       requests.Integer `position:"Query" name:"AutoRenewPeriod"`
+	Period                requests.Integer `position:"Query" name:"Period"`
 	ImageId               string           `position:"Query" name:"ImageId"`
 	Count                 requests.Integer `position:"Query" name:"Count"`
+	ClusterId             string           `position:"Query" name:"ClusterId"`
 	ComputeSpotStrategy   string           `position:"Query" name:"ComputeSpotStrategy"`
-	ComputeSpotPriceLimit string           `position:"Query" name:"ComputeSpotPriceLimit"`
-	EcsChargeType         string           `position:"Query" name:"EcsChargeType"`
-	Period                requests.Integer `position:"Query" name:"Period"`
+	ImageOwnerAlias       string           `position:"Query" name:"ImageOwnerAlias"`
 	PeriodUnit            string           `position:"Query" name:"PeriodUnit"`
 	AutoRenew             string           `position:"Query" name:"AutoRenew"`
-	AutoRenewPeriod       requests.Integer `position:"Query" name:"AutoRenewPeriod"`
+	EcsChargeType         string           `position:"Query" name:"EcsChargeType"`
+	InstanceType          string           `position:"Query" name:"InstanceType"`
+	ComputeSpotPriceLimit string           `position:"Query" name:"ComputeSpotPriceLimit"`
 }
 
 // AddNodesResponse is the response struct for api AddNodes
 type AddNodesResponse struct {
 	*responses.BaseResponse
-	RequestId   string      `json:"RequestId" xml:"RequestId"`
-	InstanceIds InstanceIds `json:"InstanceIds" xml:"InstanceIds"`
+	RequestId   string                `json:"RequestId" xml:"RequestId"`
+	InstanceIds InstanceIdsInAddNodes `json:"InstanceIds" xml:"InstanceIds"`
 }
 
 // CreateAddNodesRequest creates a request to invoke AddNodes API

+ 2 - 3
services/ehpc/add_users.go

@@ -76,9 +76,8 @@ func (client *Client) AddUsersWithCallback(request *AddUsersRequest, callback fu
 // AddUsersRequest is the request struct for api AddUsers
 type AddUsersRequest struct {
 	*requests.RpcRequest
-	ClusterId       string           `position:"Query" name:"ClusterId"`
-	User            *[]AddUsersUser  `position:"Query" name:"User"  type:"Repeated"`
-	ReleaseInstance requests.Boolean `position:"Query" name:"ReleaseInstance"`
+	ClusterId string          `position:"Query" name:"ClusterId"`
+	User      *[]AddUsersUser `position:"Query" name:"User"  type:"Repeated"`
 }
 
 // AddUsersUser is a repeated param struct in AddUsersRequest

+ 31 - 31
services/ehpc/create_cluster.go

@@ -76,49 +76,44 @@ func (client *Client) CreateClusterWithCallback(request *CreateClusterRequest, c
 // CreateClusterRequest is the request struct for api CreateCluster
 type CreateClusterRequest struct {
 	*requests.RpcRequest
-	ZoneId                      string                            `position:"Query" name:"ZoneId"`
-	Name                        string                            `position:"Query" name:"Name"`
-	Description                 string                            `position:"Query" name:"Description"`
+	SccClusterId                string                            `position:"Query" name:"SccClusterId"`
+	ImageId                     string                            `position:"Query" name:"ImageId"`
+	EcsOrderManagerInstanceType string                            `position:"Query" name:"EcsOrder.Manager.InstanceType"`
 	EhpcVersion                 string                            `position:"Query" name:"EhpcVersion"`
-	OsTag                       string                            `position:"Query" name:"OsTag"`
 	AccountType                 string                            `position:"Query" name:"AccountType"`
-	SchedulerType               string                            `position:"Query" name:"SchedulerType"`
 	SecurityGroupId             string                            `position:"Query" name:"SecurityGroupId"`
+	Description                 string                            `position:"Query" name:"Description"`
+	KeyPairName                 string                            `position:"Query" name:"KeyPairName"`
 	SecurityGroupName           string                            `position:"Query" name:"SecurityGroupName"`
-	VpcId                       string                            `position:"Query" name:"VpcId"`
-	VSwitchId                   string                            `position:"Query" name:"VSwitchId"`
+	EcsOrderComputeInstanceType string                            `position:"Query" name:"EcsOrder.Compute.InstanceType"`
+	ImageOwnerAlias             string                            `position:"Query" name:"ImageOwnerAlias"`
 	VolumeType                  string                            `position:"Query" name:"VolumeType"`
-	VolumeId                    string                            `position:"Query" name:"VolumeId"`
-	VolumeProtocol              string                            `position:"Query" name:"VolumeProtocol"`
-	VolumeMountpoint            string                            `position:"Query" name:"VolumeMountpoint"`
-	RemoteDirectory             string                            `position:"Query" name:"RemoteDirectory"`
 	DeployMode                  string                            `position:"Query" name:"DeployMode"`
-	HaEnable                    requests.Boolean                  `position:"Query" name:"HaEnable"`
-	EcsChargeType               string                            `position:"Query" name:"EcsChargeType"`
-	Password                    string                            `position:"Query" name:"Password"`
-	KeyPairName                 string                            `position:"Query" name:"KeyPairName"`
-	ImageOwnerAlias             string                            `position:"Query" name:"ImageOwnerAlias"`
-	ImageId                     string                            `position:"Query" name:"ImageId"`
 	EcsOrderManagerCount        requests.Integer                  `position:"Query" name:"EcsOrder.Manager.Count"`
-	EcsOrderManagerInstanceType string                            `position:"Query" name:"EcsOrder.Manager.InstanceType"`
-	EcsOrderComputeCount        requests.Integer                  `position:"Query" name:"EcsOrder.Compute.Count"`
-	EcsOrderComputeInstanceType string                            `position:"Query" name:"EcsOrder.Compute.InstanceType"`
+	Password                    string                            `position:"Query" name:"Password"`
 	EcsOrderLoginCount          requests.Integer                  `position:"Query" name:"EcsOrder.Login.Count"`
-	EcsOrderLoginInstanceType   string                            `position:"Query" name:"EcsOrder.Login.InstanceType"`
-	SccClusterId                string                            `position:"Query" name:"SccClusterId"`
-	ComputeSpotStrategy         string                            `position:"Query" name:"ComputeSpotStrategy"`
 	ComputeSpotPriceLimit       string                            `position:"Query" name:"ComputeSpotPriceLimit"`
-	Application                 *[]CreateClusterApplication       `position:"Query" name:"Application"  type:"Repeated"`
-	PostInstallScript           *[]CreateClusterPostInstallScript `position:"Query" name:"PostInstallScript"  type:"Repeated"`
+	AutoRenewPeriod             requests.Integer                  `position:"Query" name:"AutoRenewPeriod"`
 	Period                      requests.Integer                  `position:"Query" name:"Period"`
+	VolumeProtocol              string                            `position:"Query" name:"VolumeProtocol"`
+	OsTag                       string                            `position:"Query" name:"OsTag"`
+	RemoteDirectory             string                            `position:"Query" name:"RemoteDirectory"`
+	EcsOrderComputeCount        requests.Integer                  `position:"Query" name:"EcsOrder.Compute.Count"`
+	ComputeSpotStrategy         string                            `position:"Query" name:"ComputeSpotStrategy"`
+	PostInstallScript           *[]CreateClusterPostInstallScript `position:"Query" name:"PostInstallScript"  type:"Repeated"`
+	VSwitchId                   string                            `position:"Query" name:"VSwitchId"`
 	PeriodUnit                  string                            `position:"Query" name:"PeriodUnit"`
+	Application                 *[]CreateClusterApplication       `position:"Query" name:"Application"  type:"Repeated"`
 	AutoRenew                   string                            `position:"Query" name:"AutoRenew"`
-	AutoRenewPeriod             requests.Integer                  `position:"Query" name:"AutoRenewPeriod"`
-}
-
-// CreateClusterApplication is a repeated param struct in CreateClusterRequest
-type CreateClusterApplication struct {
-	Tag string `name:"Tag"`
+	EcsChargeType               string                            `position:"Query" name:"EcsChargeType"`
+	VpcId                       string                            `position:"Query" name:"VpcId"`
+	HaEnable                    requests.Boolean                  `position:"Query" name:"HaEnable"`
+	Name                        string                            `position:"Query" name:"Name"`
+	SchedulerType               string                            `position:"Query" name:"SchedulerType"`
+	VolumeId                    string                            `position:"Query" name:"VolumeId"`
+	VolumeMountpoint            string                            `position:"Query" name:"VolumeMountpoint"`
+	EcsOrderLoginInstanceType   string                            `position:"Query" name:"EcsOrder.Login.InstanceType"`
+	ZoneId                      string                            `position:"Query" name:"ZoneId"`
 }
 
 // CreateClusterPostInstallScript is a repeated param struct in CreateClusterRequest
@@ -127,6 +122,11 @@ type CreateClusterPostInstallScript struct {
 	Args string `name:"Args"`
 }
 
+// CreateClusterApplication is a repeated param struct in CreateClusterRequest
+type CreateClusterApplication struct {
+	Tag string `name:"Tag"`
+}
+
 // CreateClusterResponse is the response struct for api CreateCluster
 type CreateClusterResponse struct {
 	*responses.BaseResponse

+ 129 - 0
services/ehpc/create_hybrid_cluster.go

@@ -0,0 +1,129 @@
+package ehpc
+
+//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"
+)
+
+// CreateHybridCluster invokes the ehpc.CreateHybridCluster API synchronously
+// api document: https://help.aliyun.com/api/ehpc/createhybridcluster.html
+func (client *Client) CreateHybridCluster(request *CreateHybridClusterRequest) (response *CreateHybridClusterResponse, err error) {
+	response = CreateCreateHybridClusterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateHybridClusterWithChan invokes the ehpc.CreateHybridCluster API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/createhybridcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateHybridClusterWithChan(request *CreateHybridClusterRequest) (<-chan *CreateHybridClusterResponse, <-chan error) {
+	responseChan := make(chan *CreateHybridClusterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateHybridCluster(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateHybridClusterWithCallback invokes the ehpc.CreateHybridCluster API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/createhybridcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateHybridClusterWithCallback(request *CreateHybridClusterRequest, callback func(response *CreateHybridClusterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateHybridClusterResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateHybridCluster(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateHybridClusterRequest is the request struct for api CreateHybridCluster
+type CreateHybridClusterRequest struct {
+	*requests.RpcRequest
+	VolumeProtocol              string                            `position:"Query" name:"VolumeProtocol"`
+	OsTag                       string                            `position:"Query" name:"OsTag"`
+	RemoteDirectory             string                            `position:"Query" name:"RemoteDirectory"`
+	EhpcVersion                 string                            `position:"Query" name:"EhpcVersion"`
+	SecurityGroupId             string                            `position:"Query" name:"SecurityGroupId"`
+	Description                 string                            `position:"Query" name:"Description"`
+	KeyPairName                 string                            `position:"Query" name:"KeyPairName"`
+	SecurityGroupName           string                            `position:"Query" name:"SecurityGroupName"`
+	EcsOrderComputeInstanceType string                            `position:"Query" name:"EcsOrder.Compute.InstanceType"`
+	VSwitchId                   string                            `position:"Query" name:"VSwitchId"`
+	VolumeType                  string                            `position:"Query" name:"VolumeType"`
+	Password                    string                            `position:"Query" name:"Password"`
+	Nodes                       string                            `position:"Query" name:"Nodes"`
+	Application                 *[]CreateHybridClusterApplication `position:"Query" name:"Application"  type:"Repeated"`
+	Domain                      string                            `position:"Query" name:"Domain"`
+	VpcId                       string                            `position:"Query" name:"VpcId"`
+	Name                        string                            `position:"Query" name:"Name"`
+	VolumeId                    string                            `position:"Query" name:"VolumeId"`
+	VolumeMountpoint            string                            `position:"Query" name:"VolumeMountpoint"`
+	ZoneId                      string                            `position:"Query" name:"ZoneId"`
+	Location                    string                            `position:"Query" name:"Location"`
+}
+
+// CreateHybridClusterApplication is a repeated param struct in CreateHybridClusterRequest
+type CreateHybridClusterApplication struct {
+	Tag string `name:"Tag"`
+}
+
+// CreateHybridClusterResponse is the response struct for api CreateHybridCluster
+type CreateHybridClusterResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	ClusterId string `json:"ClusterId" xml:"ClusterId"`
+}
+
+// CreateCreateHybridClusterRequest creates a request to invoke CreateHybridCluster API
+func CreateCreateHybridClusterRequest() (request *CreateHybridClusterRequest) {
+	request = &CreateHybridClusterRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "CreateHybridCluster", "ehs", "openAPI")
+	return
+}
+
+// CreateCreateHybridClusterResponse creates a response to parse from CreateHybridCluster response
+func CreateCreateHybridClusterResponse() (response *CreateHybridClusterResponse) {
+	response = &CreateHybridClusterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 6 - 6
services/ehpc/create_job_template.go

@@ -76,16 +76,16 @@ func (client *Client) CreateJobTemplateWithCallback(request *CreateJobTemplateRe
 // CreateJobTemplateRequest is the request struct for api CreateJobTemplate
 type CreateJobTemplateRequest struct {
 	*requests.RpcRequest
-	CommandLine        string           `position:"Query" name:"CommandLine"`
+	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
+	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
+	PackagePath        string           `position:"Query" name:"PackagePath"`
+	Variables          string           `position:"Query" name:"Variables"`
 	Name               string           `position:"Query" name:"Name"`
 	RunasUser          string           `position:"Query" name:"RunasUser"`
-	Priority           requests.Integer `position:"Query" name:"Priority"`
-	PackagePath        string           `position:"Query" name:"PackagePath"`
 	StdoutRedirectPath string           `position:"Query" name:"StdoutRedirectPath"`
-	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
 	ReRunable          requests.Boolean `position:"Query" name:"ReRunable"`
-	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
-	Variables          string           `position:"Query" name:"Variables"`
+	Priority           requests.Integer `position:"Query" name:"Priority"`
+	CommandLine        string           `position:"Query" name:"CommandLine"`
 }
 
 // CreateJobTemplateResponse is the response struct for api CreateJobTemplate

+ 1 - 1
services/ehpc/delete_cluster.go

@@ -76,8 +76,8 @@ func (client *Client) DeleteClusterWithCallback(request *DeleteClusterRequest, c
 // DeleteClusterRequest is the request struct for api DeleteCluster
 type DeleteClusterRequest struct {
 	*requests.RpcRequest
-	ClusterId       string `position:"Query" name:"ClusterId"`
 	ReleaseInstance string `position:"Query" name:"ReleaseInstance"`
+	ClusterId       string `position:"Query" name:"ClusterId"`
 }
 
 // DeleteClusterResponse is the response struct for api DeleteCluster

+ 108 - 0
services/ehpc/delete_container_apps.go

@@ -0,0 +1,108 @@
+package ehpc
+
+//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"
+)
+
+// DeleteContainerApps invokes the ehpc.DeleteContainerApps API synchronously
+// api document: https://help.aliyun.com/api/ehpc/deletecontainerapps.html
+func (client *Client) DeleteContainerApps(request *DeleteContainerAppsRequest) (response *DeleteContainerAppsResponse, err error) {
+	response = CreateDeleteContainerAppsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteContainerAppsWithChan invokes the ehpc.DeleteContainerApps API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/deletecontainerapps.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteContainerAppsWithChan(request *DeleteContainerAppsRequest) (<-chan *DeleteContainerAppsResponse, <-chan error) {
+	responseChan := make(chan *DeleteContainerAppsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteContainerApps(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteContainerAppsWithCallback invokes the ehpc.DeleteContainerApps API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/deletecontainerapps.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteContainerAppsWithCallback(request *DeleteContainerAppsRequest, callback func(response *DeleteContainerAppsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteContainerAppsResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteContainerApps(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteContainerAppsRequest is the request struct for api DeleteContainerApps
+type DeleteContainerAppsRequest struct {
+	*requests.RpcRequest
+	ContainerApp *[]DeleteContainerAppsContainerApp `position:"Query" name:"ContainerApp"  type:"Repeated"`
+}
+
+// DeleteContainerAppsContainerApp is a repeated param struct in DeleteContainerAppsRequest
+type DeleteContainerAppsContainerApp struct {
+	Id string `name:"Id"`
+}
+
+// DeleteContainerAppsResponse is the response struct for api DeleteContainerApps
+type DeleteContainerAppsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteContainerAppsRequest creates a request to invoke DeleteContainerApps API
+func CreateDeleteContainerAppsRequest() (request *DeleteContainerAppsRequest) {
+	request = &DeleteContainerAppsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "DeleteContainerApps", "ehs", "openAPI")
+	return
+}
+
+// CreateDeleteContainerAppsResponse creates a response to parse from DeleteContainerApps response
+func CreateDeleteContainerAppsResponse() (response *DeleteContainerAppsResponse) {
+	response = &DeleteContainerAppsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/ehpc/delete_jobs.go

@@ -76,8 +76,8 @@ func (client *Client) DeleteJobsWithCallback(request *DeleteJobsRequest, callbac
 // DeleteJobsRequest is the request struct for api DeleteJobs
 type DeleteJobsRequest struct {
 	*requests.RpcRequest
-	ClusterId string `position:"Query" name:"ClusterId"`
 	Jobs      string `position:"Query" name:"Jobs"`
+	ClusterId string `position:"Query" name:"ClusterId"`
 }
 
 // DeleteJobsResponse is the response struct for api DeleteJobs

+ 2 - 2
services/ehpc/delete_nodes.go

@@ -76,9 +76,9 @@ func (client *Client) DeleteNodesWithCallback(request *DeleteNodesRequest, callb
 // DeleteNodesRequest is the request struct for api DeleteNodes
 type DeleteNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId       string                 `position:"Query" name:"ClusterId"`
-	Instance        *[]DeleteNodesInstance `position:"Query" name:"Instance"  type:"Repeated"`
 	ReleaseInstance requests.Boolean       `position:"Query" name:"ReleaseInstance"`
+	Instance        *[]DeleteNodesInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	ClusterId       string                 `position:"Query" name:"ClusterId"`
 }
 
 // DeleteNodesInstance is a repeated param struct in DeleteNodesRequest

+ 118 - 0
services/ehpc/describe_auto_scale_config.go

@@ -0,0 +1,118 @@
+package ehpc
+
+//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"
+)
+
+// DescribeAutoScaleConfig invokes the ehpc.DescribeAutoScaleConfig API synchronously
+// api document: https://help.aliyun.com/api/ehpc/describeautoscaleconfig.html
+func (client *Client) DescribeAutoScaleConfig(request *DescribeAutoScaleConfigRequest) (response *DescribeAutoScaleConfigResponse, err error) {
+	response = CreateDescribeAutoScaleConfigResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAutoScaleConfigWithChan invokes the ehpc.DescribeAutoScaleConfig API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/describeautoscaleconfig.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAutoScaleConfigWithChan(request *DescribeAutoScaleConfigRequest) (<-chan *DescribeAutoScaleConfigResponse, <-chan error) {
+	responseChan := make(chan *DescribeAutoScaleConfigResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAutoScaleConfig(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAutoScaleConfigWithCallback invokes the ehpc.DescribeAutoScaleConfig API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/describeautoscaleconfig.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAutoScaleConfigWithCallback(request *DescribeAutoScaleConfigRequest, callback func(response *DescribeAutoScaleConfigResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAutoScaleConfigResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAutoScaleConfig(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAutoScaleConfigRequest is the request struct for api DescribeAutoScaleConfig
+type DescribeAutoScaleConfigRequest struct {
+	*requests.RpcRequest
+	ClusterId string `position:"Query" name:"ClusterId"`
+}
+
+// DescribeAutoScaleConfigResponse is the response struct for api DescribeAutoScaleConfig
+type DescribeAutoScaleConfigResponse struct {
+	*responses.BaseResponse
+	RequestId               string `json:"RequestId" xml:"RequestId"`
+	Uid                     string `json:"Uid" xml:"Uid"`
+	ClusterId               string `json:"ClusterId" xml:"ClusterId"`
+	ClusterType             string `json:"ClusterType" xml:"ClusterType"`
+	EnableAutoGrow          bool   `json:"EnableAutoGrow" xml:"EnableAutoGrow"`
+	EnableAutoShrink        bool   `json:"EnableAutoShrink" xml:"EnableAutoShrink"`
+	GrowIntervalInMinutes   int    `json:"GrowIntervalInMinutes" xml:"GrowIntervalInMinutes"`
+	ShrinkIntervalInMinutes int    `json:"ShrinkIntervalInMinutes" xml:"ShrinkIntervalInMinutes"`
+	ShrinkIdleTimes         int    `json:"ShrinkIdleTimes" xml:"ShrinkIdleTimes"`
+	GrowTimeoutInMinutes    int    `json:"GrowTimeoutInMinutes" xml:"GrowTimeoutInMinutes"`
+	ExtraNodesGrowRatio     int    `json:"ExtraNodesGrowRatio" xml:"ExtraNodesGrowRatio"`
+	GrowRatio               int    `json:"GrowRatio" xml:"GrowRatio"`
+	MaxNodesInCluster       int    `json:"MaxNodesInCluster" xml:"MaxNodesInCluster"`
+	ExcludeNodes            string `json:"ExcludeNodes" xml:"ExcludeNodes"`
+	SpotStrategy            string `json:"SpotStrategy" xml:"SpotStrategy"`
+	SpotPriceLimit          string `json:"SpotPriceLimit" xml:"SpotPriceLimit"`
+}
+
+// CreateDescribeAutoScaleConfigRequest creates a request to invoke DescribeAutoScaleConfig API
+func CreateDescribeAutoScaleConfigRequest() (request *DescribeAutoScaleConfigRequest) {
+	request = &DescribeAutoScaleConfigRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "DescribeAutoScaleConfig", "ehs", "openAPI")
+	return
+}
+
+// CreateDescribeAutoScaleConfigResponse creates a response to parse from DescribeAutoScaleConfig response
+func CreateDescribeAutoScaleConfigResponse() (response *DescribeAutoScaleConfigResponse) {
+	response = &DescribeAutoScaleConfigResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/ehpc/describe_container_app.go

@@ -0,0 +1,104 @@
+package ehpc
+
+//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"
+)
+
+// DescribeContainerApp invokes the ehpc.DescribeContainerApp API synchronously
+// api document: https://help.aliyun.com/api/ehpc/describecontainerapp.html
+func (client *Client) DescribeContainerApp(request *DescribeContainerAppRequest) (response *DescribeContainerAppResponse, err error) {
+	response = CreateDescribeContainerAppResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeContainerAppWithChan invokes the ehpc.DescribeContainerApp API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/describecontainerapp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeContainerAppWithChan(request *DescribeContainerAppRequest) (<-chan *DescribeContainerAppResponse, <-chan error) {
+	responseChan := make(chan *DescribeContainerAppResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeContainerApp(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeContainerAppWithCallback invokes the ehpc.DescribeContainerApp API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/describecontainerapp.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeContainerAppWithCallback(request *DescribeContainerAppRequest, callback func(response *DescribeContainerAppResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeContainerAppResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeContainerApp(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeContainerAppRequest is the request struct for api DescribeContainerApp
+type DescribeContainerAppRequest struct {
+	*requests.RpcRequest
+	ContainerId string `position:"Query" name:"ContainerId"`
+}
+
+// DescribeContainerAppResponse is the response struct for api DescribeContainerApp
+type DescribeContainerAppResponse struct {
+	*responses.BaseResponse
+	RequestId        string           `json:"RequestId" xml:"RequestId"`
+	ContainerAppInfo ContainerAppInfo `json:"ContainerAppInfo" xml:"ContainerAppInfo"`
+}
+
+// CreateDescribeContainerAppRequest creates a request to invoke DescribeContainerApp API
+func CreateDescribeContainerAppRequest() (request *DescribeContainerAppRequest) {
+	request = &DescribeContainerAppRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "DescribeContainerApp", "ehs", "openAPI")
+	return
+}
+
+// CreateDescribeContainerAppResponse creates a response to parse from DescribeContainerApp response
+func CreateDescribeContainerAppResponse() (response *DescribeContainerAppResponse) {
+	response = &DescribeContainerAppResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 7 - 7
services/ehpc/edit_job_template.go

@@ -76,17 +76,17 @@ func (client *Client) EditJobTemplateWithCallback(request *EditJobTemplateReques
 // EditJobTemplateRequest is the request struct for api EditJobTemplate
 type EditJobTemplateRequest struct {
 	*requests.RpcRequest
-	TemplateId         string           `position:"Query" name:"TemplateId"`
-	CommandLine        string           `position:"Query" name:"CommandLine"`
-	Name               string           `position:"Query" name:"Name"`
+	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
+	Variables          string           `position:"Query" name:"Variables"`
 	RunasUser          string           `position:"Query" name:"RunasUser"`
+	ReRunable          requests.Boolean `position:"Query" name:"ReRunable"`
+	TemplateId         string           `position:"Query" name:"TemplateId"`
 	Priority           requests.Integer `position:"Query" name:"Priority"`
+	CommandLine        string           `position:"Query" name:"CommandLine"`
+	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
 	PackagePath        string           `position:"Query" name:"PackagePath"`
+	Name               string           `position:"Query" name:"Name"`
 	StdoutRedirectPath string           `position:"Query" name:"StdoutRedirectPath"`
-	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
-	ReRunable          requests.Boolean `position:"Query" name:"ReRunable"`
-	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
-	Variables          string           `position:"Query" name:"Variables"`
 }
 
 // EditJobTemplateResponse is the response struct for api EditJobTemplate

+ 104 - 0
services/ehpc/get_hybrid_cluster_config.go

@@ -0,0 +1,104 @@
+package ehpc
+
+//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"
+)
+
+// GetHybridClusterConfig invokes the ehpc.GetHybridClusterConfig API synchronously
+// api document: https://help.aliyun.com/api/ehpc/gethybridclusterconfig.html
+func (client *Client) GetHybridClusterConfig(request *GetHybridClusterConfigRequest) (response *GetHybridClusterConfigResponse, err error) {
+	response = CreateGetHybridClusterConfigResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetHybridClusterConfigWithChan invokes the ehpc.GetHybridClusterConfig API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/gethybridclusterconfig.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetHybridClusterConfigWithChan(request *GetHybridClusterConfigRequest) (<-chan *GetHybridClusterConfigResponse, <-chan error) {
+	responseChan := make(chan *GetHybridClusterConfigResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetHybridClusterConfig(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetHybridClusterConfigWithCallback invokes the ehpc.GetHybridClusterConfig API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/gethybridclusterconfig.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetHybridClusterConfigWithCallback(request *GetHybridClusterConfigRequest, callback func(response *GetHybridClusterConfigResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetHybridClusterConfigResponse
+		var err error
+		defer close(result)
+		response, err = client.GetHybridClusterConfig(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetHybridClusterConfigRequest is the request struct for api GetHybridClusterConfig
+type GetHybridClusterConfigRequest struct {
+	*requests.RpcRequest
+	ClusterId string `position:"Query" name:"ClusterId"`
+}
+
+// GetHybridClusterConfigResponse is the response struct for api GetHybridClusterConfig
+type GetHybridClusterConfigResponse struct {
+	*responses.BaseResponse
+	RequestId     string `json:"RequestId" xml:"RequestId"`
+	ClusterConfig string `json:"ClusterConfig" xml:"ClusterConfig"`
+}
+
+// CreateGetHybridClusterConfigRequest creates a request to invoke GetHybridClusterConfig API
+func CreateGetHybridClusterConfigRequest() (request *GetHybridClusterConfigRequest) {
+	request = &GetHybridClusterConfigRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "GetHybridClusterConfig", "ehs", "openAPI")
+	return
+}
+
+// CreateGetHybridClusterConfigResponse creates a response to parse from GetHybridClusterConfig response
+func CreateGetHybridClusterConfigResponse() (response *GetHybridClusterConfigResponse) {
+	response = &GetHybridClusterConfigResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/ehpc/invoke_shell_command.go

@@ -0,0 +1,114 @@
+package ehpc
+
+//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"
+)
+
+// InvokeShellCommand invokes the ehpc.InvokeShellCommand API synchronously
+// api document: https://help.aliyun.com/api/ehpc/invokeshellcommand.html
+func (client *Client) InvokeShellCommand(request *InvokeShellCommandRequest) (response *InvokeShellCommandResponse, err error) {
+	response = CreateInvokeShellCommandResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// InvokeShellCommandWithChan invokes the ehpc.InvokeShellCommand API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/invokeshellcommand.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InvokeShellCommandWithChan(request *InvokeShellCommandRequest) (<-chan *InvokeShellCommandResponse, <-chan error) {
+	responseChan := make(chan *InvokeShellCommandResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.InvokeShellCommand(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// InvokeShellCommandWithCallback invokes the ehpc.InvokeShellCommand API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/invokeshellcommand.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InvokeShellCommandWithCallback(request *InvokeShellCommandRequest, callback func(response *InvokeShellCommandResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *InvokeShellCommandResponse
+		var err error
+		defer close(result)
+		response, err = client.InvokeShellCommand(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// InvokeShellCommandRequest is the request struct for api InvokeShellCommand
+type InvokeShellCommandRequest struct {
+	*requests.RpcRequest
+	Instance   *[]InvokeShellCommandInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	WorkingDir string                        `position:"Query" name:"WorkingDir"`
+	ClusterId  string                        `position:"Query" name:"ClusterId"`
+	Command    string                        `position:"Query" name:"Command"`
+	Timeout    requests.Integer              `position:"Query" name:"Timeout"`
+}
+
+// InvokeShellCommandInstance is a repeated param struct in InvokeShellCommandRequest
+type InvokeShellCommandInstance struct {
+	Id string `name:"Id"`
+}
+
+// InvokeShellCommandResponse is the response struct for api InvokeShellCommand
+type InvokeShellCommandResponse struct {
+	*responses.BaseResponse
+	RequestId   string                          `json:"RequestId" xml:"RequestId"`
+	CommandId   string                          `json:"CommandId" xml:"CommandId"`
+	InstanceIds InstanceIdsInInvokeShellCommand `json:"InstanceIds" xml:"InstanceIds"`
+}
+
+// CreateInvokeShellCommandRequest creates a request to invoke InvokeShellCommand API
+func CreateInvokeShellCommandRequest() (request *InvokeShellCommandRequest) {
+	request = &InvokeShellCommandRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "InvokeShellCommand", "ehs", "openAPI")
+	return
+}
+
+// CreateInvokeShellCommandResponse creates a response to parse from InvokeShellCommand response
+func CreateInvokeShellCommandResponse() (response *InvokeShellCommandResponse) {
+	response = &InvokeShellCommandResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/ehpc/list_cluster_logs.go

@@ -76,9 +76,9 @@ func (client *Client) ListClusterLogsWithCallback(request *ListClusterLogsReques
 // ListClusterLogsRequest is the request struct for api ListClusterLogs
 type ListClusterLogsRequest struct {
 	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
 	ClusterId  string           `position:"Query" name:"ClusterId"`
 	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize   requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // ListClusterLogsResponse is the response struct for api ListClusterLogs

+ 1 - 1
services/ehpc/list_clusters.go

@@ -76,8 +76,8 @@ func (client *Client) ListClustersWithCallback(request *ListClustersRequest, cal
 // ListClustersRequest is the request struct for api ListClusters
 type ListClustersRequest struct {
 	*requests.RpcRequest
-	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // ListClustersResponse is the response struct for api ListClusters

+ 110 - 0
services/ehpc/list_commands.go

@@ -0,0 +1,110 @@
+package ehpc
+
+//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"
+)
+
+// ListCommands invokes the ehpc.ListCommands API synchronously
+// api document: https://help.aliyun.com/api/ehpc/listcommands.html
+func (client *Client) ListCommands(request *ListCommandsRequest) (response *ListCommandsResponse, err error) {
+	response = CreateListCommandsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListCommandsWithChan invokes the ehpc.ListCommands API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcommands.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListCommandsWithChan(request *ListCommandsRequest) (<-chan *ListCommandsResponse, <-chan error) {
+	responseChan := make(chan *ListCommandsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListCommands(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListCommandsWithCallback invokes the ehpc.ListCommands API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcommands.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListCommandsWithCallback(request *ListCommandsRequest, callback func(response *ListCommandsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListCommandsResponse
+		var err error
+		defer close(result)
+		response, err = client.ListCommands(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListCommandsRequest is the request struct for api ListCommands
+type ListCommandsRequest struct {
+	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	ClusterId  string           `position:"Query" name:"ClusterId"`
+	CommandId  string           `position:"Query" name:"CommandId"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListCommandsResponse is the response struct for api ListCommands
+type ListCommandsResponse struct {
+	*responses.BaseResponse
+	RequestId  string   `json:"RequestId" xml:"RequestId"`
+	TotalCount int      `json:"TotalCount" xml:"TotalCount"`
+	PageNumber int      `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int      `json:"PageSize" xml:"PageSize"`
+	Commands   Commands `json:"Commands" xml:"Commands"`
+}
+
+// CreateListCommandsRequest creates a request to invoke ListCommands API
+func CreateListCommandsRequest() (request *ListCommandsRequest) {
+	request = &ListCommandsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ListCommands", "ehs", "openAPI")
+	return
+}
+
+// CreateListCommandsResponse creates a response to parse from ListCommands response
+func CreateListCommandsResponse() (response *ListCommandsResponse) {
+	response = &ListCommandsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/ehpc/list_container_apps.go

@@ -0,0 +1,108 @@
+package ehpc
+
+//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"
+)
+
+// ListContainerApps invokes the ehpc.ListContainerApps API synchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerapps.html
+func (client *Client) ListContainerApps(request *ListContainerAppsRequest) (response *ListContainerAppsResponse, err error) {
+	response = CreateListContainerAppsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListContainerAppsWithChan invokes the ehpc.ListContainerApps API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerapps.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListContainerAppsWithChan(request *ListContainerAppsRequest) (<-chan *ListContainerAppsResponse, <-chan error) {
+	responseChan := make(chan *ListContainerAppsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListContainerApps(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListContainerAppsWithCallback invokes the ehpc.ListContainerApps API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerapps.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListContainerAppsWithCallback(request *ListContainerAppsRequest, callback func(response *ListContainerAppsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListContainerAppsResponse
+		var err error
+		defer close(result)
+		response, err = client.ListContainerApps(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListContainerAppsRequest is the request struct for api ListContainerApps
+type ListContainerAppsRequest struct {
+	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListContainerAppsResponse is the response struct for api ListContainerApps
+type ListContainerAppsResponse struct {
+	*responses.BaseResponse
+	RequestId     string        `json:"RequestId" xml:"RequestId"`
+	TotalCount    int           `json:"TotalCount" xml:"TotalCount"`
+	PageNumber    int           `json:"PageNumber" xml:"PageNumber"`
+	PageSize      int           `json:"PageSize" xml:"PageSize"`
+	ContainerApps ContainerApps `json:"ContainerApps" xml:"ContainerApps"`
+}
+
+// CreateListContainerAppsRequest creates a request to invoke ListContainerApps API
+func CreateListContainerAppsRequest() (request *ListContainerAppsRequest) {
+	request = &ListContainerAppsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ListContainerApps", "ehs", "openAPI")
+	return
+}
+
+// CreateListContainerAppsResponse creates a response to parse from ListContainerApps response
+func CreateListContainerAppsResponse() (response *ListContainerAppsResponse) {
+	response = &ListContainerAppsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/ehpc/list_container_images.go

@@ -0,0 +1,111 @@
+package ehpc
+
+//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"
+)
+
+// ListContainerImages invokes the ehpc.ListContainerImages API synchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerimages.html
+func (client *Client) ListContainerImages(request *ListContainerImagesRequest) (response *ListContainerImagesResponse, err error) {
+	response = CreateListContainerImagesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListContainerImagesWithChan invokes the ehpc.ListContainerImages API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerimages.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListContainerImagesWithChan(request *ListContainerImagesRequest) (<-chan *ListContainerImagesResponse, <-chan error) {
+	responseChan := make(chan *ListContainerImagesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListContainerImages(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListContainerImagesWithCallback invokes the ehpc.ListContainerImages API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listcontainerimages.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListContainerImagesWithCallback(request *ListContainerImagesRequest, callback func(response *ListContainerImagesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListContainerImagesResponse
+		var err error
+		defer close(result)
+		response, err = client.ListContainerImages(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListContainerImagesRequest is the request struct for api ListContainerImages
+type ListContainerImagesRequest struct {
+	*requests.RpcRequest
+	ContainerType string           `position:"Query" name:"ContainerType"`
+	PageSize      requests.Integer `position:"Query" name:"PageSize"`
+	ClusterId     string           `position:"Query" name:"ClusterId"`
+	PageNumber    requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListContainerImagesResponse is the response struct for api ListContainerImages
+type ListContainerImagesResponse struct {
+	*responses.BaseResponse
+	RequestId  string                      `json:"RequestId" xml:"RequestId"`
+	TotalCount int                         `json:"TotalCount" xml:"TotalCount"`
+	PageNumber int                         `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int                         `json:"PageSize" xml:"PageSize"`
+	DBInfo     string                      `json:"DBInfo" xml:"DBInfo"`
+	Images     ImagesInListContainerImages `json:"Images" xml:"Images"`
+}
+
+// CreateListContainerImagesRequest creates a request to invoke ListContainerImages API
+func CreateListContainerImagesRequest() (request *ListContainerImagesRequest) {
+	request = &ListContainerImagesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ListContainerImages", "ehs", "openAPI")
+	return
+}
+
+// CreateListContainerImagesResponse creates a response to parse from ListContainerImages response
+func CreateListContainerImagesResponse() (response *ListContainerImagesResponse) {
+	response = &ListContainerImagesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/ehpc/list_custom_images.go

@@ -76,15 +76,15 @@ func (client *Client) ListCustomImagesWithCallback(request *ListCustomImagesRequ
 // ListCustomImagesRequest is the request struct for api ListCustomImages
 type ListCustomImagesRequest struct {
 	*requests.RpcRequest
-	ImageOwnerAlias string `position:"Query" name:"ImageOwnerAlias"`
 	BaseOsTag       string `position:"Query" name:"BaseOsTag"`
+	ImageOwnerAlias string `position:"Query" name:"ImageOwnerAlias"`
 }
 
 // ListCustomImagesResponse is the response struct for api ListCustomImages
 type ListCustomImagesResponse struct {
 	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-	Images    Images `json:"Images" xml:"Images"`
+	RequestId string                   `json:"RequestId" xml:"RequestId"`
+	Images    ImagesInListCustomImages `json:"Images" xml:"Images"`
 }
 
 // CreateListCustomImagesRequest creates a request to invoke ListCustomImages API

+ 117 - 0
services/ehpc/list_invocation_results.go

@@ -0,0 +1,117 @@
+package ehpc
+
+//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"
+)
+
+// ListInvocationResults invokes the ehpc.ListInvocationResults API synchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationresults.html
+func (client *Client) ListInvocationResults(request *ListInvocationResultsRequest) (response *ListInvocationResultsResponse, err error) {
+	response = CreateListInvocationResultsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListInvocationResultsWithChan invokes the ehpc.ListInvocationResults API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationresults.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInvocationResultsWithChan(request *ListInvocationResultsRequest) (<-chan *ListInvocationResultsResponse, <-chan error) {
+	responseChan := make(chan *ListInvocationResultsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListInvocationResults(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListInvocationResultsWithCallback invokes the ehpc.ListInvocationResults API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationresults.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInvocationResultsWithCallback(request *ListInvocationResultsRequest, callback func(response *ListInvocationResultsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListInvocationResultsResponse
+		var err error
+		defer close(result)
+		response, err = client.ListInvocationResults(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListInvocationResultsRequest is the request struct for api ListInvocationResults
+type ListInvocationResultsRequest struct {
+	*requests.RpcRequest
+	Instance           *[]ListInvocationResultsInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	InvokeRecordStatus string                           `position:"Query" name:"InvokeRecordStatus"`
+	PageSize           requests.Integer                 `position:"Query" name:"PageSize"`
+	ClusterId          string                           `position:"Query" name:"ClusterId"`
+	CommandId          string                           `position:"Query" name:"CommandId"`
+	PageNumber         requests.Integer                 `position:"Query" name:"PageNumber"`
+}
+
+// ListInvocationResultsInstance is a repeated param struct in ListInvocationResultsRequest
+type ListInvocationResultsInstance struct {
+	Id string `name:"Id"`
+}
+
+// ListInvocationResultsResponse is the response struct for api ListInvocationResults
+type ListInvocationResultsResponse struct {
+	*responses.BaseResponse
+	RequestId         string            `json:"RequestId" xml:"RequestId"`
+	TotalCount        int               `json:"TotalCount" xml:"TotalCount"`
+	PageNumber        int               `json:"PageNumber" xml:"PageNumber"`
+	PageSize          int               `json:"PageSize" xml:"PageSize"`
+	InvocationResults InvocationResults `json:"InvocationResults" xml:"InvocationResults"`
+}
+
+// CreateListInvocationResultsRequest creates a request to invoke ListInvocationResults API
+func CreateListInvocationResultsRequest() (request *ListInvocationResultsRequest) {
+	request = &ListInvocationResultsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ListInvocationResults", "ehs", "openAPI")
+	return
+}
+
+// CreateListInvocationResultsResponse creates a response to parse from ListInvocationResults response
+func CreateListInvocationResultsResponse() (response *ListInvocationResultsResponse) {
+	response = &ListInvocationResultsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/ehpc/list_invocation_status.go

@@ -0,0 +1,107 @@
+package ehpc
+
+//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"
+)
+
+// ListInvocationStatus invokes the ehpc.ListInvocationStatus API synchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationstatus.html
+func (client *Client) ListInvocationStatus(request *ListInvocationStatusRequest) (response *ListInvocationStatusResponse, err error) {
+	response = CreateListInvocationStatusResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListInvocationStatusWithChan invokes the ehpc.ListInvocationStatus API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationstatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInvocationStatusWithChan(request *ListInvocationStatusRequest) (<-chan *ListInvocationStatusResponse, <-chan error) {
+	responseChan := make(chan *ListInvocationStatusResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListInvocationStatus(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListInvocationStatusWithCallback invokes the ehpc.ListInvocationStatus API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/listinvocationstatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInvocationStatusWithCallback(request *ListInvocationStatusRequest, callback func(response *ListInvocationStatusResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListInvocationStatusResponse
+		var err error
+		defer close(result)
+		response, err = client.ListInvocationStatus(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListInvocationStatusRequest is the request struct for api ListInvocationStatus
+type ListInvocationStatusRequest struct {
+	*requests.RpcRequest
+	ClusterId string `position:"Query" name:"ClusterId"`
+	CommandId string `position:"Query" name:"CommandId"`
+}
+
+// ListInvocationStatusResponse is the response struct for api ListInvocationStatus
+type ListInvocationStatusResponse struct {
+	*responses.BaseResponse
+	RequestId       string          `json:"RequestId" xml:"RequestId"`
+	CommandId       string          `json:"CommandId" xml:"CommandId"`
+	InvokeStatus    string          `json:"InvokeStatus" xml:"InvokeStatus"`
+	InvokeInstances InvokeInstances `json:"InvokeInstances" xml:"InvokeInstances"`
+}
+
+// CreateListInvocationStatusRequest creates a request to invoke ListInvocationStatus API
+func CreateListInvocationStatusRequest() (request *ListInvocationStatusRequest) {
+	request = &ListInvocationStatusRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ListInvocationStatus", "ehs", "openAPI")
+	return
+}
+
+// CreateListInvocationStatusResponse creates a response to parse from ListInvocationStatus response
+func CreateListInvocationStatusResponse() (response *ListInvocationStatusResponse) {
+	response = &ListInvocationStatusResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/ehpc/list_job_templates.go

@@ -77,8 +77,8 @@ func (client *Client) ListJobTemplatesWithCallback(request *ListJobTemplatesRequ
 type ListJobTemplatesRequest struct {
 	*requests.RpcRequest
 	Name       string           `position:"Query" name:"Name"`
-	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // ListJobTemplatesResponse is the response struct for api ListJobTemplates

+ 2 - 2
services/ehpc/list_jobs.go

@@ -76,12 +76,12 @@ func (client *Client) ListJobsWithCallback(request *ListJobsRequest, callback fu
 // ListJobsRequest is the request struct for api ListJobs
 type ListJobsRequest struct {
 	*requests.RpcRequest
-	ClusterId  string           `position:"Query" name:"ClusterId"`
 	Owner      string           `position:"Query" name:"Owner"`
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	ClusterId  string           `position:"Query" name:"ClusterId"`
 	State      string           `position:"Query" name:"State"`
 	Rerunable  string           `position:"Query" name:"Rerunable"`
 	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize   requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // ListJobsResponse is the response struct for api ListJobs

+ 3 - 3
services/ehpc/list_nodes.go

@@ -76,11 +76,11 @@ func (client *Client) ListNodesWithCallback(request *ListNodesRequest, callback
 // ListNodesRequest is the request struct for api ListNodes
 type ListNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId  string           `position:"Query" name:"ClusterId"`
-	Role       string           `position:"Query" name:"Role"`
 	HostName   string           `position:"Query" name:"HostName"`
-	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+	Role       string           `position:"Query" name:"Role"`
 	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	ClusterId  string           `position:"Query" name:"ClusterId"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // ListNodesResponse is the response struct for api ListNodes

+ 2 - 2
services/ehpc/list_nodes_no_paging.go

@@ -76,9 +76,9 @@ func (client *Client) ListNodesNoPagingWithCallback(request *ListNodesNoPagingRe
 // ListNodesNoPagingRequest is the request struct for api ListNodesNoPaging
 type ListNodesNoPagingRequest struct {
 	*requests.RpcRequest
-	ClusterId    string           `position:"Query" name:"ClusterId"`
-	Role         string           `position:"Query" name:"Role"`
 	HostName     string           `position:"Query" name:"HostName"`
+	Role         string           `position:"Query" name:"Role"`
+	ClusterId    string           `position:"Query" name:"ClusterId"`
 	OnlyDetached requests.Boolean `position:"Query" name:"OnlyDetached"`
 }
 

+ 1 - 1
services/ehpc/list_preferred_ecs_types.go

@@ -76,8 +76,8 @@ func (client *Client) ListPreferredEcsTypesWithCallback(request *ListPreferredEc
 // ListPreferredEcsTypesRequest is the request struct for api ListPreferredEcsTypes
 type ListPreferredEcsTypesRequest struct {
 	*requests.RpcRequest
-	ZoneId             string `position:"Query" name:"ZoneId"`
 	SpotStrategy       string `position:"Query" name:"SpotStrategy"`
+	ZoneId             string `position:"Query" name:"ZoneId"`
 	InstanceChargeType string `position:"Query" name:"InstanceChargeType"`
 }
 

+ 1 - 1
services/ehpc/list_users.go

@@ -76,9 +76,9 @@ func (client *Client) ListUsersWithCallback(request *ListUsersRequest, callback
 // ListUsersRequest is the request struct for api ListUsers
 type ListUsersRequest struct {
 	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
 	ClusterId  string           `position:"Query" name:"ClusterId"`
 	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize   requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // ListUsersResponse is the response struct for api ListUsers

+ 1 - 1
services/ehpc/list_volumes.go

@@ -76,8 +76,8 @@ func (client *Client) ListVolumesWithCallback(request *ListVolumesRequest, callb
 // ListVolumesRequest is the request struct for api ListVolumes
 type ListVolumesRequest struct {
 	*requests.RpcRequest
-	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // ListVolumesResponse is the response struct for api ListVolumes

+ 1 - 1
services/ehpc/modify_cluster_attributes.go

@@ -76,9 +76,9 @@ func (client *Client) ModifyClusterAttributesWithCallback(request *ModifyCluster
 // ModifyClusterAttributesRequest is the request struct for api ModifyClusterAttributes
 type ModifyClusterAttributesRequest struct {
 	*requests.RpcRequest
-	ClusterId   string `position:"Query" name:"ClusterId"`
 	Name        string `position:"Query" name:"Name"`
 	Description string `position:"Query" name:"Description"`
+	ClusterId   string `position:"Query" name:"ClusterId"`
 }
 
 // ModifyClusterAttributesResponse is the response struct for api ModifyClusterAttributes

+ 104 - 0
services/ehpc/modify_container_app_attributes.go

@@ -0,0 +1,104 @@
+package ehpc
+
+//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"
+)
+
+// ModifyContainerAppAttributes invokes the ehpc.ModifyContainerAppAttributes API synchronously
+// api document: https://help.aliyun.com/api/ehpc/modifycontainerappattributes.html
+func (client *Client) ModifyContainerAppAttributes(request *ModifyContainerAppAttributesRequest) (response *ModifyContainerAppAttributesResponse, err error) {
+	response = CreateModifyContainerAppAttributesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyContainerAppAttributesWithChan invokes the ehpc.ModifyContainerAppAttributes API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/modifycontainerappattributes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyContainerAppAttributesWithChan(request *ModifyContainerAppAttributesRequest) (<-chan *ModifyContainerAppAttributesResponse, <-chan error) {
+	responseChan := make(chan *ModifyContainerAppAttributesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyContainerAppAttributes(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyContainerAppAttributesWithCallback invokes the ehpc.ModifyContainerAppAttributes API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/modifycontainerappattributes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyContainerAppAttributesWithCallback(request *ModifyContainerAppAttributesRequest, callback func(response *ModifyContainerAppAttributesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyContainerAppAttributesResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyContainerAppAttributes(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyContainerAppAttributesRequest is the request struct for api ModifyContainerAppAttributes
+type ModifyContainerAppAttributesRequest struct {
+	*requests.RpcRequest
+	Description string `position:"Query" name:"Description"`
+	ContainerId string `position:"Query" name:"ContainerId"`
+}
+
+// ModifyContainerAppAttributesResponse is the response struct for api ModifyContainerAppAttributes
+type ModifyContainerAppAttributesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyContainerAppAttributesRequest creates a request to invoke ModifyContainerAppAttributes API
+func CreateModifyContainerAppAttributesRequest() (request *ModifyContainerAppAttributesRequest) {
+	request = &ModifyContainerAppAttributesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "ModifyContainerAppAttributes", "ehs", "openAPI")
+	return
+}
+
+// CreateModifyContainerAppAttributesResponse creates a response to parse from ModifyContainerAppAttributes response
+func CreateModifyContainerAppAttributesResponse() (response *ModifyContainerAppAttributesResponse) {
+	response = &ModifyContainerAppAttributesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ehpc/pull_image.go

@@ -0,0 +1,106 @@
+package ehpc
+
+//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"
+)
+
+// PullImage invokes the ehpc.PullImage API synchronously
+// api document: https://help.aliyun.com/api/ehpc/pullimage.html
+func (client *Client) PullImage(request *PullImageRequest) (response *PullImageResponse, err error) {
+	response = CreatePullImageResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// PullImageWithChan invokes the ehpc.PullImage API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/pullimage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PullImageWithChan(request *PullImageRequest) (<-chan *PullImageResponse, <-chan error) {
+	responseChan := make(chan *PullImageResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.PullImage(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// PullImageWithCallback invokes the ehpc.PullImage API asynchronously
+// api document: https://help.aliyun.com/api/ehpc/pullimage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PullImageWithCallback(request *PullImageRequest, callback func(response *PullImageResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *PullImageResponse
+		var err error
+		defer close(result)
+		response, err = client.PullImage(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// PullImageRequest is the request struct for api PullImage
+type PullImageRequest struct {
+	*requests.RpcRequest
+	ContainerType string `position:"Query" name:"ContainerType"`
+	ClusterId     string `position:"Query" name:"ClusterId"`
+	Repository    string `position:"Query" name:"Repository"`
+	ImageTag      string `position:"Query" name:"ImageTag"`
+}
+
+// PullImageResponse is the response struct for api PullImage
+type PullImageResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreatePullImageRequest creates a request to invoke PullImage API
+func CreatePullImageRequest() (request *PullImageRequest) {
+	request = &PullImageRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("EHPC", "2018-04-12", "PullImage", "ehs", "openAPI")
+	return
+}
+
+// CreatePullImageResponse creates a response to parse from PullImage response
+func CreatePullImageResponse() (response *PullImageResponse) {
+	response = &PullImageResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/ehpc/rerun_jobs.go

@@ -76,8 +76,8 @@ func (client *Client) RerunJobsWithCallback(request *RerunJobsRequest, callback
 // RerunJobsRequest is the request struct for api RerunJobs
 type RerunJobsRequest struct {
 	*requests.RpcRequest
-	ClusterId string `position:"Query" name:"ClusterId"`
 	Jobs      string `position:"Query" name:"Jobs"`
+	ClusterId string `position:"Query" name:"ClusterId"`
 }
 
 // RerunJobsResponse is the response struct for api RerunJobs

+ 1 - 1
services/ehpc/reset_nodes.go

@@ -76,8 +76,8 @@ func (client *Client) ResetNodesWithCallback(request *ResetNodesRequest, callbac
 // ResetNodesRequest is the request struct for api ResetNodes
 type ResetNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId string                `position:"Query" name:"ClusterId"`
 	Instance  *[]ResetNodesInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	ClusterId string                `position:"Query" name:"ClusterId"`
 }
 
 // ResetNodesInstance is a repeated param struct in ResetNodesRequest

+ 5 - 5
services/ehpc/set_auto_scale_config.go

@@ -76,17 +76,17 @@ func (client *Client) SetAutoScaleConfigWithCallback(request *SetAutoScaleConfig
 // SetAutoScaleConfigRequest is the request struct for api SetAutoScaleConfig
 type SetAutoScaleConfigRequest struct {
 	*requests.RpcRequest
+	ShrinkIdleTimes         requests.Integer `position:"Query" name:"ShrinkIdleTimes"`
+	GrowTimeoutInMinutes    requests.Integer `position:"Query" name:"GrowTimeoutInMinutes"`
 	ClusterId               string           `position:"Query" name:"ClusterId"`
 	EnableAutoGrow          requests.Boolean `position:"Query" name:"EnableAutoGrow"`
 	EnableAutoShrink        requests.Boolean `position:"Query" name:"EnableAutoShrink"`
-	GrowIntervalInMinutes   requests.Integer `position:"Query" name:"GrowIntervalInMinutes"`
+	MaxNodesInCluster       requests.Integer `position:"Query" name:"MaxNodesInCluster"`
+	ExcludeNodes            string           `position:"Query" name:"ExcludeNodes"`
 	ShrinkIntervalInMinutes requests.Integer `position:"Query" name:"ShrinkIntervalInMinutes"`
-	ShrinkIdleTimes         requests.Integer `position:"Query" name:"ShrinkIdleTimes"`
-	GrowTimeoutInMinutes    requests.Integer `position:"Query" name:"GrowTimeoutInMinutes"`
 	ExtraNodesGrowRatio     requests.Integer `position:"Query" name:"ExtraNodesGrowRatio"`
+	GrowIntervalInMinutes   requests.Integer `position:"Query" name:"GrowIntervalInMinutes"`
 	GrowRatio               requests.Integer `position:"Query" name:"GrowRatio"`
-	MaxNodesInCluster       requests.Integer `position:"Query" name:"MaxNodesInCluster"`
-	ExcludeNodes            string           `position:"Query" name:"ExcludeNodes"`
 }
 
 // SetAutoScaleConfigResponse is the response struct for api SetAutoScaleConfig

+ 2 - 2
services/ehpc/set_job_user.go

@@ -76,9 +76,9 @@ func (client *Client) SetJobUserWithCallback(request *SetJobUserRequest, callbac
 // SetJobUserRequest is the request struct for api SetJobUser
 type SetJobUserRequest struct {
 	*requests.RpcRequest
-	ClusterId         string `position:"Query" name:"ClusterId"`
-	RunasUser         string `position:"Query" name:"RunasUser"`
 	RunasUserPassword string `position:"Query" name:"RunasUserPassword"`
+	RunasUser         string `position:"Query" name:"RunasUser"`
+	ClusterId         string `position:"Query" name:"ClusterId"`
 }
 
 // SetJobUserResponse is the response struct for api SetJobUser

+ 1 - 1
services/ehpc/start_nodes.go

@@ -76,9 +76,9 @@ func (client *Client) StartNodesWithCallback(request *StartNodesRequest, callbac
 // StartNodesRequest is the request struct for api StartNodes
 type StartNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId string                `position:"Query" name:"ClusterId"`
 	Role      string                `position:"Query" name:"Role"`
 	Instance  *[]StartNodesInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	ClusterId string                `position:"Query" name:"ClusterId"`
 }
 
 // StartNodesInstance is a repeated param struct in StartNodesRequest

+ 1 - 1
services/ehpc/stop_jobs.go

@@ -76,8 +76,8 @@ func (client *Client) StopJobsWithCallback(request *StopJobsRequest, callback fu
 // StopJobsRequest is the request struct for api StopJobs
 type StopJobsRequest struct {
 	*requests.RpcRequest
-	ClusterId string `position:"Query" name:"ClusterId"`
 	Jobs      string `position:"Query" name:"Jobs"`
+	ClusterId string `position:"Query" name:"ClusterId"`
 }
 
 // StopJobsResponse is the response struct for api StopJobs

+ 1 - 1
services/ehpc/stop_nodes.go

@@ -76,9 +76,9 @@ func (client *Client) StopNodesWithCallback(request *StopNodesRequest, callback
 // StopNodesRequest is the request struct for api StopNodes
 type StopNodesRequest struct {
 	*requests.RpcRequest
-	ClusterId string               `position:"Query" name:"ClusterId"`
 	Role      string               `position:"Query" name:"Role"`
 	Instance  *[]StopNodesInstance `position:"Query" name:"Instance"  type:"Repeated"`
+	ClusterId string               `position:"Query" name:"ClusterId"`
 }
 
 // StopNodesInstance is a repeated param struct in StopNodesRequest

+ 2 - 0
services/ehpc/struct_cluster_info.go

@@ -27,6 +27,7 @@ type ClusterInfo struct {
 	SchedulerType    string                        `json:"SchedulerType" xml:"SchedulerType"`
 	CreateTime       string                        `json:"CreateTime" xml:"CreateTime"`
 	SecurityGroupId  string                        `json:"SecurityGroupId" xml:"SecurityGroupId"`
+	VpcId            string                        `json:"VpcId" xml:"VpcId"`
 	VSwitchId        string                        `json:"VSwitchId" xml:"VSwitchId"`
 	VolumeType       string                        `json:"VolumeType" xml:"VolumeType"`
 	VolumeId         string                        `json:"VolumeId" xml:"VolumeId"`
@@ -41,6 +42,7 @@ type ClusterInfo struct {
 	ClientVersion    string                        `json:"ClientVersion" xml:"ClientVersion"`
 	ImageOwnerAlias  string                        `json:"ImageOwnerAlias" xml:"ImageOwnerAlias"`
 	ImageId          string                        `json:"ImageId" xml:"ImageId"`
+	Location         string                        `json:"Location" xml:"Location"`
 	EcsInfo          EcsInfo                       `json:"EcsInfo" xml:"EcsInfo"`
 	Applications     ApplicationsInDescribeCluster `json:"Applications" xml:"Applications"`
 }

+ 1 - 0
services/ehpc/struct_cluster_info_simple.go

@@ -33,6 +33,7 @@ type ClusterInfoSimple struct {
 	CreateTime      string         `json:"CreateTime" xml:"CreateTime"`
 	ImageOwnerAlias string         `json:"ImageOwnerAlias" xml:"ImageOwnerAlias"`
 	ImageId         string         `json:"ImageId" xml:"ImageId"`
+	Location        string         `json:"Location" xml:"Location"`
 	Managers        Managers       `json:"Managers" xml:"Managers"`
 	Computes        Computes       `json:"Computes" xml:"Computes"`
 	TotalResources  TotalResources `json:"TotalResources" xml:"TotalResources"`

+ 24 - 0
services/ehpc/struct_command.go

@@ -0,0 +1,24 @@
+package ehpc
+
+//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.
+
+// Command is a nested struct in ehpc response
+type Command struct {
+	CommandId      string `json:"CommandId" xml:"CommandId"`
+	CommandContent string `json:"CommandContent" xml:"CommandContent"`
+	WorkingDir     string `json:"WorkingDir" xml:"WorkingDir"`
+	Timeout        string `json:"Timeout" xml:"Timeout"`
+}

+ 21 - 0
services/ehpc/struct_commands.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// Commands is a nested struct in ehpc response
+type Commands struct {
+	Command []Command `json:"Command" xml:"Command"`
+}

+ 27 - 0
services/ehpc/struct_container_app_info.go

@@ -0,0 +1,27 @@
+package ehpc
+
+//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.
+
+// ContainerAppInfo is a nested struct in ehpc response
+type ContainerAppInfo struct {
+	Id          string `json:"Id" xml:"Id"`
+	Name        string `json:"Name" xml:"Name"`
+	Description string `json:"Description" xml:"Description"`
+	Repository  string `json:"Repository" xml:"Repository"`
+	ImageTag    string `json:"ImageTag" xml:"ImageTag"`
+	CreateTime  string `json:"CreateTime" xml:"CreateTime"`
+	Type        string `json:"Type" xml:"Type"`
+}

+ 21 - 0
services/ehpc/struct_container_apps.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// ContainerApps is a nested struct in ehpc response
+type ContainerApps struct {
+	ContainerAppsItem []ContainerAppsItem `json:"ContainerAppsItem" xml:"ContainerAppsItem"`
+}

+ 27 - 0
services/ehpc/struct_container_apps_item.go

@@ -0,0 +1,27 @@
+package ehpc
+
+//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.
+
+// ContainerAppsItem is a nested struct in ehpc response
+type ContainerAppsItem struct {
+	Id          string `json:"Id" xml:"Id"`
+	Name        string `json:"Name" xml:"Name"`
+	Description string `json:"Description" xml:"Description"`
+	Repository  string `json:"Repository" xml:"Repository"`
+	ImageTag    string `json:"ImageTag" xml:"ImageTag"`
+	CreateTime  string `json:"CreateTime" xml:"CreateTime"`
+	Type        string `json:"Type" xml:"Type"`
+}

+ 21 - 0
services/ehpc/struct_container_id.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// ContainerId is a nested struct in ehpc response
+type ContainerId struct {
+	ContainerId []string `json:"ContainerId" xml:"ContainerId"`
+}

+ 21 - 0
services/ehpc/struct_images_in_list_container_images.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// ImagesInListContainerImages is a nested struct in ehpc response
+type ImagesInListContainerImages struct {
+	ImagesItem []ImagesItem `json:"ImagesItem" xml:"ImagesItem"`
+}

+ 2 - 2
services/ehpc/struct_images.go → services/ehpc/struct_images_in_list_custom_images.go

@@ -15,7 +15,7 @@ package ehpc
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// Images is a nested struct in ehpc response
-type Images struct {
+// ImagesInListCustomImages is a nested struct in ehpc response
+type ImagesInListCustomImages struct {
 	ImageInfo []ImageInfo `json:"ImageInfo" xml:"ImageInfo"`
 }

+ 27 - 0
services/ehpc/struct_images_item.go

@@ -0,0 +1,27 @@
+package ehpc
+
+//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.
+
+// ImagesItem is a nested struct in ehpc response
+type ImagesItem struct {
+	System         string `json:"System" xml:"System"`
+	Type           string `json:"Type" xml:"Type"`
+	Status         string `json:"Status" xml:"Status"`
+	ImageId        string `json:"ImageId" xml:"ImageId"`
+	UpdateDateTime string `json:"UpdateDateTime" xml:"UpdateDateTime"`
+	Repository     string `json:"Repository" xml:"Repository"`
+	Tag            string `json:"Tag" xml:"Tag"`
+}

+ 2 - 2
services/ehpc/struct_instance_ids.go → services/ehpc/struct_instance_ids_in_add_nodes.go

@@ -15,7 +15,7 @@ package ehpc
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// InstanceIds is a nested struct in ehpc response
-type InstanceIds struct {
+// InstanceIdsInAddNodes is a nested struct in ehpc response
+type InstanceIdsInAddNodes struct {
 	InstanceId []string `json:"InstanceId" xml:"InstanceId"`
 }

+ 21 - 0
services/ehpc/struct_instance_ids_in_invoke_shell_command.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// InstanceIdsInInvokeShellCommand is a nested struct in ehpc response
+type InstanceIdsInInvokeShellCommand struct {
+	InstanceId []string `json:"InstanceId" xml:"InstanceId"`
+}

+ 27 - 0
services/ehpc/struct_invocation_result.go

@@ -0,0 +1,27 @@
+package ehpc
+
+//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.
+
+// InvocationResult is a nested struct in ehpc response
+type InvocationResult struct {
+	Success            bool   `json:"Success" xml:"Success"`
+	CommandId          string `json:"CommandId" xml:"CommandId"`
+	InstanceId         string `json:"InstanceId" xml:"InstanceId"`
+	InvokeRecordStatus string `json:"InvokeRecordStatus" xml:"InvokeRecordStatus"`
+	FinishedTime       string `json:"FinishedTime" xml:"FinishedTime"`
+	ExitCode           int    `json:"ExitCode" xml:"ExitCode"`
+	Message            string `json:"Message" xml:"Message"`
+}

+ 21 - 0
services/ehpc/struct_invocation_results.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// InvocationResults is a nested struct in ehpc response
+type InvocationResults struct {
+	InvocationResult []InvocationResult `json:"InvocationResult" xml:"InvocationResult"`
+}

+ 22 - 0
services/ehpc/struct_invoke_instance.go

@@ -0,0 +1,22 @@
+package ehpc
+
+//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.
+
+// InvokeInstance is a nested struct in ehpc response
+type InvokeInstance struct {
+	InstanceId           string `json:"InstanceId" xml:"InstanceId"`
+	InstanceInvokeStatus string `json:"InstanceInvokeStatus" xml:"InstanceInvokeStatus"`
+}

+ 21 - 0
services/ehpc/struct_invoke_instances.go

@@ -0,0 +1,21 @@
+package ehpc
+
+//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.
+
+// InvokeInstances is a nested struct in ehpc response
+type InvokeInstances struct {
+	InvokeInstance []InvokeInstance `json:"InvokeInstance" xml:"InvokeInstance"`
+}

+ 1 - 0
services/ehpc/struct_node_info.go

@@ -22,6 +22,7 @@ type NodeInfo struct {
 	ExpiredTime     string                   `json:"ExpiredTime" xml:"ExpiredTime"`
 	ImageId         string                   `json:"ImageId" xml:"ImageId"`
 	ImageOwnerAlias string                   `json:"ImageOwnerAlias" xml:"ImageOwnerAlias"`
+	Location        string                   `json:"Location" xml:"Location"`
 	RegionId        string                   `json:"RegionId" xml:"RegionId"`
 	CreatedByEhpc   bool                     `json:"CreatedByEhpc" xml:"CreatedByEhpc"`
 	Id              string                   `json:"Id" xml:"Id"`

+ 12 - 8
services/ehpc/submit_job.go

@@ -76,18 +76,22 @@ func (client *Client) SubmitJobWithCallback(request *SubmitJobRequest, callback
 // SubmitJobRequest is the request struct for api SubmitJob
 type SubmitJobRequest struct {
 	*requests.RpcRequest
-	ClusterId          string           `position:"Query" name:"ClusterId"`
-	CommandLine        string           `position:"Query" name:"CommandLine"`
-	Name               string           `position:"Query" name:"Name"`
-	RunasUser          string           `position:"Query" name:"RunasUser"`
+	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
+	Variables          string           `position:"Query" name:"Variables"`
 	RunasUserPassword  string           `position:"Query" name:"RunasUserPassword"`
+	PostCmdLine        string           `position:"Query" name:"PostCmdLine"`
+	RunasUser          string           `position:"Query" name:"RunasUser"`
+	ClusterId          string           `position:"Query" name:"ClusterId"`
+	ReRunable          requests.Boolean `position:"Query" name:"ReRunable"`
 	Priority           requests.Integer `position:"Query" name:"Priority"`
+	CommandLine        string           `position:"Query" name:"CommandLine"`
+	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
+	UnzipCmd           string           `position:"Query" name:"UnzipCmd"`
 	PackagePath        string           `position:"Query" name:"PackagePath"`
+	InputFileUrl       string           `position:"Query" name:"InputFileUrl"`
+	Name               string           `position:"Query" name:"Name"`
 	StdoutRedirectPath string           `position:"Query" name:"StdoutRedirectPath"`
-	StderrRedirectPath string           `position:"Query" name:"StderrRedirectPath"`
-	ReRunable          requests.Boolean `position:"Query" name:"ReRunable"`
-	ArrayRequest       string           `position:"Query" name:"ArrayRequest"`
-	Variables          string           `position:"Query" name:"Variables"`
+	ContainerId        string           `position:"Query" name:"ContainerId"`
 }
 
 // SubmitJobResponse is the response struct for api SubmitJob

+ 1 - 1
services/ehpc/upgrade_client.go

@@ -76,8 +76,8 @@ func (client *Client) UpgradeClientWithCallback(request *UpgradeClientRequest, c
 // UpgradeClientRequest is the request struct for api UpgradeClient
 type UpgradeClientRequest struct {
 	*requests.RpcRequest
-	ClusterId     string `position:"Query" name:"ClusterId"`
 	ClientVersion string `position:"Query" name:"ClientVersion"`
+	ClusterId     string `position:"Query" name:"ClusterId"`
 }
 
 // UpgradeClientResponse is the response struct for api UpgradeClient