瀏覽代碼

Support GroupDeletionProtection.

sdk-team 6 年之前
父節點
當前提交
b5f05dc43a
共有 56 個文件被更改,包括 748 次插入931 次删除
  1. 3 0
      ChangeLog.txt
  2. 1 1
      services/ess/attach_db_instances.go
  3. 10 10
      services/ess/attach_instances.go
  4. 2 2
      services/ess/attach_load_balancers.go
  5. 1 1
      services/ess/attach_v_server_groups.go
  6. 25 0
      services/ess/client.go
  7. 6 6
      services/ess/create_alarm.go
  8. 4 4
      services/ess/create_lifecycle_hook.go
  9. 2 2
      services/ess/create_notification_configuration.go
  10. 50 48
      services/ess/create_scaling_configuration.go
  11. 14 11
      services/ess/create_scaling_group.go
  12. 10 10
      services/ess/create_scaling_rule.go
  13. 3 3
      services/ess/create_scheduled_task.go
  14. 1 1
      services/ess/deactivate_scaling_configuration.go
  15. 1 1
      services/ess/delete_lifecycle_hook.go
  16. 1 1
      services/ess/delete_notification_configuration.go
  17. 1 1
      services/ess/delete_scaling_configuration.go
  18. 1 1
      services/ess/delete_scaling_group.go
  19. 0 112
      services/ess/describe_account_attributes.go
  20. 3 3
      services/ess/describe_alarms.go
  21. 0 108
      services/ess/describe_alert_config.go
  22. 0 113
      services/ess/describe_capacity_history.go
  23. 3 3
      services/ess/describe_lifecycle_hooks.go
  24. 1 1
      services/ess/describe_regions.go
  25. 10 10
      services/ess/describe_scaling_instances.go
  26. 12 12
      services/ess/describe_scaling_rules.go
  27. 0 122
      services/ess/describe_user.go
  28. 2 2
      services/ess/detach_db_instances.go
  29. 7 6
      services/ess/detach_instances.go
  30. 2 2
      services/ess/detach_load_balancers.go
  31. 2 2
      services/ess/detach_v_server_groups.go
  32. 64 0
      services/ess/endpoint.go
  33. 1 1
      services/ess/enter_standby.go
  34. 2 2
      services/ess/execute_scaling_rule.go
  35. 1 1
      services/ess/exit_standby.go
  36. 6 6
      services/ess/modify_alarm.go
  37. 0 108
      services/ess/modify_alert_config.go
  38. 5 5
      services/ess/modify_lifecycle_hook.go
  39. 2 2
      services/ess/modify_notification_configuration.go
  40. 46 44
      services/ess/modify_scaling_configuration.go
  41. 11 9
      services/ess/modify_scaling_group.go
  42. 9 9
      services/ess/modify_scaling_rule.go
  43. 3 3
      services/ess/modify_scheduled_task.go
  44. 1 1
      services/ess/record_lifecycle_action_heartbeat.go
  45. 8 7
      services/ess/remove_instances.go
  46. 106 0
      services/ess/resume_processes.go
  47. 106 0
      services/ess/set_instance_health.go
  48. 2 2
      services/ess/set_instances_protection.go
  49. 0 21
      services/ess/struct_capacity_history_items.go
  50. 0 25
      services/ess/struct_capacity_history_model.go
  51. 10 9
      services/ess/struct_data_disk.go
  52. 39 38
      services/ess/struct_scaling_configuration.go
  53. 38 35
      services/ess/struct_scaling_group.go
  54. 3 3
      services/ess/struct_suspended_processes.go
  55. 106 0
      services/ess/suspend_processes.go
  56. 1 1
      services/ess/verify_authentication.go

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2019-12-11 Version: v1.60.286
+- Support GroupDeletionProtection.
+
 2019-12-05 Version: v1.60.285
 - Add api QueryMetric.
 

+ 1 - 1
services/ess/attach_db_instances.go

@@ -76,9 +76,9 @@ func (client *Client) AttachDBInstancesWithCallback(request *AttachDBInstancesRe
 // AttachDBInstancesRequest is the request struct for api AttachDBInstances
 type AttachDBInstancesRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	ForceAttach          requests.Boolean `position:"Query" name:"ForceAttach"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	DBInstance           *[]string        `position:"Query" name:"DBInstance"  type:"Repeated"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }

+ 10 - 10
services/ess/attach_instances.go

@@ -76,47 +76,47 @@ func (client *Client) AttachInstancesWithCallback(request *AttachInstancesReques
 // AttachInstancesRequest is the request struct for api AttachInstances
 type AttachInstancesRequest struct {
 	*requests.RpcRequest
-	InstanceId10         string           `position:"Query" name:"InstanceId.10"`
 	LoadBalancerWeight6  requests.Integer `position:"Query" name:"LoadBalancerWeight.6"`
 	LoadBalancerWeight11 requests.Integer `position:"Query" name:"LoadBalancerWeight.11"`
 	LoadBalancerWeight7  requests.Integer `position:"Query" name:"LoadBalancerWeight.7"`
 	LoadBalancerWeight12 requests.Integer `position:"Query" name:"LoadBalancerWeight.12"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	InstanceId12         string           `position:"Query" name:"InstanceId.12"`
 	LoadBalancerWeight8  requests.Integer `position:"Query" name:"LoadBalancerWeight.8"`
-	InstanceId11         string           `position:"Query" name:"InstanceId.11"`
 	LoadBalancerWeight9  requests.Integer `position:"Query" name:"LoadBalancerWeight.9"`
 	LoadBalancerWeight10 requests.Integer `position:"Query" name:"LoadBalancerWeight.10"`
 	LoadBalancerWeight2  requests.Integer `position:"Query" name:"LoadBalancerWeight.2"`
 	LoadBalancerWeight15 requests.Integer `position:"Query" name:"LoadBalancerWeight.15"`
 	LoadBalancerWeight3  requests.Integer `position:"Query" name:"LoadBalancerWeight.3"`
 	LoadBalancerWeight16 requests.Integer `position:"Query" name:"LoadBalancerWeight.16"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	LoadBalancerWeight4  requests.Integer `position:"Query" name:"LoadBalancerWeight.4"`
 	LoadBalancerWeight13 requests.Integer `position:"Query" name:"LoadBalancerWeight.13"`
 	LoadBalancerWeight5  requests.Integer `position:"Query" name:"LoadBalancerWeight.5"`
 	LoadBalancerWeight14 requests.Integer `position:"Query" name:"LoadBalancerWeight.14"`
 	LoadBalancerWeight1  requests.Integer `position:"Query" name:"LoadBalancerWeight.1"`
-	InstanceId20         string           `position:"Query" name:"InstanceId.20"`
 	InstanceId1          string           `position:"Query" name:"InstanceId.1"`
 	LoadBalancerWeight20 requests.Integer `position:"Query" name:"LoadBalancerWeight.20"`
 	InstanceId3          string           `position:"Query" name:"InstanceId.3"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	InstanceId2          string           `position:"Query" name:"InstanceId.2"`
 	InstanceId5          string           `position:"Query" name:"InstanceId.5"`
 	InstanceId4          string           `position:"Query" name:"InstanceId.4"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	InstanceId7          string           `position:"Query" name:"InstanceId.7"`
 	InstanceId6          string           `position:"Query" name:"InstanceId.6"`
 	InstanceId9          string           `position:"Query" name:"InstanceId.9"`
 	InstanceId8          string           `position:"Query" name:"InstanceId.8"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	InstanceId18         string           `position:"Query" name:"InstanceId.18"`
 	LoadBalancerWeight19 requests.Integer `position:"Query" name:"LoadBalancerWeight.19"`
-	InstanceId17         string           `position:"Query" name:"InstanceId.17"`
 	LoadBalancerWeight17 requests.Integer `position:"Query" name:"LoadBalancerWeight.17"`
-	InstanceId19         string           `position:"Query" name:"InstanceId.19"`
 	LoadBalancerWeight18 requests.Integer `position:"Query" name:"LoadBalancerWeight.18"`
+	InstanceId10         string           `position:"Query" name:"InstanceId.10"`
+	InstanceId12         string           `position:"Query" name:"InstanceId.12"`
+	InstanceId11         string           `position:"Query" name:"InstanceId.11"`
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	InstanceId20         string           `position:"Query" name:"InstanceId.20"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	InstanceId18         string           `position:"Query" name:"InstanceId.18"`
+	InstanceId17         string           `position:"Query" name:"InstanceId.17"`
+	InstanceId19         string           `position:"Query" name:"InstanceId.19"`
 	InstanceId14         string           `position:"Query" name:"InstanceId.14"`
 	InstanceId13         string           `position:"Query" name:"InstanceId.13"`
 	InstanceId16         string           `position:"Query" name:"InstanceId.16"`

+ 2 - 2
services/ess/attach_load_balancers.go

@@ -76,10 +76,10 @@ func (client *Client) AttachLoadBalancersWithCallback(request *AttachLoadBalance
 // AttachLoadBalancersRequest is the request struct for api AttachLoadBalancers
 type AttachLoadBalancersRequest struct {
 	*requests.RpcRequest
-	LoadBalancer         *[]string        `position:"Query" name:"LoadBalancer"  type:"Repeated"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	ForceAttach          requests.Boolean `position:"Query" name:"ForceAttach"`
+	LoadBalancer         *[]string        `position:"Query" name:"LoadBalancer"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 

+ 1 - 1
services/ess/attach_v_server_groups.go

@@ -76,9 +76,9 @@ func (client *Client) AttachVServerGroupsWithCallback(request *AttachVServerGrou
 // AttachVServerGroupsRequest is the request struct for api AttachVServerGroups
 type AttachVServerGroupsRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string                             `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string                             `position:"Query" name:"ScalingGroupId"`
 	ForceAttach          requests.Boolean                   `position:"Query" name:"ForceAttach"`
+	ResourceOwnerAccount string                             `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer                   `position:"Query" name:"OwnerId"`
 	VServerGroup         *[]AttachVServerGroupsVServerGroup `position:"Query" name:"VServerGroup"  type:"Repeated"`
 }

+ 25 - 0
services/ess/client.go

@@ -16,6 +16,8 @@ package ess
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
 import (
+	"reflect"
+
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
@@ -26,10 +28,25 @@ type Client struct {
 	sdk.Client
 }
 
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
 // NewClient creates a sdk client with environment variables
 func NewClient() (client *Client, err error) {
 	client = &Client{}
 	err = client.Init()
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -44,6 +61,7 @@ func NewClientWithProvider(regionId string, providers ...provider.Provider) (cli
 		pc = provider.NewProviderChain(providers)
 	}
 	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -52,6 +70,7 @@ func NewClientWithProvider(regionId string, providers ...provider.Provider) (cli
 func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -60,6 +79,7 @@ func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.C
 func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -68,6 +88,7 @@ func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (clie
 func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -76,6 +97,7 @@ func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToke
 func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -84,6 +106,7 @@ func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, role
 func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -92,6 +115,7 @@ func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySec
 func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -100,5 +124,6 @@ func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client,
 func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
 	return
 }

+ 6 - 6
services/ess/create_alarm.go

@@ -77,19 +77,19 @@ func (client *Client) CreateAlarmWithCallback(request *CreateAlarmRequest, callb
 type CreateAlarmRequest struct {
 	*requests.RpcRequest
 	MetricType           string                  `position:"Query" name:"MetricType"`
-	Period               requests.Integer        `position:"Query" name:"Period"`
-	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string                  `position:"Query" name:"ScalingGroupId"`
-	GroupId              requests.Integer        `position:"Query" name:"GroupId"`
 	Description          string                  `position:"Query" name:"Description"`
 	AlarmAction          *[]string               `position:"Query" name:"AlarmAction"  type:"Repeated"`
 	Threshold            requests.Float          `position:"Query" name:"Threshold"`
-	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
-	Name                 string                  `position:"Query" name:"Name"`
 	EvaluationCount      requests.Integer        `position:"Query" name:"EvaluationCount"`
 	MetricName           string                  `position:"Query" name:"MetricName"`
-	ComparisonOperator   string                  `position:"Query" name:"ComparisonOperator"`
 	Dimension            *[]CreateAlarmDimension `position:"Query" name:"Dimension"  type:"Repeated"`
+	Period               requests.Integer        `position:"Query" name:"Period"`
+	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
+	GroupId              requests.Integer        `position:"Query" name:"GroupId"`
+	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
+	Name                 string                  `position:"Query" name:"Name"`
+	ComparisonOperator   string                  `position:"Query" name:"ComparisonOperator"`
 	Statistics           string                  `position:"Query" name:"Statistics"`
 }
 

+ 4 - 4
services/ess/create_lifecycle_hook.go

@@ -77,15 +77,15 @@ func (client *Client) CreateLifecycleHookWithCallback(request *CreateLifecycleHo
 type CreateLifecycleHookRequest struct {
 	*requests.RpcRequest
 	DefaultResult        string                              `position:"Query" name:"DefaultResult"`
-	ResourceOwnerAccount string                              `position:"Query" name:"ResourceOwnerAccount"`
 	HeartbeatTimeout     requests.Integer                    `position:"Query" name:"HeartbeatTimeout"`
 	ScalingGroupId       string                              `position:"Query" name:"ScalingGroupId"`
-	OwnerAccount         string                              `position:"Query" name:"OwnerAccount"`
-	NotificationMetadata string                              `position:"Query" name:"NotificationMetadata"`
-	OwnerId              requests.Integer                    `position:"Query" name:"OwnerId"`
 	LifecycleTransition  string                              `position:"Query" name:"LifecycleTransition"`
 	LifecycleHookName    string                              `position:"Query" name:"LifecycleHookName"`
 	NotificationArn      string                              `position:"Query" name:"NotificationArn"`
+	ResourceOwnerAccount string                              `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string                              `position:"Query" name:"OwnerAccount"`
+	NotificationMetadata string                              `position:"Query" name:"NotificationMetadata"`
+	OwnerId              requests.Integer                    `position:"Query" name:"OwnerId"`
 	LifecycleHook        *[]CreateLifecycleHookLifecycleHook `position:"Query" name:"LifecycleHook"  type:"Repeated"`
 }
 

+ 2 - 2
services/ess/create_notification_configuration.go

@@ -76,11 +76,11 @@ func (client *Client) CreateNotificationConfigurationWithCallback(request *Creat
 // CreateNotificationConfigurationRequest is the request struct for api CreateNotificationConfiguration
 type CreateNotificationConfigurationRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	NotificationArn      string           `position:"Query" name:"NotificationArn"`
-	NotificationType     *[]string        `position:"Query" name:"NotificationType"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	NotificationType     *[]string        `position:"Query" name:"NotificationType"  type:"Repeated"`
 }
 
 // CreateNotificationConfigurationResponse is the response struct for api CreateNotificationConfiguration

+ 50 - 48
services/ess/create_scaling_configuration.go

@@ -76,45 +76,46 @@ func (client *Client) CreateScalingConfigurationWithCallback(request *CreateScal
 // CreateScalingConfigurationRequest is the request struct for api CreateScalingConfiguration
 type CreateScalingConfigurationRequest struct {
 	*requests.RpcRequest
-	ImageId                     string                                      `position:"Query" name:"ImageId"`
-	Memory                      requests.Integer                            `position:"Query" name:"Memory"`
-	HpcClusterId                string                                      `position:"Query" name:"HpcClusterId"`
-	ClientToken                 string                                      `position:"Query" name:"ClientToken"`
-	ScalingGroupId              string                                      `position:"Query" name:"ScalingGroupId"`
-	InstanceTypes               *[]string                                   `position:"Query" name:"InstanceTypes"  type:"Repeated"`
-	IoOptimized                 string                                      `position:"Query" name:"IoOptimized"`
-	SecurityGroupId             string                                      `position:"Query" name:"SecurityGroupId"`
-	InternetMaxBandwidthOut     requests.Integer                            `position:"Query" name:"InternetMaxBandwidthOut"`
-	SecurityEnhancementStrategy string                                      `position:"Query" name:"SecurityEnhancementStrategy"`
-	KeyPairName                 string                                      `position:"Query" name:"KeyPairName"`
-	SpotPriceLimit              *[]CreateScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
-	SystemDiskCategory          string                                      `position:"Query" name:"SystemDisk.Category"`
-	UserData                    string                                      `position:"Query" name:"UserData"`
-	ResourceGroupId             string                                      `position:"Query" name:"ResourceGroupId"`
-	HostName                    string                                      `position:"Query" name:"HostName"`
-	Password                    string                                      `position:"Query" name:"Password"`
-	PasswordInherit             requests.Boolean                            `position:"Query" name:"PasswordInherit"`
-	ImageName                   string                                      `position:"Query" name:"ImageName"`
-	InstanceDescription         string                                      `position:"Query" name:"InstanceDescription"`
-	InstanceType                string                                      `position:"Query" name:"InstanceType"`
-	DeploymentSetId             string                                      `position:"Query" name:"DeploymentSetId"`
-	ResourceOwnerAccount        string                                      `position:"Query" name:"ResourceOwnerAccount"`
-	OwnerAccount                string                                      `position:"Query" name:"OwnerAccount"`
-	Cpu                         requests.Integer                            `position:"Query" name:"Cpu"`
-	SystemDiskDiskName          string                                      `position:"Query" name:"SystemDisk.DiskName"`
-	RamRoleName                 string                                      `position:"Query" name:"RamRoleName"`
-	OwnerId                     requests.Integer                            `position:"Query" name:"OwnerId"`
-	SecurityGroupIds            *[]string                                   `position:"Query" name:"SecurityGroupIds"  type:"Repeated"`
-	DataDisk                    *[]CreateScalingConfigurationDataDisk       `position:"Query" name:"DataDisk"  type:"Repeated"`
-	ScalingConfigurationName    string                                      `position:"Query" name:"ScalingConfigurationName"`
-	Tags                        string                                      `position:"Query" name:"Tags"`
-	SpotStrategy                string                                      `position:"Query" name:"SpotStrategy"`
-	LoadBalancerWeight          requests.Integer                            `position:"Query" name:"LoadBalancerWeight"`
-	InstanceName                string                                      `position:"Query" name:"InstanceName"`
-	SystemDiskSize              requests.Integer                            `position:"Query" name:"SystemDisk.Size"`
-	InternetChargeType          string                                      `position:"Query" name:"InternetChargeType"`
-	InternetMaxBandwidthIn      requests.Integer                            `position:"Query" name:"InternetMaxBandwidthIn"`
-	SystemDiskDescription       string                                      `position:"Query" name:"SystemDisk.Description"`
+	HpcClusterId                   string                                      `position:"Query" name:"HpcClusterId"`
+	SecurityEnhancementStrategy    string                                      `position:"Query" name:"SecurityEnhancementStrategy"`
+	KeyPairName                    string                                      `position:"Query" name:"KeyPairName"`
+	SpotPriceLimit                 *[]CreateScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
+	ResourceGroupId                string                                      `position:"Query" name:"ResourceGroupId"`
+	HostName                       string                                      `position:"Query" name:"HostName"`
+	Password                       string                                      `position:"Query" name:"Password"`
+	InstanceDescription            string                                      `position:"Query" name:"InstanceDescription"`
+	SystemDiskAutoSnapshotPolicyId string                                      `position:"Query" name:"SystemDisk.AutoSnapshotPolicyId"`
+	Cpu                            requests.Integer                            `position:"Query" name:"Cpu"`
+	OwnerId                        requests.Integer                            `position:"Query" name:"OwnerId"`
+	ScalingConfigurationName       string                                      `position:"Query" name:"ScalingConfigurationName"`
+	Tags                           string                                      `position:"Query" name:"Tags"`
+	SpotStrategy                   string                                      `position:"Query" name:"SpotStrategy"`
+	InstanceName                   string                                      `position:"Query" name:"InstanceName"`
+	InternetChargeType             string                                      `position:"Query" name:"InternetChargeType"`
+	InternetMaxBandwidthIn         requests.Integer                            `position:"Query" name:"InternetMaxBandwidthIn"`
+	ImageId                        string                                      `position:"Query" name:"ImageId"`
+	Memory                         requests.Integer                            `position:"Query" name:"Memory"`
+	ClientToken                    string                                      `position:"Query" name:"ClientToken"`
+	ScalingGroupId                 string                                      `position:"Query" name:"ScalingGroupId"`
+	InstanceTypes                  *[]string                                   `position:"Query" name:"InstanceTypes"  type:"Repeated"`
+	IoOptimized                    string                                      `position:"Query" name:"IoOptimized"`
+	SecurityGroupId                string                                      `position:"Query" name:"SecurityGroupId"`
+	InternetMaxBandwidthOut        requests.Integer                            `position:"Query" name:"InternetMaxBandwidthOut"`
+	SystemDiskCategory             string                                      `position:"Query" name:"SystemDisk.Category"`
+	UserData                       string                                      `position:"Query" name:"UserData"`
+	PasswordInherit                requests.Boolean                            `position:"Query" name:"PasswordInherit"`
+	ImageName                      string                                      `position:"Query" name:"ImageName"`
+	InstanceType                   string                                      `position:"Query" name:"InstanceType"`
+	DeploymentSetId                string                                      `position:"Query" name:"DeploymentSetId"`
+	ResourceOwnerAccount           string                                      `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount                   string                                      `position:"Query" name:"OwnerAccount"`
+	SystemDiskDiskName             string                                      `position:"Query" name:"SystemDisk.DiskName"`
+	RamRoleName                    string                                      `position:"Query" name:"RamRoleName"`
+	SecurityGroupIds               *[]string                                   `position:"Query" name:"SecurityGroupIds"  type:"Repeated"`
+	DataDisk                       *[]CreateScalingConfigurationDataDisk       `position:"Query" name:"DataDisk"  type:"Repeated"`
+	LoadBalancerWeight             requests.Integer                            `position:"Query" name:"LoadBalancerWeight"`
+	SystemDiskSize                 requests.Integer                            `position:"Query" name:"SystemDisk.Size"`
+	SystemDiskDescription          string                                      `position:"Query" name:"SystemDisk.Description"`
 }
 
 // CreateScalingConfigurationSpotPriceLimit is a repeated param struct in CreateScalingConfigurationRequest
@@ -125,15 +126,16 @@ type CreateScalingConfigurationSpotPriceLimit struct {
 
 // CreateScalingConfigurationDataDisk is a repeated param struct in CreateScalingConfigurationRequest
 type CreateScalingConfigurationDataDisk struct {
-	DiskName           string `name:"DiskName"`
-	SnapshotId         string `name:"SnapshotId"`
-	Size               string `name:"Size"`
-	Encrypted          string `name:"Encrypted"`
-	Description        string `name:"Description"`
-	Category           string `name:"Category"`
-	KMSKeyId           string `name:"KMSKeyId"`
-	Device             string `name:"Device"`
-	DeleteWithInstance string `name:"DeleteWithInstance"`
+	DiskName             string `name:"DiskName"`
+	SnapshotId           string `name:"SnapshotId"`
+	Size                 string `name:"Size"`
+	Encrypted            string `name:"Encrypted"`
+	AutoSnapshotPolicyId string `name:"AutoSnapshotPolicyId"`
+	Description          string `name:"Description"`
+	Category             string `name:"Category"`
+	KMSKeyId             string `name:"KMSKeyId"`
+	Device               string `name:"Device"`
+	DeleteWithInstance   string `name:"DeleteWithInstance"`
 }
 
 // CreateScalingConfigurationResponse is the response struct for api CreateScalingConfiguration

+ 14 - 11
services/ess/create_scaling_group.go

@@ -76,30 +76,33 @@ func (client *Client) CreateScalingGroupWithCallback(request *CreateScalingGroup
 // CreateScalingGroupRequest is the request struct for api CreateScalingGroup
 type CreateScalingGroupRequest struct {
 	*requests.RpcRequest
-	LoadBalancerIds                     string                             `position:"Query" name:"LoadBalancerIds"`
-	ClientToken                         string                             `position:"Query" name:"ClientToken"`
 	VSwitchIds                          *[]string                          `position:"Query" name:"VSwitchIds"  type:"Repeated"`
-	OnDemandBaseCapacity                requests.Integer                   `position:"Query" name:"OnDemandBaseCapacity"`
-	OnDemandPercentageAboveBaseCapacity requests.Integer                   `position:"Query" name:"OnDemandPercentageAboveBaseCapacity"`
 	SpotInstanceRemedy                  requests.Boolean                   `position:"Query" name:"SpotInstanceRemedy"`
 	DefaultCooldown                     requests.Integer                   `position:"Query" name:"DefaultCooldown"`
-	RemovalPolicy1                      string                             `position:"Query" name:"RemovalPolicy.1"`
-	RemovalPolicy2                      string                             `position:"Query" name:"RemovalPolicy.2"`
 	MultiAZPolicy                       string                             `position:"Query" name:"MultiAZPolicy"`
 	DBInstanceIds                       string                             `position:"Query" name:"DBInstanceIds"`
 	LaunchTemplateId                    string                             `position:"Query" name:"LaunchTemplateId"`
+	DesiredCapacity                     requests.Integer                   `position:"Query" name:"DesiredCapacity"`
+	MinSize                             requests.Integer                   `position:"Query" name:"MinSize"`
+	OwnerId                             requests.Integer                   `position:"Query" name:"OwnerId"`
+	VSwitchId                           string                             `position:"Query" name:"VSwitchId"`
+	InstanceId                          string                             `position:"Query" name:"InstanceId"`
+	MaxSize                             requests.Integer                   `position:"Query" name:"MaxSize"`
+	LifecycleHook                       *[]CreateScalingGroupLifecycleHook `position:"Query" name:"LifecycleHook"  type:"Repeated"`
+	LoadBalancerIds                     string                             `position:"Query" name:"LoadBalancerIds"`
+	ClientToken                         string                             `position:"Query" name:"ClientToken"`
+	OnDemandBaseCapacity                requests.Integer                   `position:"Query" name:"OnDemandBaseCapacity"`
+	OnDemandPercentageAboveBaseCapacity requests.Integer                   `position:"Query" name:"OnDemandPercentageAboveBaseCapacity"`
+	RemovalPolicy1                      string                             `position:"Query" name:"RemovalPolicy.1"`
+	RemovalPolicy2                      string                             `position:"Query" name:"RemovalPolicy.2"`
 	HealthCheckType                     string                             `position:"Query" name:"HealthCheckType"`
 	ResourceOwnerAccount                string                             `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupName                    string                             `position:"Query" name:"ScalingGroupName"`
 	OwnerAccount                        string                             `position:"Query" name:"OwnerAccount"`
 	SpotInstancePools                   requests.Integer                   `position:"Query" name:"SpotInstancePools"`
-	MinSize                             requests.Integer                   `position:"Query" name:"MinSize"`
-	OwnerId                             requests.Integer                   `position:"Query" name:"OwnerId"`
+	GroupDeletionProtection             requests.Boolean                   `position:"Query" name:"GroupDeletionProtection"`
 	LaunchTemplateVersion               string                             `position:"Query" name:"LaunchTemplateVersion"`
 	ScalingPolicy                       string                             `position:"Query" name:"ScalingPolicy"`
-	VSwitchId                           string                             `position:"Query" name:"VSwitchId"`
-	MaxSize                             requests.Integer                   `position:"Query" name:"MaxSize"`
-	LifecycleHook                       *[]CreateScalingGroupLifecycleHook `position:"Query" name:"LifecycleHook"  type:"Repeated"`
 	VServerGroup                        *[]CreateScalingGroupVServerGroup  `position:"Query" name:"VServerGroup"  type:"Repeated"`
 }
 

+ 10 - 10
services/ess/create_scaling_rule.go

@@ -76,26 +76,26 @@ func (client *Client) CreateScalingRuleWithCallback(request *CreateScalingRuleRe
 // CreateScalingRuleRequest is the request struct for api CreateScalingRule
 type CreateScalingRuleRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount     string                             `position:"Query" name:"ResourceOwnerAccount"`
-	AdjustmentValue          requests.Integer                   `position:"Query" name:"AdjustmentValue"`
 	StepAdjustment           *[]CreateScalingRuleStepAdjustment `position:"Query" name:"StepAdjustment"  type:"Repeated"`
 	ScalingGroupId           string                             `position:"Query" name:"ScalingGroupId"`
-	EstimatedInstanceWarmup  requests.Integer                   `position:"Query" name:"EstimatedInstanceWarmup"`
-	OwnerAccount             string                             `position:"Query" name:"OwnerAccount"`
-	PredictiveTaskBufferTime requests.Integer                   `position:"Query" name:"PredictiveTaskBufferTime"`
-	AdjustmentType           string                             `position:"Query" name:"AdjustmentType"`
 	DisableScaleIn           requests.Boolean                   `position:"Query" name:"DisableScaleIn"`
-	OwnerId                  requests.Integer                   `position:"Query" name:"OwnerId"`
 	InitialMaxSize           requests.Integer                   `position:"Query" name:"InitialMaxSize"`
-	PredictiveValueBuffer    requests.Integer                   `position:"Query" name:"PredictiveValueBuffer"`
 	ScalingRuleName          string                             `position:"Query" name:"ScalingRuleName"`
 	Cooldown                 requests.Integer                   `position:"Query" name:"Cooldown"`
-	MinAdjustmentMagnitude   requests.Integer                   `position:"Query" name:"MinAdjustmentMagnitude"`
 	PredictiveValueBehavior  string                             `position:"Query" name:"PredictiveValueBehavior"`
-	TargetValue              requests.Float                     `position:"Query" name:"TargetValue"`
 	ScalingRuleType          string                             `position:"Query" name:"ScalingRuleType"`
 	MetricName               string                             `position:"Query" name:"MetricName"`
 	PredictiveScalingMode    string                             `position:"Query" name:"PredictiveScalingMode"`
+	ResourceOwnerAccount     string                             `position:"Query" name:"ResourceOwnerAccount"`
+	AdjustmentValue          requests.Integer                   `position:"Query" name:"AdjustmentValue"`
+	EstimatedInstanceWarmup  requests.Integer                   `position:"Query" name:"EstimatedInstanceWarmup"`
+	OwnerAccount             string                             `position:"Query" name:"OwnerAccount"`
+	PredictiveTaskBufferTime requests.Integer                   `position:"Query" name:"PredictiveTaskBufferTime"`
+	AdjustmentType           string                             `position:"Query" name:"AdjustmentType"`
+	OwnerId                  requests.Integer                   `position:"Query" name:"OwnerId"`
+	PredictiveValueBuffer    requests.Integer                   `position:"Query" name:"PredictiveValueBuffer"`
+	MinAdjustmentMagnitude   requests.Integer                   `position:"Query" name:"MinAdjustmentMagnitude"`
+	TargetValue              requests.Float                     `position:"Query" name:"TargetValue"`
 }
 
 // CreateScalingRuleStepAdjustment is a repeated param struct in CreateScalingRuleRequest

+ 3 - 3
services/ess/create_scheduled_task.go

@@ -76,15 +76,15 @@ func (client *Client) CreateScheduledTaskWithCallback(request *CreateScheduledTa
 // CreateScheduledTaskRequest is the request struct for api CreateScheduledTask
 type CreateScheduledTaskRequest struct {
 	*requests.RpcRequest
-	LaunchTime           string           `position:"Query" name:"LaunchTime"`
 	ScheduledAction      string           `position:"Query" name:"ScheduledAction"`
+	Description          string           `position:"Query" name:"Description"`
+	RecurrenceEndTime    string           `position:"Query" name:"RecurrenceEndTime"`
+	LaunchTime           string           `position:"Query" name:"LaunchTime"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	Description          string           `position:"Query" name:"Description"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	RecurrenceValue      string           `position:"Query" name:"RecurrenceValue"`
 	LaunchExpirationTime requests.Integer `position:"Query" name:"LaunchExpirationTime"`
-	RecurrenceEndTime    string           `position:"Query" name:"RecurrenceEndTime"`
 	ScheduledTaskName    string           `position:"Query" name:"ScheduledTaskName"`
 	TaskEnabled          requests.Boolean `position:"Query" name:"TaskEnabled"`
 	RecurrenceType       string           `position:"Query" name:"RecurrenceType"`

+ 1 - 1
services/ess/deactivate_scaling_configuration.go

@@ -76,10 +76,10 @@ func (client *Client) DeactivateScalingConfigurationWithCallback(request *Deacti
 // DeactivateScalingConfigurationRequest is the request struct for api DeactivateScalingConfiguration
 type DeactivateScalingConfigurationRequest struct {
 	*requests.RpcRequest
-	ScalingConfigurationId string           `position:"Query" name:"ScalingConfigurationId"`
 	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
 	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+	ScalingConfigurationId string           `position:"Query" name:"ScalingConfigurationId"`
 }
 
 // DeactivateScalingConfigurationResponse is the response struct for api DeactivateScalingConfiguration

+ 1 - 1
services/ess/delete_lifecycle_hook.go

@@ -76,10 +76,10 @@ func (client *Client) DeleteLifecycleHookWithCallback(request *DeleteLifecycleHo
 // DeleteLifecycleHookRequest is the request struct for api DeleteLifecycleHook
 type DeleteLifecycleHookRequest struct {
 	*requests.RpcRequest
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	LifecycleHookName    string           `position:"Query" name:"LifecycleHookName"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	LifecycleHookId      string           `position:"Query" name:"LifecycleHookId"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }

+ 1 - 1
services/ess/delete_notification_configuration.go

@@ -78,8 +78,8 @@ type DeleteNotificationConfigurationRequest struct {
 	*requests.RpcRequest
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	NotificationArn      string           `position:"Query" name:"NotificationArn"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	NotificationArn      string           `position:"Query" name:"NotificationArn"`
 }
 
 // DeleteNotificationConfigurationResponse is the response struct for api DeleteNotificationConfiguration

+ 1 - 1
services/ess/delete_scaling_configuration.go

@@ -76,10 +76,10 @@ func (client *Client) DeleteScalingConfigurationWithCallback(request *DeleteScal
 // DeleteScalingConfigurationRequest is the request struct for api DeleteScalingConfiguration
 type DeleteScalingConfigurationRequest struct {
 	*requests.RpcRequest
-	ScalingConfigurationId string           `position:"Query" name:"ScalingConfigurationId"`
 	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
 	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+	ScalingConfigurationId string           `position:"Query" name:"ScalingConfigurationId"`
 }
 
 // DeleteScalingConfigurationResponse is the response struct for api DeleteScalingConfiguration

+ 1 - 1
services/ess/delete_scaling_group.go

@@ -76,9 +76,9 @@ func (client *Client) DeleteScalingGroupWithCallback(request *DeleteScalingGroup
 // DeleteScalingGroupRequest is the request struct for api DeleteScalingGroup
 type DeleteScalingGroupRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	ForceDelete          requests.Boolean `position:"Query" name:"ForceDelete"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }

+ 0 - 112
services/ess/describe_account_attributes.go

@@ -1,112 +0,0 @@
-package ess
-
-//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"
-)
-
-// DescribeAccountAttributes invokes the ess.DescribeAccountAttributes API synchronously
-// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
-func (client *Client) DescribeAccountAttributes(request *DescribeAccountAttributesRequest) (response *DescribeAccountAttributesResponse, err error) {
-	response = CreateDescribeAccountAttributesResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-// DescribeAccountAttributesWithChan invokes the ess.DescribeAccountAttributes API asynchronously
-// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeAccountAttributesWithChan(request *DescribeAccountAttributesRequest) (<-chan *DescribeAccountAttributesResponse, <-chan error) {
-	responseChan := make(chan *DescribeAccountAttributesResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.DescribeAccountAttributes(request)
-		if err != nil {
-			errChan <- err
-		} else {
-			responseChan <- response
-		}
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-// DescribeAccountAttributesWithCallback invokes the ess.DescribeAccountAttributes API asynchronously
-// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeAccountAttributesWithCallback(request *DescribeAccountAttributesRequest, callback func(response *DescribeAccountAttributesResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *DescribeAccountAttributesResponse
-		var err error
-		defer close(result)
-		response, err = client.DescribeAccountAttributes(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-// DescribeAccountAttributesRequest is the request struct for api DescribeAccountAttributes
-type DescribeAccountAttributesRequest struct {
-	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-}
-
-// DescribeAccountAttributesResponse is the response struct for api DescribeAccountAttributes
-type DescribeAccountAttributesResponse struct {
-	*responses.BaseResponse
-	MaxNumberOfScalingGroups         int `json:"MaxNumberOfScalingGroups" xml:"MaxNumberOfScalingGroups"`
-	MaxNumberOfScalingConfigurations int `json:"MaxNumberOfScalingConfigurations" xml:"MaxNumberOfScalingConfigurations"`
-	MaxNumberOfScalingRules          int `json:"MaxNumberOfScalingRules" xml:"MaxNumberOfScalingRules"`
-	MaxNumberOfScheduledTasks        int `json:"MaxNumberOfScheduledTasks" xml:"MaxNumberOfScheduledTasks"`
-	MaxNumberOfScalingInstances      int `json:"MaxNumberOfScalingInstances" xml:"MaxNumberOfScalingInstances"`
-	MaxNumberOfDBInstances           int `json:"MaxNumberOfDBInstances" xml:"MaxNumberOfDBInstances"`
-	MaxNumberOfLoadBalancers         int `json:"MaxNumberOfLoadBalancers" xml:"MaxNumberOfLoadBalancers"`
-	MaxNumberOfMinSize               int `json:"MaxNumberOfMinSize" xml:"MaxNumberOfMinSize"`
-	MaxNumberOfMaxSize               int `json:"MaxNumberOfMaxSize" xml:"MaxNumberOfMaxSize"`
-}
-
-// CreateDescribeAccountAttributesRequest creates a request to invoke DescribeAccountAttributes API
-func CreateDescribeAccountAttributesRequest() (request *DescribeAccountAttributesRequest) {
-	request = &DescribeAccountAttributesRequest{
-		RpcRequest: &requests.RpcRequest{},
-	}
-	request.InitWithApiInfo("Ess", "2014-08-28", "DescribeAccountAttributes", "ess", "openAPI")
-	return
-}
-
-// CreateDescribeAccountAttributesResponse creates a response to parse from DescribeAccountAttributes response
-func CreateDescribeAccountAttributesResponse() (response *DescribeAccountAttributesResponse) {
-	response = &DescribeAccountAttributesResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 3 - 3
services/ess/describe_alarms.go

@@ -76,15 +76,15 @@ func (client *Client) DescribeAlarmsWithCallback(request *DescribeAlarmsRequest,
 // DescribeAlarmsRequest is the request struct for api DescribeAlarms
 type DescribeAlarmsRequest struct {
 	*requests.RpcRequest
-	IsEnable             requests.Boolean `position:"Query" name:"IsEnable"`
 	MetricType           string           `position:"Query" name:"MetricType"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	State                string           `position:"Query" name:"State"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	AlarmTaskId          string           `position:"Query" name:"AlarmTaskId"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	IsEnable             requests.Boolean `position:"Query" name:"IsEnable"`
 }
 
 // DescribeAlarmsResponse is the response struct for api DescribeAlarms

+ 0 - 108
services/ess/describe_alert_config.go

@@ -1,108 +0,0 @@
-package ess
-
-//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"
-)
-
-// DescribeAlertConfig invokes the ess.DescribeAlertConfig API synchronously
-// api document: https://help.aliyun.com/api/ess/describealertconfig.html
-func (client *Client) DescribeAlertConfig(request *DescribeAlertConfigRequest) (response *DescribeAlertConfigResponse, err error) {
-	response = CreateDescribeAlertConfigResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-// DescribeAlertConfigWithChan invokes the ess.DescribeAlertConfig API asynchronously
-// api document: https://help.aliyun.com/api/ess/describealertconfig.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeAlertConfigWithChan(request *DescribeAlertConfigRequest) (<-chan *DescribeAlertConfigResponse, <-chan error) {
-	responseChan := make(chan *DescribeAlertConfigResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.DescribeAlertConfig(request)
-		if err != nil {
-			errChan <- err
-		} else {
-			responseChan <- response
-		}
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-// DescribeAlertConfigWithCallback invokes the ess.DescribeAlertConfig API asynchronously
-// api document: https://help.aliyun.com/api/ess/describealertconfig.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeAlertConfigWithCallback(request *DescribeAlertConfigRequest, callback func(response *DescribeAlertConfigResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *DescribeAlertConfigResponse
-		var err error
-		defer close(result)
-		response, err = client.DescribeAlertConfig(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-// DescribeAlertConfigRequest is the request struct for api DescribeAlertConfig
-type DescribeAlertConfigRequest struct {
-	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-}
-
-// DescribeAlertConfigResponse is the response struct for api DescribeAlertConfig
-type DescribeAlertConfigResponse struct {
-	*responses.BaseResponse
-	SuccessConfig int    `json:"SuccessConfig" xml:"SuccessConfig"`
-	FailConfig    int    `json:"FailConfig" xml:"FailConfig"`
-	RejectConfig  int    `json:"RejectConfig" xml:"RejectConfig"`
-	RequestId     string `json:"RequestId" xml:"RequestId"`
-}
-
-// CreateDescribeAlertConfigRequest creates a request to invoke DescribeAlertConfig API
-func CreateDescribeAlertConfigRequest() (request *DescribeAlertConfigRequest) {
-	request = &DescribeAlertConfigRequest{
-		RpcRequest: &requests.RpcRequest{},
-	}
-	request.InitWithApiInfo("Ess", "2014-08-28", "DescribeAlertConfig", "ess", "openAPI")
-	return
-}
-
-// CreateDescribeAlertConfigResponse creates a response to parse from DescribeAlertConfig response
-func CreateDescribeAlertConfigResponse() (response *DescribeAlertConfigResponse) {
-	response = &DescribeAlertConfigResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 0 - 113
services/ess/describe_capacity_history.go

@@ -1,113 +0,0 @@
-package ess
-
-//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"
-)
-
-// DescribeCapacityHistory invokes the ess.DescribeCapacityHistory API synchronously
-// api document: https://help.aliyun.com/api/ess/describecapacityhistory.html
-func (client *Client) DescribeCapacityHistory(request *DescribeCapacityHistoryRequest) (response *DescribeCapacityHistoryResponse, err error) {
-	response = CreateDescribeCapacityHistoryResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-// DescribeCapacityHistoryWithChan invokes the ess.DescribeCapacityHistory API asynchronously
-// api document: https://help.aliyun.com/api/ess/describecapacityhistory.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeCapacityHistoryWithChan(request *DescribeCapacityHistoryRequest) (<-chan *DescribeCapacityHistoryResponse, <-chan error) {
-	responseChan := make(chan *DescribeCapacityHistoryResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.DescribeCapacityHistory(request)
-		if err != nil {
-			errChan <- err
-		} else {
-			responseChan <- response
-		}
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-// DescribeCapacityHistoryWithCallback invokes the ess.DescribeCapacityHistory API asynchronously
-// api document: https://help.aliyun.com/api/ess/describecapacityhistory.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeCapacityHistoryWithCallback(request *DescribeCapacityHistoryRequest, callback func(response *DescribeCapacityHistoryResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *DescribeCapacityHistoryResponse
-		var err error
-		defer close(result)
-		response, err = client.DescribeCapacityHistory(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-// DescribeCapacityHistoryRequest is the request struct for api DescribeCapacityHistory
-type DescribeCapacityHistoryRequest struct {
-	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	EndTime              string           `position:"Query" name:"EndTime"`
-	StartTime            string           `position:"Query" name:"StartTime"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-}
-
-// DescribeCapacityHistoryResponse is the response struct for api DescribeCapacityHistory
-type DescribeCapacityHistoryResponse 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"`
-	CapacityHistoryItems CapacityHistoryItems `json:"CapacityHistoryItems" xml:"CapacityHistoryItems"`
-}
-
-// CreateDescribeCapacityHistoryRequest creates a request to invoke DescribeCapacityHistory API
-func CreateDescribeCapacityHistoryRequest() (request *DescribeCapacityHistoryRequest) {
-	request = &DescribeCapacityHistoryRequest{
-		RpcRequest: &requests.RpcRequest{},
-	}
-	request.InitWithApiInfo("Ess", "2014-08-28", "DescribeCapacityHistory", "ess", "openAPI")
-	return
-}
-
-// CreateDescribeCapacityHistoryResponse creates a response to parse from DescribeCapacityHistory response
-func CreateDescribeCapacityHistoryResponse() (response *DescribeCapacityHistoryResponse) {
-	response = &DescribeCapacityHistoryResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 3 - 3
services/ess/describe_lifecycle_hooks.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeLifecycleHooksWithCallback(request *DescribeLifecy
 // DescribeLifecycleHooksRequest is the request struct for api DescribeLifecycleHooks
 type DescribeLifecycleHooksRequest struct {
 	*requests.RpcRequest
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	LifecycleHookName    string           `position:"Query" name:"LifecycleHookName"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	LifecycleHookId      *[]string        `position:"Query" name:"LifecycleHookId"  type:"Repeated"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // DescribeLifecycleHooksResponse is the response struct for api DescribeLifecycleHooks

+ 1 - 1
services/ess/describe_regions.go

@@ -78,8 +78,8 @@ type DescribeRegionsRequest struct {
 	*requests.RpcRequest
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	AcceptLanguage       string           `position:"Query" name:"AcceptLanguage"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	AcceptLanguage       string           `position:"Query" name:"AcceptLanguage"`
 }
 
 // DescribeRegionsResponse is the response struct for api DescribeRegions

+ 10 - 10
services/ess/describe_scaling_instances.go

@@ -76,23 +76,13 @@ func (client *Client) DescribeScalingInstancesWithCallback(request *DescribeScal
 // DescribeScalingInstancesRequest is the request struct for api DescribeScalingInstances
 type DescribeScalingInstancesRequest struct {
 	*requests.RpcRequest
-	InstanceId10           string           `position:"Query" name:"InstanceId.10"`
 	ResourceOwnerId        requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	InstanceId12           string           `position:"Query" name:"InstanceId.12"`
-	InstanceId11           string           `position:"Query" name:"InstanceId.11"`
-	ScalingGroupId         string           `position:"Query" name:"ScalingGroupId"`
-	LifecycleState         string           `position:"Query" name:"LifecycleState"`
 	CreationType           string           `position:"Query" name:"CreationType"`
-	PageNumber             requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize               requests.Integer `position:"Query" name:"PageSize"`
-	InstanceId20           string           `position:"Query" name:"InstanceId.20"`
 	InstanceId1            string           `position:"Query" name:"InstanceId.1"`
 	InstanceId3            string           `position:"Query" name:"InstanceId.3"`
-	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
 	InstanceId2            string           `position:"Query" name:"InstanceId.2"`
 	InstanceId5            string           `position:"Query" name:"InstanceId.5"`
 	InstanceId4            string           `position:"Query" name:"InstanceId.4"`
-	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
 	InstanceId7            string           `position:"Query" name:"InstanceId.7"`
 	InstanceId6            string           `position:"Query" name:"InstanceId.6"`
 	InstanceId9            string           `position:"Query" name:"InstanceId.9"`
@@ -100,6 +90,16 @@ type DescribeScalingInstancesRequest struct {
 	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
 	ScalingConfigurationId string           `position:"Query" name:"ScalingConfigurationId"`
 	HealthStatus           string           `position:"Query" name:"HealthStatus"`
+	InstanceId10           string           `position:"Query" name:"InstanceId.10"`
+	InstanceId12           string           `position:"Query" name:"InstanceId.12"`
+	InstanceId11           string           `position:"Query" name:"InstanceId.11"`
+	ScalingGroupId         string           `position:"Query" name:"ScalingGroupId"`
+	LifecycleState         string           `position:"Query" name:"LifecycleState"`
+	PageNumber             requests.Integer `position:"Query" name:"PageNumber"`
+	PageSize               requests.Integer `position:"Query" name:"PageSize"`
+	InstanceId20           string           `position:"Query" name:"InstanceId.20"`
+	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
 	InstanceId18           string           `position:"Query" name:"InstanceId.18"`
 	InstanceId17           string           `position:"Query" name:"InstanceId.17"`
 	InstanceId19           string           `position:"Query" name:"InstanceId.19"`

+ 12 - 12
services/ess/describe_scaling_rules.go

@@ -76,8 +76,19 @@ func (client *Client) DescribeScalingRulesWithCallback(request *DescribeScalingR
 // DescribeScalingRulesRequest is the request struct for api DescribeScalingRules
 type DescribeScalingRulesRequest struct {
 	*requests.RpcRequest
-	ScalingRuleName1     string           `position:"Query" name:"ScalingRuleName.1"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ScalingRuleId10      string           `position:"Query" name:"ScalingRuleId.10"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ScalingRuleAri1      string           `position:"Query" name:"ScalingRuleAri.1"`
+	ScalingRuleAri2      string           `position:"Query" name:"ScalingRuleAri.2"`
+	ScalingRuleAri3      string           `position:"Query" name:"ScalingRuleAri.3"`
+	ScalingRuleAri4      string           `position:"Query" name:"ScalingRuleAri.4"`
+	ScalingRuleAri5      string           `position:"Query" name:"ScalingRuleAri.5"`
+	ScalingRuleAri6      string           `position:"Query" name:"ScalingRuleAri.6"`
+	ScalingRuleAri7      string           `position:"Query" name:"ScalingRuleAri.7"`
+	ScalingRuleAri8      string           `position:"Query" name:"ScalingRuleAri.8"`
+	ShowAlarmRules       requests.Boolean `position:"Query" name:"ShowAlarmRules"`
+	ScalingRuleName1     string           `position:"Query" name:"ScalingRuleName.1"`
 	ScalingRuleName2     string           `position:"Query" name:"ScalingRuleName.2"`
 	ScalingRuleName3     string           `position:"Query" name:"ScalingRuleName.3"`
 	ScalingRuleName4     string           `position:"Query" name:"ScalingRuleName.4"`
@@ -91,24 +102,13 @@ type DescribeScalingRulesRequest struct {
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	ScalingRuleType      string           `position:"Query" name:"ScalingRuleType"`
-	ScalingRuleId10      string           `position:"Query" name:"ScalingRuleId.10"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ScalingRuleAri1      string           `position:"Query" name:"ScalingRuleAri.1"`
-	ScalingRuleAri2      string           `position:"Query" name:"ScalingRuleAri.2"`
 	ScalingRuleName10    string           `position:"Query" name:"ScalingRuleName.10"`
-	ScalingRuleAri3      string           `position:"Query" name:"ScalingRuleAri.3"`
-	ScalingRuleAri4      string           `position:"Query" name:"ScalingRuleAri.4"`
 	ScalingRuleId8       string           `position:"Query" name:"ScalingRuleId.8"`
-	ScalingRuleAri5      string           `position:"Query" name:"ScalingRuleAri.5"`
 	ScalingRuleId9       string           `position:"Query" name:"ScalingRuleId.9"`
-	ScalingRuleAri6      string           `position:"Query" name:"ScalingRuleAri.6"`
-	ScalingRuleAri7      string           `position:"Query" name:"ScalingRuleAri.7"`
 	ScalingRuleAri10     string           `position:"Query" name:"ScalingRuleAri.10"`
-	ScalingRuleAri8      string           `position:"Query" name:"ScalingRuleAri.8"`
 	ScalingRuleId4       string           `position:"Query" name:"ScalingRuleId.4"`
-	ShowAlarmRules       requests.Boolean `position:"Query" name:"ShowAlarmRules"`
 	ScalingRuleId5       string           `position:"Query" name:"ScalingRuleId.5"`
 	ScalingRuleId6       string           `position:"Query" name:"ScalingRuleId.6"`
 	ScalingRuleId7       string           `position:"Query" name:"ScalingRuleId.7"`

+ 0 - 122
services/ess/describe_user.go

@@ -1,122 +0,0 @@
-package ess
-
-//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"
-)
-
-// DescribeUser invokes the ess.DescribeUser API synchronously
-// api document: https://help.aliyun.com/api/ess/describeuser.html
-func (client *Client) DescribeUser(request *DescribeUserRequest) (response *DescribeUserResponse, err error) {
-	response = CreateDescribeUserResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-// DescribeUserWithChan invokes the ess.DescribeUser API asynchronously
-// api document: https://help.aliyun.com/api/ess/describeuser.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeUserWithChan(request *DescribeUserRequest) (<-chan *DescribeUserResponse, <-chan error) {
-	responseChan := make(chan *DescribeUserResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.DescribeUser(request)
-		if err != nil {
-			errChan <- err
-		} else {
-			responseChan <- response
-		}
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-// DescribeUserWithCallback invokes the ess.DescribeUser API asynchronously
-// api document: https://help.aliyun.com/api/ess/describeuser.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) DescribeUserWithCallback(request *DescribeUserRequest, callback func(response *DescribeUserResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *DescribeUserResponse
-		var err error
-		defer close(result)
-		response, err = client.DescribeUser(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-// DescribeUserRequest is the request struct for api DescribeUser
-type DescribeUserRequest struct {
-	*requests.RpcRequest
-	UserId               requests.Integer `position:"Query" name:"UserId"`
-	ForceDelete          requests.Boolean `position:"Query" name:"ForceDelete"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-}
-
-// DescribeUserResponse is the response struct for api DescribeUser
-type DescribeUserResponse struct {
-	*responses.BaseResponse
-	UserId                           string `json:"UserId" xml:"UserId"`
-	GrantPermission                  bool   `json:"GrantPermission" xml:"GrantPermission"`
-	RealNameAuthentication           bool   `json:"RealNameAuthentication" xml:"RealNameAuthentication"`
-	Deleted                          bool   `json:"Deleted" xml:"Deleted"`
-	Bid                              string `json:"Bid" xml:"Bid"`
-	MaxNumberOfScalingGroup          int    `json:"MaxNumberOfScalingGroup" xml:"MaxNumberOfScalingGroup"`
-	MaxNumberOfScalingConf           int    `json:"MaxNumberOfScalingConf" xml:"MaxNumberOfScalingConf"`
-	MaxNumberOfScalingRule           int    `json:"MaxNumberOfScalingRule" xml:"MaxNumberOfScalingRule"`
-	MaxNumberOfScalingTask           int    `json:"MaxNumberOfScalingTask" xml:"MaxNumberOfScalingTask"`
-	MaxNumberOfMinSizeInScalingGroup int    `json:"MaxNumberOfMinSizeInScalingGroup" xml:"MaxNumberOfMinSizeInScalingGroup"`
-	MaxNumberOfMaxSizeInScalingGroup int    `json:"MaxNumberOfMaxSizeInScalingGroup" xml:"MaxNumberOfMaxSizeInScalingGroup"`
-	MaxNumberOfDBInstance            int    `json:"MaxNumberOfDBInstance" xml:"MaxNumberOfDBInstance"`
-	MaxNumberOfLoadBalancer          int    `json:"MaxNumberOfLoadBalancer" xml:"MaxNumberOfLoadBalancer"`
-	MaxNumberOfEcsInstance           int    `json:"MaxNumberOfEcsInstance" xml:"MaxNumberOfEcsInstance"`
-	EcsStartExpirationTime           int    `json:"EcsStartExpirationTime" xml:"EcsStartExpirationTime"`
-	EcsStopExpirationTime            int    `json:"EcsStopExpirationTime" xml:"EcsStopExpirationTime"`
-}
-
-// CreateDescribeUserRequest creates a request to invoke DescribeUser API
-func CreateDescribeUserRequest() (request *DescribeUserRequest) {
-	request = &DescribeUserRequest{
-		RpcRequest: &requests.RpcRequest{},
-	}
-	request.InitWithApiInfo("Ess", "2014-08-28", "DescribeUser", "ess", "openAPI")
-	return
-}
-
-// CreateDescribeUserResponse creates a response to parse from DescribeUser response
-func CreateDescribeUserResponse() (response *DescribeUserResponse) {
-	response = &DescribeUserResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 2 - 2
services/ess/detach_db_instances.go

@@ -76,11 +76,11 @@ func (client *Client) DetachDBInstancesWithCallback(request *DetachDBInstancesRe
 // DetachDBInstancesRequest is the request struct for api DetachDBInstances
 type DetachDBInstancesRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	DBInstance           *[]string        `position:"Query" name:"DBInstance"  type:"Repeated"`
-	ForceDetach          requests.Boolean `position:"Query" name:"ForceDetach"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ForceDetach          requests.Boolean `position:"Query" name:"ForceDetach"`
 }
 
 // DetachDBInstancesResponse is the response struct for api DetachDBInstances

+ 7 - 6
services/ess/detach_instances.go

@@ -76,12 +76,13 @@ func (client *Client) DetachInstancesWithCallback(request *DetachInstancesReques
 // DetachInstancesRequest is the request struct for api DetachInstances
 type DetachInstancesRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceOwnerId         requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ScalingGroupId          string           `position:"Query" name:"ScalingGroupId"`
+	DecreaseDesiredCapacity requests.Boolean `position:"Query" name:"DecreaseDesiredCapacity"`
+	ResourceOwnerAccount    string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount            string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                 requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId              *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 }
 
 // DetachInstancesResponse is the response struct for api DetachInstances

+ 2 - 2
services/ess/detach_load_balancers.go

@@ -76,11 +76,11 @@ func (client *Client) DetachLoadBalancersWithCallback(request *DetachLoadBalance
 // DetachLoadBalancersRequest is the request struct for api DetachLoadBalancers
 type DetachLoadBalancersRequest struct {
 	*requests.RpcRequest
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	LoadBalancer         *[]string        `position:"Query" name:"LoadBalancer"  type:"Repeated"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	ForceDetach          requests.Boolean `position:"Query" name:"ForceDetach"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ForceDetach          requests.Boolean `position:"Query" name:"ForceDetach"`
 }
 
 // DetachLoadBalancersResponse is the response struct for api DetachLoadBalancers

+ 2 - 2
services/ess/detach_v_server_groups.go

@@ -76,10 +76,10 @@ func (client *Client) DetachVServerGroupsWithCallback(request *DetachVServerGrou
 // DetachVServerGroupsRequest is the request struct for api DetachVServerGroups
 type DetachVServerGroupsRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string                             `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string                             `position:"Query" name:"ScalingGroupId"`
-	ForceDetach          requests.Boolean                   `position:"Query" name:"ForceDetach"`
+	ResourceOwnerAccount string                             `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer                   `position:"Query" name:"OwnerId"`
+	ForceDetach          requests.Boolean                   `position:"Query" name:"ForceDetach"`
 	VServerGroup         *[]DetachVServerGroupsVServerGroup `position:"Query" name:"VServerGroup"  type:"Repeated"`
 }
 

+ 64 - 0
services/ess/endpoint.go

@@ -0,0 +1,64 @@
+package ess
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{
+			"cn-shanghai-internal-test-1": "ess.aliyuncs.com",
+			"cn-beijing-gov-1":            "ess.aliyuncs.com",
+			"cn-shenzhen-su18-b01":        "ess.aliyuncs.com",
+			"cn-beijing":                  "ess.aliyuncs.com",
+			"cn-shanghai-inner":           "ess.aliyuncs.com",
+			"cn-shenzhen-st4-d01":         "ess.aliyuncs.com",
+			"cn-haidian-cm12-c01":         "ess.aliyuncs.com",
+			"cn-hangzhou-internal-prod-1": "ess.aliyuncs.com",
+			"cn-north-2-gov-1":            "ess.aliyuncs.com",
+			"cn-yushanfang":               "ess.aliyuncs.com",
+			"cn-qingdao":                  "ess.aliyuncs.com",
+			"cn-hongkong-finance-pop":     "ess.aliyuncs.com",
+			"cn-qingdao-nebula":           "ess.aliyuncs.com",
+			"cn-shanghai":                 "ess.aliyuncs.com",
+			"cn-shanghai-finance-1":       "ess.aliyuncs.com",
+			"cn-hongkong":                 "ess.aliyuncs.com",
+			"cn-beijing-finance-pop":      "ess.aliyuncs.com",
+			"cn-wuhan":                    "ess.aliyuncs.com",
+			"us-west-1":                   "ess.aliyuncs.com",
+			"cn-shenzhen":                 "ess.aliyuncs.com",
+			"cn-zhengzhou-nebula-1":       "ess.aliyuncs.com",
+			"rus-west-1-pop":              "ess.ap-northeast-1.aliyuncs.com",
+			"cn-shanghai-et15-b01":        "ess.aliyuncs.com",
+			"cn-hangzhou-bj-b01":          "ess.aliyuncs.com",
+			"cn-hangzhou-internal-test-1": "ess.aliyuncs.com",
+			"eu-west-1-oxs":               "ess.ap-northeast-1.aliyuncs.com",
+			"cn-zhangbei-na61-b01":        "ess.aliyuncs.com",
+			"cn-beijing-finance-1":        "ess.aliyuncs.com",
+			"cn-hangzhou-internal-test-3": "ess.aliyuncs.com",
+			"cn-shenzhen-finance-1":       "ess.aliyuncs.com",
+			"cn-hangzhou-internal-test-2": "ess.aliyuncs.com",
+			"cn-hangzhou-test-306":        "ess.aliyuncs.com",
+			"cn-shanghai-et2-b01":         "ess.aliyuncs.com",
+			"cn-hangzhou-finance":         "ess.aliyuncs.com",
+			"ap-southeast-1":              "ess.aliyuncs.com",
+			"cn-beijing-nu16-b01":         "ess.aliyuncs.com",
+			"cn-edge-1":                   "ess.aliyuncs.com",
+			"us-east-1":                   "ess.aliyuncs.com",
+			"cn-fujian":                   "ess.aliyuncs.com",
+			"ap-northeast-2-pop":          "ess.ap-northeast-1.aliyuncs.com",
+			"cn-shenzhen-inner":           "ess.aliyuncs.com",
+			"cn-zhangjiakou-na62-a01":     "ess.aliyuncs.com",
+			"cn-hangzhou":                 "ess.aliyuncs.com",
+		}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 1 - 1
services/ess/enter_standby.go

@@ -76,10 +76,10 @@ func (client *Client) EnterStandbyWithCallback(request *EnterStandbyRequest, cal
 // EnterStandbyRequest is the request struct for api EnterStandby
 type EnterStandbyRequest struct {
 	*requests.RpcRequest
-	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 }
 
 // EnterStandbyResponse is the response struct for api EnterStandby

+ 2 - 2
services/ess/execute_scaling_rule.go

@@ -77,13 +77,13 @@ func (client *Client) ExecuteScalingRuleWithCallback(request *ExecuteScalingRule
 type ExecuteScalingRuleRequest struct {
 	*requests.RpcRequest
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	ScalingRuleAri       string           `position:"Query" name:"ScalingRuleAri"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	BreachThreshold      requests.Float   `position:"Query" name:"BreachThreshold"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	MetricValue          requests.Float   `position:"Query" name:"MetricValue"`
+	ScalingRuleAri       string           `position:"Query" name:"ScalingRuleAri"`
 }
 
 // ExecuteScalingRuleResponse is the response struct for api ExecuteScalingRule

+ 1 - 1
services/ess/exit_standby.go

@@ -76,10 +76,10 @@ func (client *Client) ExitStandbyWithCallback(request *ExitStandbyRequest, callb
 // ExitStandbyRequest is the request struct for api ExitStandby
 type ExitStandbyRequest struct {
 	*requests.RpcRequest
-	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 }
 
 // ExitStandbyResponse is the response struct for api ExitStandby

+ 6 - 6
services/ess/modify_alarm.go

@@ -77,19 +77,19 @@ func (client *Client) ModifyAlarmWithCallback(request *ModifyAlarmRequest, callb
 type ModifyAlarmRequest struct {
 	*requests.RpcRequest
 	MetricType           string                  `position:"Query" name:"MetricType"`
-	Period               requests.Integer        `position:"Query" name:"Period"`
-	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
-	GroupId              requests.Integer        `position:"Query" name:"GroupId"`
 	Description          string                  `position:"Query" name:"Description"`
 	AlarmAction          *[]string               `position:"Query" name:"AlarmAction"  type:"Repeated"`
 	Threshold            requests.Float          `position:"Query" name:"Threshold"`
+	EvaluationCount      requests.Integer        `position:"Query" name:"EvaluationCount"`
+	MetricName           string                  `position:"Query" name:"MetricName"`
+	Dimension            *[]ModifyAlarmDimension `position:"Query" name:"Dimension"  type:"Repeated"`
+	Period               requests.Integer        `position:"Query" name:"Period"`
+	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
+	GroupId              requests.Integer        `position:"Query" name:"GroupId"`
 	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
 	AlarmTaskId          string                  `position:"Query" name:"AlarmTaskId"`
 	Name                 string                  `position:"Query" name:"Name"`
-	EvaluationCount      requests.Integer        `position:"Query" name:"EvaluationCount"`
-	MetricName           string                  `position:"Query" name:"MetricName"`
 	ComparisonOperator   string                  `position:"Query" name:"ComparisonOperator"`
-	Dimension            *[]ModifyAlarmDimension `position:"Query" name:"Dimension"  type:"Repeated"`
 	Statistics           string                  `position:"Query" name:"Statistics"`
 }
 

+ 0 - 108
services/ess/modify_alert_config.go

@@ -1,108 +0,0 @@
-package ess
-
-//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"
-)
-
-// ModifyAlertConfig invokes the ess.ModifyAlertConfig API synchronously
-// api document: https://help.aliyun.com/api/ess/modifyalertconfig.html
-func (client *Client) ModifyAlertConfig(request *ModifyAlertConfigRequest) (response *ModifyAlertConfigResponse, err error) {
-	response = CreateModifyAlertConfigResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-// ModifyAlertConfigWithChan invokes the ess.ModifyAlertConfig API asynchronously
-// api document: https://help.aliyun.com/api/ess/modifyalertconfig.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) ModifyAlertConfigWithChan(request *ModifyAlertConfigRequest) (<-chan *ModifyAlertConfigResponse, <-chan error) {
-	responseChan := make(chan *ModifyAlertConfigResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.ModifyAlertConfig(request)
-		if err != nil {
-			errChan <- err
-		} else {
-			responseChan <- response
-		}
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-// ModifyAlertConfigWithCallback invokes the ess.ModifyAlertConfig API asynchronously
-// api document: https://help.aliyun.com/api/ess/modifyalertconfig.html
-// asynchronous document: https://help.aliyun.com/document_detail/66220.html
-func (client *Client) ModifyAlertConfigWithCallback(request *ModifyAlertConfigRequest, callback func(response *ModifyAlertConfigResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *ModifyAlertConfigResponse
-		var err error
-		defer close(result)
-		response, err = client.ModifyAlertConfig(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-// ModifyAlertConfigRequest is the request struct for api ModifyAlertConfig
-type ModifyAlertConfigRequest struct {
-	*requests.RpcRequest
-	SuccessConfig        requests.Integer `position:"Query" name:"SuccessConfig"`
-	RejectConfig         requests.Integer `position:"Query" name:"RejectConfig"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	FailConfig           requests.Integer `position:"Query" name:"FailConfig"`
-}
-
-// ModifyAlertConfigResponse is the response struct for api ModifyAlertConfig
-type ModifyAlertConfigResponse struct {
-	*responses.BaseResponse
-	RequestId string `json:"RequestId" xml:"RequestId"`
-}
-
-// CreateModifyAlertConfigRequest creates a request to invoke ModifyAlertConfig API
-func CreateModifyAlertConfigRequest() (request *ModifyAlertConfigRequest) {
-	request = &ModifyAlertConfigRequest{
-		RpcRequest: &requests.RpcRequest{},
-	}
-	request.InitWithApiInfo("Ess", "2014-08-28", "ModifyAlertConfig", "ess", "openAPI")
-	return
-}
-
-// CreateModifyAlertConfigResponse creates a response to parse from ModifyAlertConfig response
-func CreateModifyAlertConfigResponse() (response *ModifyAlertConfigResponse) {
-	response = &ModifyAlertConfigResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 5 - 5
services/ess/modify_lifecycle_hook.go

@@ -77,16 +77,16 @@ func (client *Client) ModifyLifecycleHookWithCallback(request *ModifyLifecycleHo
 type ModifyLifecycleHookRequest struct {
 	*requests.RpcRequest
 	DefaultResult        string           `position:"Query" name:"DefaultResult"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	HeartbeatTimeout     requests.Integer `position:"Query" name:"HeartbeatTimeout"`
-	LifecycleHookId      string           `position:"Query" name:"LifecycleHookId"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	NotificationMetadata string           `position:"Query" name:"NotificationMetadata"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	LifecycleTransition  string           `position:"Query" name:"LifecycleTransition"`
 	LifecycleHookName    string           `position:"Query" name:"LifecycleHookName"`
 	NotificationArn      string           `position:"Query" name:"NotificationArn"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	LifecycleHookId      string           `position:"Query" name:"LifecycleHookId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	NotificationMetadata string           `position:"Query" name:"NotificationMetadata"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // ModifyLifecycleHookResponse is the response struct for api ModifyLifecycleHook

+ 2 - 2
services/ess/modify_notification_configuration.go

@@ -76,11 +76,11 @@ func (client *Client) ModifyNotificationConfigurationWithCallback(request *Modif
 // ModifyNotificationConfigurationRequest is the request struct for api ModifyNotificationConfiguration
 type ModifyNotificationConfigurationRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
 	NotificationArn      string           `position:"Query" name:"NotificationArn"`
-	NotificationType     *[]string        `position:"Query" name:"NotificationType"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	NotificationType     *[]string        `position:"Query" name:"NotificationType"  type:"Repeated"`
 }
 
 // ModifyNotificationConfigurationResponse is the response struct for api ModifyNotificationConfiguration

+ 46 - 44
services/ess/modify_scaling_configuration.go

@@ -76,41 +76,42 @@ func (client *Client) ModifyScalingConfigurationWithCallback(request *ModifyScal
 // ModifyScalingConfigurationRequest is the request struct for api ModifyScalingConfiguration
 type ModifyScalingConfigurationRequest struct {
 	*requests.RpcRequest
-	ImageId                  string                                      `position:"Query" name:"ImageId"`
-	Memory                   requests.Integer                            `position:"Query" name:"Memory"`
-	HpcClusterId             string                                      `position:"Query" name:"HpcClusterId"`
-	IoOptimized              string                                      `position:"Query" name:"IoOptimized"`
-	InstanceTypes            *[]string                                   `position:"Query" name:"InstanceTypes"  type:"Repeated"`
-	InternetMaxBandwidthOut  requests.Integer                            `position:"Query" name:"InternetMaxBandwidthOut"`
-	SecurityGroupId          string                                      `position:"Query" name:"SecurityGroupId"`
-	KeyPairName              string                                      `position:"Query" name:"KeyPairName"`
-	SpotPriceLimit           *[]ModifyScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
-	SystemDiskCategory       string                                      `position:"Query" name:"SystemDisk.Category"`
-	UserData                 string                                      `position:"Query" name:"UserData"`
-	ResourceGroupId          string                                      `position:"Query" name:"ResourceGroupId"`
-	HostName                 string                                      `position:"Query" name:"HostName"`
-	PasswordInherit          requests.Boolean                            `position:"Query" name:"PasswordInherit"`
-	ImageName                string                                      `position:"Query" name:"ImageName"`
-	InstanceDescription      string                                      `position:"Query" name:"InstanceDescription"`
-	Override                 requests.Boolean                            `position:"Query" name:"Override"`
-	DeploymentSetId          string                                      `position:"Query" name:"DeploymentSetId"`
-	ResourceOwnerAccount     string                                      `position:"Query" name:"ResourceOwnerAccount"`
-	OwnerAccount             string                                      `position:"Query" name:"OwnerAccount"`
-	Cpu                      requests.Integer                            `position:"Query" name:"Cpu"`
-	SystemDiskDiskName       string                                      `position:"Query" name:"SystemDisk.DiskName"`
-	RamRoleName              string                                      `position:"Query" name:"RamRoleName"`
-	OwnerId                  requests.Integer                            `position:"Query" name:"OwnerId"`
-	SecurityGroupIds         *[]string                                   `position:"Query" name:"SecurityGroupIds"  type:"Repeated"`
-	DataDisk                 *[]ModifyScalingConfigurationDataDisk       `position:"Query" name:"DataDisk"  type:"Repeated"`
-	ScalingConfigurationName string                                      `position:"Query" name:"ScalingConfigurationName"`
-	Tags                     string                                      `position:"Query" name:"Tags"`
-	ScalingConfigurationId   string                                      `position:"Query" name:"ScalingConfigurationId"`
-	SpotStrategy             string                                      `position:"Query" name:"SpotStrategy"`
-	InstanceName             string                                      `position:"Query" name:"InstanceName"`
-	LoadBalancerWeight       requests.Integer                            `position:"Query" name:"LoadBalancerWeight"`
-	SystemDiskSize           requests.Integer                            `position:"Query" name:"SystemDisk.Size"`
-	InternetChargeType       string                                      `position:"Query" name:"InternetChargeType"`
-	SystemDiskDescription    string                                      `position:"Query" name:"SystemDisk.Description"`
+	HpcClusterId                   string                                      `position:"Query" name:"HpcClusterId"`
+	KeyPairName                    string                                      `position:"Query" name:"KeyPairName"`
+	SpotPriceLimit                 *[]ModifyScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
+	ResourceGroupId                string                                      `position:"Query" name:"ResourceGroupId"`
+	HostName                       string                                      `position:"Query" name:"HostName"`
+	InstanceDescription            string                                      `position:"Query" name:"InstanceDescription"`
+	SystemDiskAutoSnapshotPolicyId string                                      `position:"Query" name:"SystemDisk.AutoSnapshotPolicyId"`
+	Cpu                            requests.Integer                            `position:"Query" name:"Cpu"`
+	OwnerId                        requests.Integer                            `position:"Query" name:"OwnerId"`
+	ScalingConfigurationName       string                                      `position:"Query" name:"ScalingConfigurationName"`
+	Tags                           string                                      `position:"Query" name:"Tags"`
+	ScalingConfigurationId         string                                      `position:"Query" name:"ScalingConfigurationId"`
+	SpotStrategy                   string                                      `position:"Query" name:"SpotStrategy"`
+	InstanceName                   string                                      `position:"Query" name:"InstanceName"`
+	InternetChargeType             string                                      `position:"Query" name:"InternetChargeType"`
+	ImageId                        string                                      `position:"Query" name:"ImageId"`
+	Memory                         requests.Integer                            `position:"Query" name:"Memory"`
+	IoOptimized                    string                                      `position:"Query" name:"IoOptimized"`
+	InstanceTypes                  *[]string                                   `position:"Query" name:"InstanceTypes"  type:"Repeated"`
+	InternetMaxBandwidthOut        requests.Integer                            `position:"Query" name:"InternetMaxBandwidthOut"`
+	SecurityGroupId                string                                      `position:"Query" name:"SecurityGroupId"`
+	SystemDiskCategory             string                                      `position:"Query" name:"SystemDisk.Category"`
+	UserData                       string                                      `position:"Query" name:"UserData"`
+	PasswordInherit                requests.Boolean                            `position:"Query" name:"PasswordInherit"`
+	ImageName                      string                                      `position:"Query" name:"ImageName"`
+	Override                       requests.Boolean                            `position:"Query" name:"Override"`
+	DeploymentSetId                string                                      `position:"Query" name:"DeploymentSetId"`
+	ResourceOwnerAccount           string                                      `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount                   string                                      `position:"Query" name:"OwnerAccount"`
+	SystemDiskDiskName             string                                      `position:"Query" name:"SystemDisk.DiskName"`
+	RamRoleName                    string                                      `position:"Query" name:"RamRoleName"`
+	SecurityGroupIds               *[]string                                   `position:"Query" name:"SecurityGroupIds"  type:"Repeated"`
+	DataDisk                       *[]ModifyScalingConfigurationDataDisk       `position:"Query" name:"DataDisk"  type:"Repeated"`
+	LoadBalancerWeight             requests.Integer                            `position:"Query" name:"LoadBalancerWeight"`
+	SystemDiskSize                 requests.Integer                            `position:"Query" name:"SystemDisk.Size"`
+	SystemDiskDescription          string                                      `position:"Query" name:"SystemDisk.Description"`
 }
 
 // ModifyScalingConfigurationSpotPriceLimit is a repeated param struct in ModifyScalingConfigurationRequest
@@ -121,15 +122,16 @@ type ModifyScalingConfigurationSpotPriceLimit struct {
 
 // ModifyScalingConfigurationDataDisk is a repeated param struct in ModifyScalingConfigurationRequest
 type ModifyScalingConfigurationDataDisk struct {
-	DiskName           string `name:"DiskName"`
-	SnapshotId         string `name:"SnapshotId"`
-	Size               string `name:"Size"`
-	Encrypted          string `name:"Encrypted"`
-	Description        string `name:"Description"`
-	Category           string `name:"Category"`
-	KMSKeyId           string `name:"KMSKeyId"`
-	Device             string `name:"Device"`
-	DeleteWithInstance string `name:"DeleteWithInstance"`
+	DiskName             string `name:"DiskName"`
+	SnapshotId           string `name:"SnapshotId"`
+	Size                 string `name:"Size"`
+	Encrypted            string `name:"Encrypted"`
+	AutoSnapshotPolicyId string `name:"AutoSnapshotPolicyId"`
+	Description          string `name:"Description"`
+	Category             string `name:"Category"`
+	KMSKeyId             string `name:"KMSKeyId"`
+	Device               string `name:"Device"`
+	DeleteWithInstance   string `name:"DeleteWithInstance"`
 }
 
 // ModifyScalingConfigurationResponse is the response struct for api ModifyScalingConfiguration

+ 11 - 9
services/ess/modify_scaling_group.go

@@ -77,25 +77,27 @@ func (client *Client) ModifyScalingGroupWithCallback(request *ModifyScalingGroup
 type ModifyScalingGroupRequest struct {
 	*requests.RpcRequest
 	ResourceOwnerId                     requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ScalingGroupId                      string           `position:"Query" name:"ScalingGroupId"`
+	VSwitchIds                          *[]string        `position:"Query" name:"VSwitchIds"  type:"Repeated"`
+	ActiveScalingConfigurationId        string           `position:"Query" name:"ActiveScalingConfigurationId"`
+	OnDemandBaseCapacity                requests.Integer `position:"Query" name:"OnDemandBaseCapacity"`
+	OnDemandPercentageAboveBaseCapacity requests.Integer `position:"Query" name:"OnDemandPercentageAboveBaseCapacity"`
+	SpotInstanceRemedy                  requests.Boolean `position:"Query" name:"SpotInstanceRemedy"`
+	DefaultCooldown                     requests.Integer `position:"Query" name:"DefaultCooldown"`
+	RemovalPolicy1                      string           `position:"Query" name:"RemovalPolicy.1"`
+	RemovalPolicy2                      string           `position:"Query" name:"RemovalPolicy.2"`
 	HealthCheckType                     string           `position:"Query" name:"HealthCheckType"`
 	LaunchTemplateId                    string           `position:"Query" name:"LaunchTemplateId"`
+	DesiredCapacity                     requests.Integer `position:"Query" name:"DesiredCapacity"`
 	ResourceOwnerAccount                string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupName                    string           `position:"Query" name:"ScalingGroupName"`
-	ScalingGroupId                      string           `position:"Query" name:"ScalingGroupId"`
-	VSwitchIds                          *[]string        `position:"Query" name:"VSwitchIds"  type:"Repeated"`
 	OwnerAccount                        string           `position:"Query" name:"OwnerAccount"`
 	SpotInstancePools                   requests.Integer `position:"Query" name:"SpotInstancePools"`
-	ActiveScalingConfigurationId        string           `position:"Query" name:"ActiveScalingConfigurationId"`
 	MinSize                             requests.Integer `position:"Query" name:"MinSize"`
+	GroupDeletionProtection             requests.Boolean `position:"Query" name:"GroupDeletionProtection"`
 	OwnerId                             requests.Integer `position:"Query" name:"OwnerId"`
 	LaunchTemplateVersion               string           `position:"Query" name:"LaunchTemplateVersion"`
-	OnDemandBaseCapacity                requests.Integer `position:"Query" name:"OnDemandBaseCapacity"`
-	OnDemandPercentageAboveBaseCapacity requests.Integer `position:"Query" name:"OnDemandPercentageAboveBaseCapacity"`
-	SpotInstanceRemedy                  requests.Boolean `position:"Query" name:"SpotInstanceRemedy"`
 	MaxSize                             requests.Integer `position:"Query" name:"MaxSize"`
-	DefaultCooldown                     requests.Integer `position:"Query" name:"DefaultCooldown"`
-	RemovalPolicy1                      string           `position:"Query" name:"RemovalPolicy.1"`
-	RemovalPolicy2                      string           `position:"Query" name:"RemovalPolicy.2"`
 }
 
 // ModifyScalingGroupResponse is the response struct for api ModifyScalingGroup

+ 9 - 9
services/ess/modify_scaling_rule.go

@@ -77,25 +77,25 @@ func (client *Client) ModifyScalingRuleWithCallback(request *ModifyScalingRuleRe
 type ModifyScalingRuleRequest struct {
 	*requests.RpcRequest
 	ResourceOwnerId          requests.Integer                   `position:"Query" name:"ResourceOwnerId"`
+	StepAdjustment           *[]ModifyScalingRuleStepAdjustment `position:"Query" name:"StepAdjustment"  type:"Repeated"`
+	DisableScaleIn           requests.Boolean                   `position:"Query" name:"DisableScaleIn"`
+	ScalingRuleId            string                             `position:"Query" name:"ScalingRuleId"`
+	InitialMaxSize           requests.Integer                   `position:"Query" name:"InitialMaxSize"`
+	ScalingRuleName          string                             `position:"Query" name:"ScalingRuleName"`
+	Cooldown                 requests.Integer                   `position:"Query" name:"Cooldown"`
+	PredictiveValueBehavior  string                             `position:"Query" name:"PredictiveValueBehavior"`
+	MetricName               string                             `position:"Query" name:"MetricName"`
+	PredictiveScalingMode    string                             `position:"Query" name:"PredictiveScalingMode"`
 	ResourceOwnerAccount     string                             `position:"Query" name:"ResourceOwnerAccount"`
 	AdjustmentValue          requests.Integer                   `position:"Query" name:"AdjustmentValue"`
-	StepAdjustment           *[]ModifyScalingRuleStepAdjustment `position:"Query" name:"StepAdjustment"  type:"Repeated"`
 	EstimatedInstanceWarmup  requests.Integer                   `position:"Query" name:"EstimatedInstanceWarmup"`
 	OwnerAccount             string                             `position:"Query" name:"OwnerAccount"`
 	PredictiveTaskBufferTime requests.Integer                   `position:"Query" name:"PredictiveTaskBufferTime"`
 	AdjustmentType           string                             `position:"Query" name:"AdjustmentType"`
-	DisableScaleIn           requests.Boolean                   `position:"Query" name:"DisableScaleIn"`
 	OwnerId                  requests.Integer                   `position:"Query" name:"OwnerId"`
-	ScalingRuleId            string                             `position:"Query" name:"ScalingRuleId"`
-	InitialMaxSize           requests.Integer                   `position:"Query" name:"InitialMaxSize"`
 	PredictiveValueBuffer    requests.Integer                   `position:"Query" name:"PredictiveValueBuffer"`
-	ScalingRuleName          string                             `position:"Query" name:"ScalingRuleName"`
-	Cooldown                 requests.Integer                   `position:"Query" name:"Cooldown"`
 	MinAdjustmentMagnitude   requests.Integer                   `position:"Query" name:"MinAdjustmentMagnitude"`
-	PredictiveValueBehavior  string                             `position:"Query" name:"PredictiveValueBehavior"`
 	TargetValue              requests.Float                     `position:"Query" name:"TargetValue"`
-	MetricName               string                             `position:"Query" name:"MetricName"`
-	PredictiveScalingMode    string                             `position:"Query" name:"PredictiveScalingMode"`
 }
 
 // ModifyScalingRuleStepAdjustment is a repeated param struct in ModifyScalingRuleRequest

+ 3 - 3
services/ess/modify_scheduled_task.go

@@ -76,17 +76,17 @@ func (client *Client) ModifyScheduledTaskWithCallback(request *ModifyScheduledTa
 // ModifyScheduledTaskRequest is the request struct for api ModifyScheduledTask
 type ModifyScheduledTaskRequest struct {
 	*requests.RpcRequest
-	LaunchTime           string           `position:"Query" name:"LaunchTime"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	ScheduledAction      string           `position:"Query" name:"ScheduledAction"`
 	MaxValue             requests.Integer `position:"Query" name:"MaxValue"`
+	Description          string           `position:"Query" name:"Description"`
+	RecurrenceEndTime    string           `position:"Query" name:"RecurrenceEndTime"`
+	LaunchTime           string           `position:"Query" name:"LaunchTime"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	Description          string           `position:"Query" name:"Description"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	RecurrenceValue      string           `position:"Query" name:"RecurrenceValue"`
 	LaunchExpirationTime requests.Integer `position:"Query" name:"LaunchExpirationTime"`
-	RecurrenceEndTime    string           `position:"Query" name:"RecurrenceEndTime"`
 	MinValue             requests.Integer `position:"Query" name:"MinValue"`
 	ScheduledTaskName    string           `position:"Query" name:"ScheduledTaskName"`
 	TaskEnabled          requests.Boolean `position:"Query" name:"TaskEnabled"`

+ 1 - 1
services/ess/record_lifecycle_action_heartbeat.go

@@ -77,8 +77,8 @@ func (client *Client) RecordLifecycleActionHeartbeatWithCallback(request *Record
 type RecordLifecycleActionHeartbeatRequest struct {
 	*requests.RpcRequest
 	LifecycleActionToken string           `position:"Query" name:"lifecycleActionToken"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	HeartbeatTimeout     requests.Integer `position:"Query" name:"heartbeatTimeout"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	LifecycleHookId      string           `position:"Query" name:"lifecycleHookId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`

+ 8 - 7
services/ess/remove_instances.go

@@ -76,13 +76,14 @@ func (client *Client) RemoveInstancesWithCallback(request *RemoveInstancesReques
 // RemoveInstancesRequest is the request struct for api RemoveInstances
 type RemoveInstancesRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
-	RemovePolicy         string           `position:"Query" name:"RemovePolicy"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceOwnerId         requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ScalingGroupId          string           `position:"Query" name:"ScalingGroupId"`
+	DecreaseDesiredCapacity requests.Boolean `position:"Query" name:"DecreaseDesiredCapacity"`
+	RemovePolicy            string           `position:"Query" name:"RemovePolicy"`
+	ResourceOwnerAccount    string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount            string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                 requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId              *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 }
 
 // RemoveInstancesResponse is the response struct for api RemoveInstances

+ 106 - 0
services/ess/resume_processes.go

@@ -0,0 +1,106 @@
+package ess
+
+//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"
+)
+
+// ResumeProcesses invokes the ess.ResumeProcesses API synchronously
+// api document: https://help.aliyun.com/api/ess/resumeprocesses.html
+func (client *Client) ResumeProcesses(request *ResumeProcessesRequest) (response *ResumeProcessesResponse, err error) {
+	response = CreateResumeProcessesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ResumeProcessesWithChan invokes the ess.ResumeProcesses API asynchronously
+// api document: https://help.aliyun.com/api/ess/resumeprocesses.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResumeProcessesWithChan(request *ResumeProcessesRequest) (<-chan *ResumeProcessesResponse, <-chan error) {
+	responseChan := make(chan *ResumeProcessesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ResumeProcesses(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ResumeProcessesWithCallback invokes the ess.ResumeProcesses API asynchronously
+// api document: https://help.aliyun.com/api/ess/resumeprocesses.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResumeProcessesWithCallback(request *ResumeProcessesRequest, callback func(response *ResumeProcessesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ResumeProcessesResponse
+		var err error
+		defer close(result)
+		response, err = client.ResumeProcesses(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ResumeProcessesRequest is the request struct for api ResumeProcesses
+type ResumeProcessesRequest struct {
+	*requests.RpcRequest
+	Process              *[]string        `position:"Query" name:"Process"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// ResumeProcessesResponse is the response struct for api ResumeProcesses
+type ResumeProcessesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateResumeProcessesRequest creates a request to invoke ResumeProcesses API
+func CreateResumeProcessesRequest() (request *ResumeProcessesRequest) {
+	request = &ResumeProcessesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ess", "2014-08-28", "ResumeProcesses", "ess", "openAPI")
+	return
+}
+
+// CreateResumeProcessesResponse creates a response to parse from ResumeProcesses response
+func CreateResumeProcessesResponse() (response *ResumeProcessesResponse) {
+	response = &ResumeProcessesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ess/set_instance_health.go

@@ -0,0 +1,106 @@
+package ess
+
+//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"
+)
+
+// SetInstanceHealth invokes the ess.SetInstanceHealth API synchronously
+// api document: https://help.aliyun.com/api/ess/setinstancehealth.html
+func (client *Client) SetInstanceHealth(request *SetInstanceHealthRequest) (response *SetInstanceHealthResponse, err error) {
+	response = CreateSetInstanceHealthResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SetInstanceHealthWithChan invokes the ess.SetInstanceHealth API asynchronously
+// api document: https://help.aliyun.com/api/ess/setinstancehealth.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SetInstanceHealthWithChan(request *SetInstanceHealthRequest) (<-chan *SetInstanceHealthResponse, <-chan error) {
+	responseChan := make(chan *SetInstanceHealthResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SetInstanceHealth(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SetInstanceHealthWithCallback invokes the ess.SetInstanceHealth API asynchronously
+// api document: https://help.aliyun.com/api/ess/setinstancehealth.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SetInstanceHealthWithCallback(request *SetInstanceHealthRequest, callback func(response *SetInstanceHealthResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SetInstanceHealthResponse
+		var err error
+		defer close(result)
+		response, err = client.SetInstanceHealth(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SetInstanceHealthRequest is the request struct for api SetInstanceHealth
+type SetInstanceHealthRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId           string           `position:"Query" name:"InstanceId"`
+	HealthStatus         string           `position:"Query" name:"HealthStatus"`
+}
+
+// SetInstanceHealthResponse is the response struct for api SetInstanceHealth
+type SetInstanceHealthResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateSetInstanceHealthRequest creates a request to invoke SetInstanceHealth API
+func CreateSetInstanceHealthRequest() (request *SetInstanceHealthRequest) {
+	request = &SetInstanceHealthRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ess", "2014-08-28", "SetInstanceHealth", "ess", "openAPI")
+	return
+}
+
+// CreateSetInstanceHealthResponse creates a response to parse from SetInstanceHealth response
+func CreateSetInstanceHealthResponse() (response *SetInstanceHealthResponse) {
+	response = &SetInstanceHealthResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 2 - 2
services/ess/set_instances_protection.go

@@ -76,10 +76,10 @@ func (client *Client) SetInstancesProtectionWithCallback(request *SetInstancesPr
 // SetInstancesProtectionRequest is the request struct for api SetInstancesProtection
 type SetInstancesProtectionRequest struct {
 	*requests.RpcRequest
-	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	InstanceId           *[]string        `position:"Query" name:"InstanceId"  type:"Repeated"`
 	ProtectedFromScaleIn requests.Boolean `position:"Query" name:"ProtectedFromScaleIn"`
 }
 

+ 0 - 21
services/ess/struct_capacity_history_items.go

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

+ 0 - 25
services/ess/struct_capacity_history_model.go

@@ -1,25 +0,0 @@
-package ess
-
-//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.
-
-// CapacityHistoryModel is a nested struct in ess response
-type CapacityHistoryModel struct {
-	ScalingGroupId      string `json:"ScalingGroupId" xml:"ScalingGroupId"`
-	TotalCapacity       int    `json:"TotalCapacity" xml:"TotalCapacity"`
-	AttachedCapacity    int    `json:"AttachedCapacity" xml:"AttachedCapacity"`
-	AutoCreatedCapacity int    `json:"AutoCreatedCapacity" xml:"AutoCreatedCapacity"`
-	Timestamp           string `json:"Timestamp" xml:"Timestamp"`
-}

+ 10 - 9
services/ess/struct_data_disk.go

@@ -17,13 +17,14 @@ package ess
 
 // DataDisk is a nested struct in ess response
 type DataDisk struct {
-	Size               int    `json:"Size" xml:"Size"`
-	Category           string `json:"Category" xml:"Category"`
-	SnapshotId         string `json:"SnapshotId" xml:"SnapshotId"`
-	Device             string `json:"Device" xml:"Device"`
-	DeleteWithInstance bool   `json:"DeleteWithInstance" xml:"DeleteWithInstance"`
-	Encrypted          string `json:"Encrypted" xml:"Encrypted"`
-	KMSKeyId           string `json:"KMSKeyId" xml:"KMSKeyId"`
-	DiskName           string `json:"DiskName" xml:"DiskName"`
-	Description        string `json:"Description" xml:"Description"`
+	Size                 int    `json:"Size" xml:"Size"`
+	Category             string `json:"Category" xml:"Category"`
+	SnapshotId           string `json:"SnapshotId" xml:"SnapshotId"`
+	Device               string `json:"Device" xml:"Device"`
+	DeleteWithInstance   bool   `json:"DeleteWithInstance" xml:"DeleteWithInstance"`
+	Encrypted            string `json:"Encrypted" xml:"Encrypted"`
+	KMSKeyId             string `json:"KMSKeyId" xml:"KMSKeyId"`
+	DiskName             string `json:"DiskName" xml:"DiskName"`
+	Description          string `json:"Description" xml:"Description"`
+	AutoSnapshotPolicyId string `json:"AutoSnapshotPolicyId" xml:"AutoSnapshotPolicyId"`
 }

+ 39 - 38
services/ess/struct_scaling_configuration.go

@@ -17,42 +17,43 @@ package ess
 
 // ScalingConfiguration is a nested struct in ess response
 type ScalingConfiguration struct {
-	ScalingConfigurationId      string           `json:"ScalingConfigurationId" xml:"ScalingConfigurationId"`
-	ScalingConfigurationName    string           `json:"ScalingConfigurationName" xml:"ScalingConfigurationName"`
-	ScalingGroupId              string           `json:"ScalingGroupId" xml:"ScalingGroupId"`
-	InstanceName                string           `json:"InstanceName" xml:"InstanceName"`
-	ImageId                     string           `json:"ImageId" xml:"ImageId"`
-	ImageName                   string           `json:"ImageName" xml:"ImageName"`
-	HostName                    string           `json:"HostName" xml:"HostName"`
-	InstanceType                string           `json:"InstanceType" xml:"InstanceType"`
-	Cpu                         int              `json:"Cpu" xml:"Cpu"`
-	Memory                      int              `json:"Memory" xml:"Memory"`
-	InstanceGeneration          string           `json:"InstanceGeneration" xml:"InstanceGeneration"`
-	SecurityGroupId             string           `json:"SecurityGroupId" xml:"SecurityGroupId"`
-	IoOptimized                 string           `json:"IoOptimized" xml:"IoOptimized"`
-	InternetChargeType          string           `json:"InternetChargeType" xml:"InternetChargeType"`
-	InternetMaxBandwidthIn      int              `json:"InternetMaxBandwidthIn" xml:"InternetMaxBandwidthIn"`
-	InternetMaxBandwidthOut     int              `json:"InternetMaxBandwidthOut" xml:"InternetMaxBandwidthOut"`
-	SystemDiskCategory          string           `json:"SystemDiskCategory" xml:"SystemDiskCategory"`
-	SystemDiskSize              int              `json:"SystemDiskSize" xml:"SystemDiskSize"`
-	SystemDiskName              string           `json:"SystemDiskName" xml:"SystemDiskName"`
-	SystemDiskDescription       string           `json:"SystemDiskDescription" xml:"SystemDiskDescription"`
-	LifecycleState              string           `json:"LifecycleState" xml:"LifecycleState"`
-	CreationTime                string           `json:"CreationTime" xml:"CreationTime"`
-	LoadBalancerWeight          int              `json:"LoadBalancerWeight" xml:"LoadBalancerWeight"`
-	UserData                    string           `json:"UserData" xml:"UserData"`
-	KeyPairName                 string           `json:"KeyPairName" xml:"KeyPairName"`
-	RamRoleName                 string           `json:"RamRoleName" xml:"RamRoleName"`
-	DeploymentSetId             string           `json:"DeploymentSetId" xml:"DeploymentSetId"`
-	SecurityEnhancementStrategy string           `json:"SecurityEnhancementStrategy" xml:"SecurityEnhancementStrategy"`
-	SpotStrategy                string           `json:"SpotStrategy" xml:"SpotStrategy"`
-	PasswordInherit             bool             `json:"PasswordInherit" xml:"PasswordInherit"`
-	ResourceGroupId             string           `json:"ResourceGroupId" xml:"ResourceGroupId"`
-	HpcClusterId                string           `json:"HpcClusterId" xml:"HpcClusterId"`
-	InstanceDescription         string           `json:"InstanceDescription" xml:"InstanceDescription"`
-	InstanceTypes               InstanceTypes    `json:"InstanceTypes" xml:"InstanceTypes"`
-	SecurityGroupIds            SecurityGroupIds `json:"SecurityGroupIds" xml:"SecurityGroupIds"`
-	DataDisks                   DataDisks        `json:"DataDisks" xml:"DataDisks"`
-	Tags                        Tags             `json:"Tags" xml:"Tags"`
-	SpotPriceLimit              SpotPriceLimit   `json:"SpotPriceLimit" xml:"SpotPriceLimit"`
+	ScalingConfigurationId         string           `json:"ScalingConfigurationId" xml:"ScalingConfigurationId"`
+	ScalingConfigurationName       string           `json:"ScalingConfigurationName" xml:"ScalingConfigurationName"`
+	ScalingGroupId                 string           `json:"ScalingGroupId" xml:"ScalingGroupId"`
+	InstanceName                   string           `json:"InstanceName" xml:"InstanceName"`
+	ImageId                        string           `json:"ImageId" xml:"ImageId"`
+	ImageName                      string           `json:"ImageName" xml:"ImageName"`
+	HostName                       string           `json:"HostName" xml:"HostName"`
+	InstanceType                   string           `json:"InstanceType" xml:"InstanceType"`
+	Cpu                            int              `json:"Cpu" xml:"Cpu"`
+	Memory                         int              `json:"Memory" xml:"Memory"`
+	InstanceGeneration             string           `json:"InstanceGeneration" xml:"InstanceGeneration"`
+	SecurityGroupId                string           `json:"SecurityGroupId" xml:"SecurityGroupId"`
+	IoOptimized                    string           `json:"IoOptimized" xml:"IoOptimized"`
+	InternetChargeType             string           `json:"InternetChargeType" xml:"InternetChargeType"`
+	InternetMaxBandwidthIn         int              `json:"InternetMaxBandwidthIn" xml:"InternetMaxBandwidthIn"`
+	InternetMaxBandwidthOut        int              `json:"InternetMaxBandwidthOut" xml:"InternetMaxBandwidthOut"`
+	SystemDiskCategory             string           `json:"SystemDiskCategory" xml:"SystemDiskCategory"`
+	SystemDiskSize                 int              `json:"SystemDiskSize" xml:"SystemDiskSize"`
+	SystemDiskName                 string           `json:"SystemDiskName" xml:"SystemDiskName"`
+	SystemDiskDescription          string           `json:"SystemDiskDescription" xml:"SystemDiskDescription"`
+	SystemDiskAutoSnapshotPolicyId string           `json:"SystemDiskAutoSnapshotPolicyId" xml:"SystemDiskAutoSnapshotPolicyId"`
+	LifecycleState                 string           `json:"LifecycleState" xml:"LifecycleState"`
+	CreationTime                   string           `json:"CreationTime" xml:"CreationTime"`
+	LoadBalancerWeight             int              `json:"LoadBalancerWeight" xml:"LoadBalancerWeight"`
+	UserData                       string           `json:"UserData" xml:"UserData"`
+	KeyPairName                    string           `json:"KeyPairName" xml:"KeyPairName"`
+	RamRoleName                    string           `json:"RamRoleName" xml:"RamRoleName"`
+	DeploymentSetId                string           `json:"DeploymentSetId" xml:"DeploymentSetId"`
+	SecurityEnhancementStrategy    string           `json:"SecurityEnhancementStrategy" xml:"SecurityEnhancementStrategy"`
+	SpotStrategy                   string           `json:"SpotStrategy" xml:"SpotStrategy"`
+	PasswordInherit                bool             `json:"PasswordInherit" xml:"PasswordInherit"`
+	ResourceGroupId                string           `json:"ResourceGroupId" xml:"ResourceGroupId"`
+	HpcClusterId                   string           `json:"HpcClusterId" xml:"HpcClusterId"`
+	InstanceDescription            string           `json:"InstanceDescription" xml:"InstanceDescription"`
+	InstanceTypes                  InstanceTypes    `json:"InstanceTypes" xml:"InstanceTypes"`
+	SecurityGroupIds               SecurityGroupIds `json:"SecurityGroupIds" xml:"SecurityGroupIds"`
+	DataDisks                      DataDisks        `json:"DataDisks" xml:"DataDisks"`
+	Tags                           Tags             `json:"Tags" xml:"Tags"`
+	SpotPriceLimit                 SpotPriceLimit   `json:"SpotPriceLimit" xml:"SpotPriceLimit"`
 }

+ 38 - 35
services/ess/struct_scaling_group.go

@@ -17,39 +17,42 @@ package ess
 
 // ScalingGroup is a nested struct in ess response
 type ScalingGroup struct {
-	DefaultCooldown                     int             `json:"DefaultCooldown" xml:"DefaultCooldown"`
-	MaxSize                             int             `json:"MaxSize" xml:"MaxSize"`
-	PendingWaitCapacity                 int             `json:"PendingWaitCapacity" xml:"PendingWaitCapacity"`
-	RemovingWaitCapacity                int             `json:"RemovingWaitCapacity" xml:"RemovingWaitCapacity"`
-	PendingCapacity                     int             `json:"PendingCapacity" xml:"PendingCapacity"`
-	RemovingCapacity                    int             `json:"RemovingCapacity" xml:"RemovingCapacity"`
-	ScalingGroupName                    string          `json:"ScalingGroupName" xml:"ScalingGroupName"`
-	ActiveCapacity                      int             `json:"ActiveCapacity" xml:"ActiveCapacity"`
-	StandbyCapacity                     int             `json:"StandbyCapacity" xml:"StandbyCapacity"`
-	ProtectedCapacity                   int             `json:"ProtectedCapacity" xml:"ProtectedCapacity"`
-	ActiveScalingConfigurationId        string          `json:"ActiveScalingConfigurationId" xml:"ActiveScalingConfigurationId"`
-	LaunchTemplateId                    string          `json:"LaunchTemplateId" xml:"LaunchTemplateId"`
-	LaunchTemplateVersion               string          `json:"LaunchTemplateVersion" xml:"LaunchTemplateVersion"`
-	ScalingGroupId                      string          `json:"ScalingGroupId" xml:"ScalingGroupId"`
-	RegionId                            string          `json:"RegionId" xml:"RegionId"`
-	TotalCapacity                       int             `json:"TotalCapacity" xml:"TotalCapacity"`
-	MinSize                             int             `json:"MinSize" xml:"MinSize"`
-	LifecycleState                      string          `json:"LifecycleState" xml:"LifecycleState"`
-	CreationTime                        string          `json:"CreationTime" xml:"CreationTime"`
-	ModificationTime                    string          `json:"ModificationTime" xml:"ModificationTime"`
-	VpcId                               string          `json:"VpcId" xml:"VpcId"`
-	VSwitchId                           string          `json:"VSwitchId" xml:"VSwitchId"`
-	MultiAZPolicy                       string          `json:"MultiAZPolicy" xml:"MultiAZPolicy"`
-	HealthCheckType                     string          `json:"HealthCheckType" xml:"HealthCheckType"`
-	ScalingPolicy                       string          `json:"ScalingPolicy" xml:"ScalingPolicy"`
-	StoppedCapacity                     int             `json:"StoppedCapacity" xml:"StoppedCapacity"`
-	OnDemandBaseCapacity                int             `json:"OnDemandBaseCapacity" xml:"OnDemandBaseCapacity"`
-	OnDemandPercentageAboveBaseCapacity int             `json:"OnDemandPercentageAboveBaseCapacity" xml:"OnDemandPercentageAboveBaseCapacity"`
-	SpotInstanceRemedy                  bool            `json:"SpotInstanceRemedy" xml:"SpotInstanceRemedy"`
-	SpotInstancePools                   int             `json:"SpotInstancePools" xml:"SpotInstancePools"`
-	VSwitchIds                          VSwitchIds      `json:"VSwitchIds" xml:"VSwitchIds"`
-	RemovalPolicies                     RemovalPolicies `json:"RemovalPolicies" xml:"RemovalPolicies"`
-	DBInstanceIds                       DBInstanceIds   `json:"DBInstanceIds" xml:"DBInstanceIds"`
-	LoadBalancerIds                     LoadBalancerIds `json:"LoadBalancerIds" xml:"LoadBalancerIds"`
-	VServerGroups                       VServerGroups   `json:"VServerGroups" xml:"VServerGroups"`
+	DefaultCooldown                     int                `json:"DefaultCooldown" xml:"DefaultCooldown"`
+	MaxSize                             int                `json:"MaxSize" xml:"MaxSize"`
+	PendingWaitCapacity                 int                `json:"PendingWaitCapacity" xml:"PendingWaitCapacity"`
+	RemovingWaitCapacity                int                `json:"RemovingWaitCapacity" xml:"RemovingWaitCapacity"`
+	PendingCapacity                     int                `json:"PendingCapacity" xml:"PendingCapacity"`
+	RemovingCapacity                    int                `json:"RemovingCapacity" xml:"RemovingCapacity"`
+	ScalingGroupName                    string             `json:"ScalingGroupName" xml:"ScalingGroupName"`
+	ActiveCapacity                      int                `json:"ActiveCapacity" xml:"ActiveCapacity"`
+	StandbyCapacity                     int                `json:"StandbyCapacity" xml:"StandbyCapacity"`
+	ProtectedCapacity                   int                `json:"ProtectedCapacity" xml:"ProtectedCapacity"`
+	ActiveScalingConfigurationId        string             `json:"ActiveScalingConfigurationId" xml:"ActiveScalingConfigurationId"`
+	LaunchTemplateId                    string             `json:"LaunchTemplateId" xml:"LaunchTemplateId"`
+	LaunchTemplateVersion               string             `json:"LaunchTemplateVersion" xml:"LaunchTemplateVersion"`
+	ScalingGroupId                      string             `json:"ScalingGroupId" xml:"ScalingGroupId"`
+	RegionId                            string             `json:"RegionId" xml:"RegionId"`
+	TotalCapacity                       int                `json:"TotalCapacity" xml:"TotalCapacity"`
+	MinSize                             int                `json:"MinSize" xml:"MinSize"`
+	LifecycleState                      string             `json:"LifecycleState" xml:"LifecycleState"`
+	CreationTime                        string             `json:"CreationTime" xml:"CreationTime"`
+	ModificationTime                    string             `json:"ModificationTime" xml:"ModificationTime"`
+	VpcId                               string             `json:"VpcId" xml:"VpcId"`
+	VSwitchId                           string             `json:"VSwitchId" xml:"VSwitchId"`
+	MultiAZPolicy                       string             `json:"MultiAZPolicy" xml:"MultiAZPolicy"`
+	HealthCheckType                     string             `json:"HealthCheckType" xml:"HealthCheckType"`
+	ScalingPolicy                       string             `json:"ScalingPolicy" xml:"ScalingPolicy"`
+	StoppedCapacity                     int                `json:"StoppedCapacity" xml:"StoppedCapacity"`
+	OnDemandBaseCapacity                int                `json:"OnDemandBaseCapacity" xml:"OnDemandBaseCapacity"`
+	OnDemandPercentageAboveBaseCapacity int                `json:"OnDemandPercentageAboveBaseCapacity" xml:"OnDemandPercentageAboveBaseCapacity"`
+	SpotInstanceRemedy                  bool               `json:"SpotInstanceRemedy" xml:"SpotInstanceRemedy"`
+	SpotInstancePools                   int                `json:"SpotInstancePools" xml:"SpotInstancePools"`
+	DesiredCapacity                     int                `json:"DesiredCapacity" xml:"DesiredCapacity"`
+	GroupDeletionProtection             bool               `json:"GroupDeletionProtection" xml:"GroupDeletionProtection"`
+	VSwitchIds                          VSwitchIds         `json:"VSwitchIds" xml:"VSwitchIds"`
+	RemovalPolicies                     RemovalPolicies    `json:"RemovalPolicies" xml:"RemovalPolicies"`
+	DBInstanceIds                       DBInstanceIds      `json:"DBInstanceIds" xml:"DBInstanceIds"`
+	LoadBalancerIds                     LoadBalancerIds    `json:"LoadBalancerIds" xml:"LoadBalancerIds"`
+	SuspendedProcesses                  SuspendedProcesses `json:"SuspendedProcesses" xml:"SuspendedProcesses"`
+	VServerGroups                       VServerGroups      `json:"VServerGroups" xml:"VServerGroups"`
 }

+ 3 - 3
services/ess/struct_dimensions.go → services/ess/struct_suspended_processes.go

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

+ 106 - 0
services/ess/suspend_processes.go

@@ -0,0 +1,106 @@
+package ess
+
+//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"
+)
+
+// SuspendProcesses invokes the ess.SuspendProcesses API synchronously
+// api document: https://help.aliyun.com/api/ess/suspendprocesses.html
+func (client *Client) SuspendProcesses(request *SuspendProcessesRequest) (response *SuspendProcessesResponse, err error) {
+	response = CreateSuspendProcessesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SuspendProcessesWithChan invokes the ess.SuspendProcesses API asynchronously
+// api document: https://help.aliyun.com/api/ess/suspendprocesses.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SuspendProcessesWithChan(request *SuspendProcessesRequest) (<-chan *SuspendProcessesResponse, <-chan error) {
+	responseChan := make(chan *SuspendProcessesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SuspendProcesses(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SuspendProcessesWithCallback invokes the ess.SuspendProcesses API asynchronously
+// api document: https://help.aliyun.com/api/ess/suspendprocesses.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SuspendProcessesWithCallback(request *SuspendProcessesRequest, callback func(response *SuspendProcessesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SuspendProcessesResponse
+		var err error
+		defer close(result)
+		response, err = client.SuspendProcesses(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SuspendProcessesRequest is the request struct for api SuspendProcesses
+type SuspendProcessesRequest struct {
+	*requests.RpcRequest
+	Process              *[]string        `position:"Query" name:"Process"  type:"Repeated"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// SuspendProcessesResponse is the response struct for api SuspendProcesses
+type SuspendProcessesResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateSuspendProcessesRequest creates a request to invoke SuspendProcesses API
+func CreateSuspendProcessesRequest() (request *SuspendProcessesRequest) {
+	request = &SuspendProcessesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ess", "2014-08-28", "SuspendProcesses", "ess", "openAPI")
+	return
+}
+
+// CreateSuspendProcessesResponse creates a response to parse from SuspendProcesses response
+func CreateSuspendProcessesResponse() (response *SuspendProcessesResponse) {
+	response = &SuspendProcessesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/ess/verify_authentication.go

@@ -76,10 +76,10 @@ func (client *Client) VerifyAuthenticationWithCallback(request *VerifyAuthentica
 // VerifyAuthenticationRequest is the request struct for api VerifyAuthentication
 type VerifyAuthenticationRequest struct {
 	*requests.RpcRequest
-	Uid                  requests.Integer `position:"Query" name:"Uid"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	Uid                  requests.Integer `position:"Query" name:"Uid"`
 }
 
 // VerifyAuthenticationResponse is the response struct for api VerifyAuthentication