import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Scaling rules define the conditions and methods for triggering scaling actions, including rule type, trigger time, scaling action, cooldown time. You can enable multiple scaling rules within the same scaling group. Scaling actions are executed when any rule type is met. If multiple rule types are met at the same time, manual scaling actions take priority. * * ## Import * * ```sh * $ pulumi import volcenginecc:autoscaling/scalingPolicy:ScalingPolicy example "scaling_group_id|scaling_policy_id" * ``` */ export declare class ScalingPolicy extends pulumi.CustomResource { /** * Get an existing ScalingPolicy 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?: ScalingPolicyState, opts?: pulumi.CustomResourceOptions): ScalingPolicy; /** * Returns true if the given object is an instance of ScalingPolicy. 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 ScalingPolicy; /** * Scaling actions for the scaling rule, applicable to simple and step rules. QuantityChangeInCapacity: increase or decrease a specified number of instances. PercentChangeInCapacity: increase or decrease a specified percentage of instances. TotalCapacity: adjust the number of instances in the current scaling group to the specified value. */ readonly adjustmentType: pulumi.Output; /** * Adjustment value for scaling actions, applicable to simple and step rules. When AdjustmentType is set to QuantityChangeInCapacity: -100 to 100, cannot be 0, unit: instances. When AdjustmentType is set to PercentChangeInCapacity: -100 to 10000, cannot be 0, unit: %. When AdjustmentType is set to TotalCapacity: defaults to 0 to 100, unit: instances. */ readonly adjustmentValue: pulumi.Output; /** * Detailed information about the alarm task. */ readonly alarmPolicy: pulumi.Output; /** * Cooldown time for scaling rules. Value: 0–86400, unit: seconds. If not specified, the scaling group's cooldown time is used by default. */ readonly cooldown: pulumi.Output; /** * Status of the scaling rule. Options: true: enabled. false: disabled. The scaling group must be in Active status. */ readonly isEnabledPolicy: pulumi.Output; /** * Scaling group ID. */ readonly scalingGroupId: pulumi.Output; /** * Scaling rule ID. */ readonly scalingPolicyId: pulumi.Output; /** * Name of the scaling rule. */ readonly scalingPolicyName: pulumi.Output; /** * Type of scaling rule. Options: Scheduled: scheduled task. Recurrence: recurring task. Alarm: alarm task. */ readonly scalingPolicyType: pulumi.Output; /** * Detailed information for scheduled/recurring tasks. */ readonly scheduledPolicy: pulumi.Output; /** * Status of the scaling rule. Options: Active: enabled. Inactive: disabled. The scaling group must be in Active status. */ readonly status: pulumi.Output; /** * Create a ScalingPolicy 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: ScalingPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ScalingPolicy resources. */ export interface ScalingPolicyState { /** * Scaling actions for the scaling rule, applicable to simple and step rules. QuantityChangeInCapacity: increase or decrease a specified number of instances. PercentChangeInCapacity: increase or decrease a specified percentage of instances. TotalCapacity: adjust the number of instances in the current scaling group to the specified value. */ adjustmentType?: pulumi.Input; /** * Adjustment value for scaling actions, applicable to simple and step rules. When AdjustmentType is set to QuantityChangeInCapacity: -100 to 100, cannot be 0, unit: instances. When AdjustmentType is set to PercentChangeInCapacity: -100 to 10000, cannot be 0, unit: %. When AdjustmentType is set to TotalCapacity: defaults to 0 to 100, unit: instances. */ adjustmentValue?: pulumi.Input; /** * Detailed information about the alarm task. */ alarmPolicy?: pulumi.Input; /** * Cooldown time for scaling rules. Value: 0–86400, unit: seconds. If not specified, the scaling group's cooldown time is used by default. */ cooldown?: pulumi.Input; /** * Status of the scaling rule. Options: true: enabled. false: disabled. The scaling group must be in Active status. */ isEnabledPolicy?: pulumi.Input; /** * Scaling group ID. */ scalingGroupId?: pulumi.Input; /** * Scaling rule ID. */ scalingPolicyId?: pulumi.Input; /** * Name of the scaling rule. */ scalingPolicyName?: pulumi.Input; /** * Type of scaling rule. Options: Scheduled: scheduled task. Recurrence: recurring task. Alarm: alarm task. */ scalingPolicyType?: pulumi.Input; /** * Detailed information for scheduled/recurring tasks. */ scheduledPolicy?: pulumi.Input; /** * Status of the scaling rule. Options: Active: enabled. Inactive: disabled. The scaling group must be in Active status. */ status?: pulumi.Input; } /** * The set of arguments for constructing a ScalingPolicy resource. */ export interface ScalingPolicyArgs { /** * Scaling actions for the scaling rule, applicable to simple and step rules. QuantityChangeInCapacity: increase or decrease a specified number of instances. PercentChangeInCapacity: increase or decrease a specified percentage of instances. TotalCapacity: adjust the number of instances in the current scaling group to the specified value. */ adjustmentType?: pulumi.Input; /** * Adjustment value for scaling actions, applicable to simple and step rules. When AdjustmentType is set to QuantityChangeInCapacity: -100 to 100, cannot be 0, unit: instances. When AdjustmentType is set to PercentChangeInCapacity: -100 to 10000, cannot be 0, unit: %. When AdjustmentType is set to TotalCapacity: defaults to 0 to 100, unit: instances. */ adjustmentValue?: pulumi.Input; /** * Detailed information about the alarm task. */ alarmPolicy?: pulumi.Input; /** * Cooldown time for scaling rules. Value: 0–86400, unit: seconds. If not specified, the scaling group's cooldown time is used by default. */ cooldown?: pulumi.Input; /** * Status of the scaling rule. Options: true: enabled. false: disabled. The scaling group must be in Active status. */ isEnabledPolicy?: pulumi.Input; /** * Scaling group ID. */ scalingGroupId: pulumi.Input; /** * Name of the scaling rule. */ scalingPolicyName: pulumi.Input; /** * Type of scaling rule. Options: Scheduled: scheduled task. Recurrence: recurring task. Alarm: alarm task. */ scalingPolicyType: pulumi.Input; /** * Detailed information for scheduled/recurring tasks. */ scheduledPolicy?: pulumi.Input; }