import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * After the scaling group triggers scaling rules, health checks, and instance count checks, the lifecycle hook can suspend instances that are in the 'joining', 'removing', or 'disabling' state, putting them into the joining/removing suspended state. The instances are now in a waiting state, and you can perform custom operations during this period until the lifecycle hook times out or you manually end the suspension. * * ## Import * * ```sh * $ pulumi import volcenginecc:autoscaling/scalingLifecycleHook:ScalingLifecycleHook example "scaling_group_id|lifecycle_hook_id" * ``` */ export declare class ScalingLifecycleHook extends pulumi.CustomResource { /** * Get an existing ScalingLifecycleHook resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: ScalingLifecycleHookState, opts?: pulumi.CustomResourceOptions): ScalingLifecycleHook; /** * Returns true if the given object is an instance of ScalingLifecycleHook. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is ScalingLifecycleHook; /** * Cloud Assistant command information. */ readonly lifecycleCommand: pulumi.Output; /** * Lifecycle hook ID. */ readonly lifecycleHookId: pulumi.Output; /** * Lifecycle hook name, cannot be modified after creation. Values: Cannot start with a digit, hyphen, or underscore. Can only contain Chinese characters, letters, digits, underscores, and hyphens. Length must be between 1 and 128 characters. */ readonly lifecycleHookName: pulumi.Output; /** * Policy executed after the instance suspension ends. Values: CONTINUE: Continue execution. REJECT: Abort subsequent actions. ROLLBACK: For elastic scale-in activities, the release of ECS instances is rejected and rollback is performed; for elastic scale-out activities, the effect is the same as REJECT. */ readonly lifecycleHookPolicy: pulumi.Output; /** * Duration for which the ECS instance remains suspended. After timeout, the suspended state ends automatically and scaling actions continue according to the execution policy. Please evaluate the processing time for custom operations and set an appropriate timeout. Values: 30 to 21600 (6 hours), unit: s, must be an integer. */ readonly lifecycleHookTimeout: pulumi.Output; /** * Type of scaling activity. When a specified type of scaling activity occurs, the lifecycle hook is triggered and the ECS instance is suspended. Values: SCALE*IN: Elastic scale-in activity. SCALE*OUT: Elastic scale-out activity. */ readonly lifecycleHookType: pulumi.Output; /** * Scaling group ID. */ readonly scalingGroupId: pulumi.Output; /** * Create a ScalingLifecycleHook resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: ScalingLifecycleHookArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ScalingLifecycleHook resources. */ export interface ScalingLifecycleHookState { /** * Cloud Assistant command information. */ lifecycleCommand?: pulumi.Input; /** * Lifecycle hook ID. */ lifecycleHookId?: pulumi.Input; /** * Lifecycle hook name, cannot be modified after creation. Values: Cannot start with a digit, hyphen, or underscore. Can only contain Chinese characters, letters, digits, underscores, and hyphens. Length must be between 1 and 128 characters. */ lifecycleHookName?: pulumi.Input; /** * Policy executed after the instance suspension ends. Values: CONTINUE: Continue execution. REJECT: Abort subsequent actions. ROLLBACK: For elastic scale-in activities, the release of ECS instances is rejected and rollback is performed; for elastic scale-out activities, the effect is the same as REJECT. */ lifecycleHookPolicy?: pulumi.Input; /** * Duration for which the ECS instance remains suspended. After timeout, the suspended state ends automatically and scaling actions continue according to the execution policy. Please evaluate the processing time for custom operations and set an appropriate timeout. Values: 30 to 21600 (6 hours), unit: s, must be an integer. */ lifecycleHookTimeout?: pulumi.Input; /** * Type of scaling activity. When a specified type of scaling activity occurs, the lifecycle hook is triggered and the ECS instance is suspended. Values: SCALE*IN: Elastic scale-in activity. SCALE*OUT: Elastic scale-out activity. */ lifecycleHookType?: pulumi.Input; /** * Scaling group ID. */ scalingGroupId?: pulumi.Input; } /** * The set of arguments for constructing a ScalingLifecycleHook resource. */ export interface ScalingLifecycleHookArgs { /** * Cloud Assistant command information. */ lifecycleCommand?: pulumi.Input; /** * Lifecycle hook name, cannot be modified after creation. Values: Cannot start with a digit, hyphen, or underscore. Can only contain Chinese characters, letters, digits, underscores, and hyphens. Length must be between 1 and 128 characters. */ lifecycleHookName: pulumi.Input; /** * Policy executed after the instance suspension ends. Values: CONTINUE: Continue execution. REJECT: Abort subsequent actions. ROLLBACK: For elastic scale-in activities, the release of ECS instances is rejected and rollback is performed; for elastic scale-out activities, the effect is the same as REJECT. */ lifecycleHookPolicy: pulumi.Input; /** * Duration for which the ECS instance remains suspended. After timeout, the suspended state ends automatically and scaling actions continue according to the execution policy. Please evaluate the processing time for custom operations and set an appropriate timeout. Values: 30 to 21600 (6 hours), unit: s, must be an integer. */ lifecycleHookTimeout: pulumi.Input; /** * Type of scaling activity. When a specified type of scaling activity occurs, the lifecycle hook is triggered and the ECS instance is suspended. Values: SCALE*IN: Elastic scale-in activity. SCALE*OUT: Elastic scale-out activity. */ lifecycleHookType: pulumi.Input; /** * Scaling group ID. */ scalingGroupId: pulumi.Input; }