Module appautoscaling

@pulumi/aws > appautoscaling

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

class Policy

extends CustomResource

Provides an Application AutoScaling Policy resource.

Example Usage

DynamoDB Table Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const dynamodbTableReadTarget = new aws.appautoscaling.Target("dynamodbTableReadTarget", {
    maxCapacity: 100,
    minCapacity: 5,
    resourceId: "table/tableName",
    roleArn: aws_iam_role_DynamoDBAutoscaleRole.arn,
    scalableDimension: "dynamodb:table:ReadCapacityUnits",
    serviceNamespace: "dynamodb",
});
const dynamodbTableReadPolicy = new aws.appautoscaling.Policy("dynamodbTableReadPolicy", {
    policyType: "TargetTrackingScaling",
    resourceId: dynamodbTableReadTarget.resourceId,
    scalableDimension: dynamodbTableReadTarget.scalableDimension,
    serviceNamespace: dynamodbTableReadTarget.serviceNamespace,
    targetTrackingScalingPolicyConfiguration: {
        predefinedMetricSpecification: {
            predefinedMetricType: "DynamoDBReadCapacityUtilization",
        },
        targetValue: 70,
    },
});

ECS Service Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const ecsTarget = new aws.appautoscaling.Target("ecsTarget", {
    maxCapacity: 4,
    minCapacity: 1,
    resourceId: "service/clusterName/serviceName",
    roleArn: var_ecs_iam_role,
    scalableDimension: "ecs:service:DesiredCount",
    serviceNamespace: "ecs",
});
const ecsPolicy = new aws.appautoscaling.Policy("ecsPolicy", {
    policyType: "StepScaling",
    resourceId: ecsTarget.resourceId,
    scalableDimension: ecsTarget.scalableDimension,
    serviceNamespace: ecsTarget.serviceNamespace,
    stepScalingPolicyConfiguration: {
        adjustmentType: "ChangeInCapacity",
        cooldown: 60,
        metricAggregationType: "Maximum",
        stepAdjustments: [{
            metricIntervalUpperBound: "0",
            scalingAdjustment: -1,
        }],
    },
});

Preserve desired count when updating an autoscaled ECS Service

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const ecsService = new aws.ecs.Service("ecsService", {
    cluster: "clusterName",
    desiredCount: 2,
    taskDefinition: "taskDefinitionFamily:1",
});

Aurora Read Replica Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const replicasTarget = new aws.appautoscaling.Target("replicas", {
    maxCapacity: 15,
    minCapacity: 1,
    resourceId: pulumi.interpolate`cluster:${aws_rds_cluster_example.id}`,
    scalableDimension: "rds:cluster:ReadReplicaCount",
    serviceNamespace: "rds",
});
const replicasPolicy = new aws.appautoscaling.Policy("replicas", {
    policyType: "TargetTrackingScaling",
    resourceId: replicasTarget.resourceId,
    scalableDimension: replicasTarget.scalableDimension,
    serviceNamespace: replicasTarget.serviceNamespace,
    targetTrackingScalingPolicyConfiguration: {
        predefinedMetricSpecification: {
            predefinedMetricType: "RDSReaderAverageCPUUtilization",
        },
        scaleInCooldown: 300,
        scaleOutCooldown: 300,
        targetValue: 75,
    },
});

Nested fields

targetTrackingScalingPolicyConfiguration

  • targetValue - (Required) The target value for the metric.
  • disableScaleIn - (Optional) Indicates whether scale in by the target tracking policy is disabled. If the value is true, scale in is disabled and the target tracking policy won’t remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking policy can remove capacity from the scalable resource. The default value is false.
  • scaleInCooldown - (Optional) The amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
  • scaleOutCooldown - (Optional) The amount of time, in seconds, after a scale out activity completes before another scale out activity can start.
  • customizedMetricSpecification - (Optional) A custom CloudWatch metric. Documentation can be found at: AWS Customized Metric Specification. See supported fields below.
  • predefinedMetricSpecification - (Optional) A predefined metric. See supported fields below.

customizedMetricSpecification

  • dimensions - (Optional) The dimensions of the metric.
  • metricName - (Required) The name of the metric.
  • namespace - (Required) The namespace of the metric.
  • statistic - (Required) The statistic of the metric.
  • unit - (Optional) The unit of the metric.

predefinedMetricSpecification

  • predefinedMetricType - (Required) The metric type.
  • resourceLabel - (Optional) Reserved for future use.

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/appautoscaling_policy.html.markdown.

constructor

new Policy(name: string, args: PolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a Policy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PolicyState, opts?: pulumi.CustomResourceOptions): Policy

Get an existing Policy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Policy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property alarms

public alarms: pulumi.Output<string[] | undefined>;

property arn

public arn: pulumi.Output<string>;

The ARN assigned by AWS to the scaling policy.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the policy.

property policyType

public policyType: pulumi.Output<string | undefined>;

For DynamoDB, only TargetTrackingScaling is supported. For Amazon ECS, Spot Fleet, and Amazon RDS, both StepScaling and TargetTrackingScaling are supported. For any other service, only StepScaling is supported. Defaults to StepScaling.

property resourceId

public resourceId: pulumi.Output<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

public scalableDimension: pulumi.Output<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

public serviceNamespace: pulumi.Output<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference

property stepScalingPolicyConfiguration

public stepScalingPolicyConfiguration: pulumi.Output<{
    adjustmentType: undefined | string;
    cooldown: undefined | number;
    metricAggregationType: undefined | string;
    minAdjustmentMagnitude: undefined | number;
    stepAdjustments: {
        metricIntervalLowerBound: undefined | string;
        metricIntervalUpperBound: undefined | string;
        scalingAdjustment: number;
    }[];
} | undefined>;

Step scaling policy configuration, requires policyType = "StepScaling" (default). See supported fields below.

property targetTrackingScalingPolicyConfiguration

public targetTrackingScalingPolicyConfiguration: pulumi.Output<{
    customizedMetricSpecification: undefined | {
        dimensions: {
            name: string;
            value: string;
        }[];
        metricName: string;
        namespace: string;
        statistic: string;
        unit: undefined | string;
    };
    disableScaleIn: undefined | false | true;
    predefinedMetricSpecification: undefined | {
        predefinedMetricType: string;
        resourceLabel: undefined | string;
    };
    scaleInCooldown: undefined | number;
    scaleOutCooldown: undefined | number;
    targetValue: number;
} | undefined>;

A target tracking policy, requires policyType = "TargetTrackingScaling". See supported fields below.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ScheduledAction

extends CustomResource

Provides an Application AutoScaling ScheduledAction resource.

Example Usage

DynamoDB Table Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const dynamodbTarget = new aws.appautoscaling.Target("dynamodb", {
    maxCapacity: 100,
    minCapacity: 5,
    resourceId: "table/tableName",
    roleArn: aws_iam_role_DynamoDBAutoscaleRole.arn,
    scalableDimension: "dynamodb:table:ReadCapacityUnits",
    serviceNamespace: "dynamodb",
});
const dynamodbScheduledAction = new aws.appautoscaling.ScheduledAction("dynamodb", {
    resourceId: dynamodbTarget.resourceId,
    scalableDimension: dynamodbTarget.scalableDimension,
    scalableTargetAction: {
        maxCapacity: 200,
        minCapacity: 1,
    },
    schedule: "at(2006-01-02T15:04:05)",
    serviceNamespace: dynamodbTarget.serviceNamespace,
});

ECS Service Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const ecsTarget = new aws.appautoscaling.Target("ecs", {
    maxCapacity: 4,
    minCapacity: 1,
    resourceId: "service/clusterName/serviceName",
    roleArn: var_ecs_iam_role,
    scalableDimension: "ecs:service:DesiredCount",
    serviceNamespace: "ecs",
});
const ecsScheduledAction = new aws.appautoscaling.ScheduledAction("ecs", {
    resourceId: ecsTarget.resourceId,
    scalableDimension: ecsTarget.scalableDimension,
    scalableTargetAction: {
        maxCapacity: 10,
        minCapacity: 1,
    },
    schedule: "at(2006-01-02T15:04:05)",
    serviceNamespace: ecsTarget.serviceNamespace,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/appautoscaling_scheduled_action.html.markdown.

constructor

new ScheduledAction(name: string, args: ScheduledActionArgs, opts?: pulumi.CustomResourceOptions)

Create a ScheduledAction resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ScheduledActionState, opts?: pulumi.CustomResourceOptions): ScheduledAction

Get an existing ScheduledAction resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ScheduledAction. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

The Amazon Resource Name (ARN) of the scheduled action.

property endTime

public endTime: pulumi.Output<string | undefined>;

The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the scheduled action.

property resourceId

public resourceId: pulumi.Output<string>;

The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

public scalableDimension: pulumi.Output<string | undefined>;

The scalable dimension. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs:service:DesiredCount

property scalableTargetAction

public scalableTargetAction: pulumi.Output<{
    maxCapacity: undefined | number;
    minCapacity: undefined | number;
} | undefined>;

The new minimum and maximum capacity. You can set both values or just one. See below

property schedule

public schedule: pulumi.Output<string | undefined>;

The schedule for this action. The following formats are supported: At expressions - at(yyyy-mm-ddThh:mm:ss), Rate expressions - rate(valueunit), Cron expressions - cron(fields). In UTC. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

public serviceNamespace: pulumi.Output<string>;

The namespace of the AWS service. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs

property startTime

public startTime: pulumi.Output<string | undefined>;

The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Target

extends CustomResource

Provides an Application AutoScaling ScalableTarget resource. To manage policies which get attached to the target, see the aws.appautoscaling.Policy resource.

Example Usage

DynamoDB Table Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const dynamodbTableReadTarget = new aws.appautoscaling.Target("dynamodbTableReadTarget", {
    maxCapacity: 100,
    minCapacity: 5,
    resourceId: pulumi.interpolate`table/${aws_dynamodb_table_example.name}`,
    roleArn: aws_iam_role_DynamoDBAutoscaleRole.arn,
    scalableDimension: "dynamodb:table:ReadCapacityUnits",
    serviceNamespace: "dynamodb",
});

DynamoDB Index Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const dynamodbIndexReadTarget = new aws.appautoscaling.Target("dynamodbIndexReadTarget", {
    maxCapacity: 100,
    minCapacity: 5,
    resourceId: pulumi.interpolate`table/${aws_dynamodb_table_example.name}/index/${var_index_name}`,
    roleArn: aws_iam_role_DynamoDBAutoscaleRole.arn,
    scalableDimension: "dynamodb:index:ReadCapacityUnits",
    serviceNamespace: "dynamodb",
});

ECS Service Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const ecsTarget = new aws.appautoscaling.Target("ecsTarget", {
    maxCapacity: 4,
    minCapacity: 1,
    resourceId: pulumi.interpolate`service/${aws_ecs_cluster_example.name}/${aws_ecs_service_example.name}`,
    roleArn: var_ecs_iam_role,
    scalableDimension: "ecs:service:DesiredCount",
    serviceNamespace: "ecs",
});

Aurora Read Replica Autoscaling

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const replicas = new aws.appautoscaling.Target("replicas", {
    maxCapacity: 15,
    minCapacity: 1,
    resourceId: pulumi.interpolate`cluster:${aws_rds_cluster_example.id}`,
    scalableDimension: "rds:cluster:ReadReplicaCount",
    serviceNamespace: "rds",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/appautoscaling_target.html.markdown.

constructor

new Target(name: string, args: TargetArgs, opts?: pulumi.CustomResourceOptions)

Create a Target resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TargetState, opts?: pulumi.CustomResourceOptions): Target

Get an existing Target resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Target. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property maxCapacity

public maxCapacity: pulumi.Output<number>;

The max capacity of the scalable target.

property minCapacity

public minCapacity: pulumi.Output<number>;

The min capacity of the scalable target.

property resourceId

public resourceId: pulumi.Output<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property roleArn

public roleArn: pulumi.Output<string>;

The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf.

property scalableDimension

public scalableDimension: pulumi.Output<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

public serviceNamespace: pulumi.Output<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

interface PolicyArgs

The set of arguments for constructing a Policy resource.

property alarms

property name

name?: pulumi.Input<string>;

The name of the policy.

property policyType

policyType?: pulumi.Input<string>;

For DynamoDB, only TargetTrackingScaling is supported. For Amazon ECS, Spot Fleet, and Amazon RDS, both StepScaling and TargetTrackingScaling are supported. For any other service, only StepScaling is supported. Defaults to StepScaling.

property resourceId

resourceId: pulumi.Input<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

scalableDimension: pulumi.Input<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace: pulumi.Input<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference

property stepScalingPolicyConfiguration

stepScalingPolicyConfiguration?: pulumi.Input<{
    adjustmentType: pulumi.Input<string>;
    cooldown: pulumi.Input<number>;
    metricAggregationType: pulumi.Input<string>;
    minAdjustmentMagnitude: pulumi.Input<number>;
    stepAdjustments: pulumi.Input<pulumi.Input<{
        metricIntervalLowerBound: pulumi.Input<string>;
        metricIntervalUpperBound: pulumi.Input<string>;
        scalingAdjustment: pulumi.Input<number>;
    }>[]>;
}>;

Step scaling policy configuration, requires policyType = "StepScaling" (default). See supported fields below.

property targetTrackingScalingPolicyConfiguration

targetTrackingScalingPolicyConfiguration?: pulumi.Input<{
    customizedMetricSpecification: pulumi.Input<{
        dimensions: pulumi.Input<pulumi.Input<{
            name: pulumi.Input<string>;
            value: pulumi.Input<string>;
        }>[]>;
        metricName: pulumi.Input<string>;
        namespace: pulumi.Input<string>;
        statistic: pulumi.Input<string>;
        unit: pulumi.Input<string>;
    }>;
    disableScaleIn: pulumi.Input<boolean>;
    predefinedMetricSpecification: pulumi.Input<{
        predefinedMetricType: pulumi.Input<string>;
        resourceLabel: pulumi.Input<string>;
    }>;
    scaleInCooldown: pulumi.Input<number>;
    scaleOutCooldown: pulumi.Input<number>;
    targetValue: pulumi.Input<number>;
}>;

A target tracking policy, requires policyType = "TargetTrackingScaling". See supported fields below.

interface PolicyState

Input properties used for looking up and filtering Policy resources.

property alarms

property arn

arn?: pulumi.Input<string>;

The ARN assigned by AWS to the scaling policy.

property name

name?: pulumi.Input<string>;

The name of the policy.

property policyType

policyType?: pulumi.Input<string>;

For DynamoDB, only TargetTrackingScaling is supported. For Amazon ECS, Spot Fleet, and Amazon RDS, both StepScaling and TargetTrackingScaling are supported. For any other service, only StepScaling is supported. Defaults to StepScaling.

property resourceId

resourceId?: pulumi.Input<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

scalableDimension?: pulumi.Input<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace?: pulumi.Input<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference

property stepScalingPolicyConfiguration

stepScalingPolicyConfiguration?: pulumi.Input<{
    adjustmentType: pulumi.Input<string>;
    cooldown: pulumi.Input<number>;
    metricAggregationType: pulumi.Input<string>;
    minAdjustmentMagnitude: pulumi.Input<number>;
    stepAdjustments: pulumi.Input<pulumi.Input<{
        metricIntervalLowerBound: pulumi.Input<string>;
        metricIntervalUpperBound: pulumi.Input<string>;
        scalingAdjustment: pulumi.Input<number>;
    }>[]>;
}>;

Step scaling policy configuration, requires policyType = "StepScaling" (default). See supported fields below.

property targetTrackingScalingPolicyConfiguration

targetTrackingScalingPolicyConfiguration?: pulumi.Input<{
    customizedMetricSpecification: pulumi.Input<{
        dimensions: pulumi.Input<pulumi.Input<{
            name: pulumi.Input<string>;
            value: pulumi.Input<string>;
        }>[]>;
        metricName: pulumi.Input<string>;
        namespace: pulumi.Input<string>;
        statistic: pulumi.Input<string>;
        unit: pulumi.Input<string>;
    }>;
    disableScaleIn: pulumi.Input<boolean>;
    predefinedMetricSpecification: pulumi.Input<{
        predefinedMetricType: pulumi.Input<string>;
        resourceLabel: pulumi.Input<string>;
    }>;
    scaleInCooldown: pulumi.Input<number>;
    scaleOutCooldown: pulumi.Input<number>;
    targetValue: pulumi.Input<number>;
}>;

A target tracking policy, requires policyType = "TargetTrackingScaling". See supported fields below.

interface ScheduledActionArgs

The set of arguments for constructing a ScheduledAction resource.

property endTime

endTime?: pulumi.Input<string>;

The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z

property name

name?: pulumi.Input<string>;

The name of the scheduled action.

property resourceId

resourceId: pulumi.Input<string>;

The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

scalableDimension?: pulumi.Input<string>;

The scalable dimension. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs:service:DesiredCount

property scalableTargetAction

scalableTargetAction?: pulumi.Input<{
    maxCapacity: pulumi.Input<number>;
    minCapacity: pulumi.Input<number>;
}>;

The new minimum and maximum capacity. You can set both values or just one. See below

property schedule

schedule?: pulumi.Input<string>;

The schedule for this action. The following formats are supported: At expressions - at(yyyy-mm-ddThh:mm:ss), Rate expressions - rate(valueunit), Cron expressions - cron(fields). In UTC. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace: pulumi.Input<string>;

The namespace of the AWS service. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs

property startTime

startTime?: pulumi.Input<string>;

The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z

interface ScheduledActionState

Input properties used for looking up and filtering ScheduledAction resources.

property arn

arn?: pulumi.Input<string>;

The Amazon Resource Name (ARN) of the scheduled action.

property endTime

endTime?: pulumi.Input<string>;

The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z

property name

name?: pulumi.Input<string>;

The name of the scheduled action.

property resourceId

resourceId?: pulumi.Input<string>;

The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property scalableDimension

scalableDimension?: pulumi.Input<string>;

The scalable dimension. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs:service:DesiredCount

property scalableTargetAction

scalableTargetAction?: pulumi.Input<{
    maxCapacity: pulumi.Input<number>;
    minCapacity: pulumi.Input<number>;
}>;

The new minimum and maximum capacity. You can set both values or just one. See below

property schedule

schedule?: pulumi.Input<string>;

The schedule for this action. The following formats are supported: At expressions - at(yyyy-mm-ddThh:mm:ss), Rate expressions - rate(valueunit), Cron expressions - cron(fields). In UTC. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace?: pulumi.Input<string>;

The namespace of the AWS service. Documentation can be found in the parameter at: AWS Application Auto Scaling API Reference Example: ecs

property startTime

startTime?: pulumi.Input<string>;

The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z

interface TargetArgs

The set of arguments for constructing a Target resource.

property maxCapacity

maxCapacity: pulumi.Input<number>;

The max capacity of the scalable target.

property minCapacity

minCapacity: pulumi.Input<number>;

The min capacity of the scalable target.

property resourceId

resourceId: pulumi.Input<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property roleArn

roleArn?: pulumi.Input<string>;

The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf.

property scalableDimension

scalableDimension: pulumi.Input<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace: pulumi.Input<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference

interface TargetState

Input properties used for looking up and filtering Target resources.

property maxCapacity

maxCapacity?: pulumi.Input<number>;

The max capacity of the scalable target.

property minCapacity

minCapacity?: pulumi.Input<number>;

The min capacity of the scalable target.

property resourceId

resourceId?: pulumi.Input<string>;

The resource type and unique identifier string for the resource associated with the scaling policy. Documentation can be found in the ResourceId parameter at: AWS Application Auto Scaling API Reference

property roleArn

roleArn?: pulumi.Input<string>;

The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf.

property scalableDimension

scalableDimension?: pulumi.Input<string>;

The scalable dimension of the scalable target. Documentation can be found in the ScalableDimension parameter at: AWS Application Auto Scaling API Reference

property serviceNamespace

serviceNamespace?: pulumi.Input<string>;

The AWS service namespace of the scalable target. Documentation can be found in the ServiceNamespace parameter at: AWS Application Auto Scaling API Reference