Ends a lifecycle hook ahead of schedule.

Description

When you call this operation, you can set the LifecycleActionResult parameter to CONTINUE or ABANDON to determine the action that Auto Scaling performs after you end the lifecycle hook.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes CompleteLifecycleAction

The operation that you want to perform. Set the value to CompleteLifecycleAction.

LifecycleHookId String Yes ash-bp14g3ee6bt3sc98****

The ID of the lifecycle hook.

LifecycleActionToken String Yes aaaa-bbbbb-cccc-ddddd

The token of the lifecycle action. You can obtain the token by using a Message Service (MNS) queue or MNS topic of the lifecycle hook.

LifecycleActionResult String No CONTINUE

The action that you want Auto Scaling to perform after the lifecycle hook times out. Valid values:

  • CONTINUE: Auto Scaling continues to add Elastic Compute Service (ECS) instances to the scaling group, or continues to remove ECS instances from the scaling group.
  • ABANDON: Auto Scaling stops adding ECS instances to the scaling group and releases the ECS instances, or continues to respond to scale-in requests and remove ECS instances from the scaling group.

If you do not specify this parameter, Auto Scaling performs the action specified by the DefaultResult parameter after you end the lifecycle hook.

If multiple lifecycle hooks exist in a scaling group and are triggered at the same time, the following rules apply:

  • If you set the LifecycleActionResult parameter to ABANDON for a lifecycle hook that is applied to a scale-in activity, Auto Scaling immediately removes ECS instances from the scaling group after the lifecycle hook expires, without the need to wait for the last lifecycle hook to expire.
  • If you set the LifecycleActionResult parameter to CONTINUE for a lifecycle hook that is applied to a scale-in or scale-out activity, Auto Scaling performs the next action until all lifecycle hooks in the scaling group time out. The action that Auto Scaling performs varies based on the value that you specify for the LifecycleActionResult parameter of the last lifecycle hook.
ClientToken String No 123e4567-e89b-12d3-a456-42665544****

The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that the value is unique among different requests.

The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see How to ensure idempotence.

RegionId String No cn-qingdao

The region ID of the scaling group.

Response parameters

Parameter Type Example Description
RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

The ID of the request.

Examples

Sample requests

http(s)://ess.aliyuncs.com/?Action=CompleteLifecycleAction
&LifecycleHookId=ash-bp14g3ee6bt3sc98****
&LifecycleActionToken=aaaa-bbbbb-cccc-ddddd
&LifecycleActionResult=CONTINUE
&ClientToken=123e4567-e89b-12d3-a456-42665544****
&RegionId=cn-qingdao
&<Common request parameters>

Sample responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<CompleteLifecycleActionResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</CompleteLifecycleActionResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

Error codes

For a list of error codes, visit the API Error Center.

HTTP status code

Error code

Error message

Description

400

InvalidParamter

The specified value of parameter is invalid.

The error message returned because the value that you specified for a parameter is invalid.

400

LifecycleHookIdAndLifecycleActionToken.Invalid

The specified lifecycleActionToken and lifecycleHookId you provided does not match any in process lifecycle action.

The error message returned because the value that you specified for the LifecycleActionToken parameter does not match the value that youspecified for the LifecycleHookId parameter.