appautoscaling

package
v2.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Policy

type Policy struct {
	pulumi.CustomResourceState

	// The ARN assigned by AWS to the scaling policy.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the policy.
	Name pulumi.StringOutput `pulumi:"name"`
	// The policy type. Valid values are `StepScaling` and `TargetTrackingScaling`. Defaults to `StepScaling`. Certain services only support only one policy type. For more information see the [Target Tracking Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) documentation.
	PolicyType pulumi.StringPtrOutput `pulumi:"policyType"`
	// 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](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringOutput `pulumi:"scalableDimension"`
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringOutput `pulumi:"serviceNamespace"`
	// Step scaling policy configuration, requires `policyType = "StepScaling"` (default). See supported fields below.
	StepScalingPolicyConfiguration PolicyStepScalingPolicyConfigurationPtrOutput `pulumi:"stepScalingPolicyConfiguration"`
	// A target tracking policy, requires `policyType = "TargetTrackingScaling"`. See supported fields below.
	TargetTrackingScalingPolicyConfiguration PolicyTargetTrackingScalingPolicyConfigurationPtrOutput `pulumi:"targetTrackingScalingPolicyConfiguration"`
}

Provides an Application AutoScaling Policy resource.

## Example Usage

### DynamoDB Table Autoscaling

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/appautoscaling"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dynamodbTableReadTarget, err := appautoscaling.NewTarget(ctx, "dynamodbTableReadTarget", &appautoscaling.TargetArgs{
			MaxCapacity:       pulumi.Int(100),
			MinCapacity:       pulumi.Int(5),
			ResourceId:        pulumi.String("table/tableName"),
			ScalableDimension: pulumi.String("dynamodb:table:ReadCapacityUnits"),
			ServiceNamespace:  pulumi.String("dynamodb"),
		})
		if err != nil {
			return err
		}
		dynamodbTableReadPolicy, err := appautoscaling.NewPolicy(ctx, "dynamodbTableReadPolicy", &appautoscaling.PolicyArgs{
			PolicyType:        pulumi.String("TargetTrackingScaling"),
			ResourceId:        dynamodbTableReadTarget.ResourceId,
			ScalableDimension: dynamodbTableReadTarget.ScalableDimension,
			ServiceNamespace:  dynamodbTableReadTarget.ServiceNamespace,
			TargetTrackingScalingPolicyConfiguration: &appautoscaling.PolicyTargetTrackingScalingPolicyConfigurationArgs{
				PredefinedMetricSpecification: &appautoscaling.PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs{
					PredefinedMetricType: pulumi.String("DynamoDBReadCapacityUtilization"),
				},
				TargetValue: pulumi.Float64(70),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### ECS Service Autoscaling

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/appautoscaling"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ecsTarget, err := appautoscaling.NewTarget(ctx, "ecsTarget", &appautoscaling.TargetArgs{
			MaxCapacity:       pulumi.Int(4),
			MinCapacity:       pulumi.Int(1),
			ResourceId:        pulumi.String("service/clusterName/serviceName"),
			ScalableDimension: pulumi.String("ecs:service:DesiredCount"),
			ServiceNamespace:  pulumi.String("ecs"),
		})
		if err != nil {
			return err
		}
		ecsPolicy, err := appautoscaling.NewPolicy(ctx, "ecsPolicy", &appautoscaling.PolicyArgs{
			PolicyType:        pulumi.String("StepScaling"),
			ResourceId:        ecsTarget.ResourceId,
			ScalableDimension: ecsTarget.ScalableDimension,
			ServiceNamespace:  ecsTarget.ServiceNamespace,
			StepScalingPolicyConfiguration: &appautoscaling.PolicyStepScalingPolicyConfigurationArgs{
				AdjustmentType:        pulumi.String("ChangeInCapacity"),
				Cooldown:              pulumi.Int(60),
				MetricAggregationType: pulumi.String("Maximum"),
				StepAdjustment: []map[string]interface{}{
					map[string]interface{}{
						"metricIntervalUpperBound": 0,
						"scalingAdjustment":        -1,
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetPolicy

func GetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)

GetPolicy gets an existing Policy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPolicy

func NewPolicy(ctx *pulumi.Context,
	name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)

NewPolicy registers a new resource with the given unique name, arguments, and options.

type PolicyArgs

type PolicyArgs struct {
	// The name of the policy.
	Name pulumi.StringPtrInput
	// The policy type. Valid values are `StepScaling` and `TargetTrackingScaling`. Defaults to `StepScaling`. Certain services only support only one policy type. For more information see the [Target Tracking Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) documentation.
	PolicyType pulumi.StringPtrInput
	// 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](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringInput
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringInput
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringInput
	// Step scaling policy configuration, requires `policyType = "StepScaling"` (default). See supported fields below.
	StepScalingPolicyConfiguration PolicyStepScalingPolicyConfigurationPtrInput
	// A target tracking policy, requires `policyType = "TargetTrackingScaling"`. See supported fields below.
	TargetTrackingScalingPolicyConfiguration PolicyTargetTrackingScalingPolicyConfigurationPtrInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType

func (PolicyArgs) ElementType() reflect.Type

type PolicyState

type PolicyState struct {
	// The ARN assigned by AWS to the scaling policy.
	Arn pulumi.StringPtrInput
	// The name of the policy.
	Name pulumi.StringPtrInput
	// The policy type. Valid values are `StepScaling` and `TargetTrackingScaling`. Defaults to `StepScaling`. Certain services only support only one policy type. For more information see the [Target Tracking Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step Scaling Policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) documentation.
	PolicyType pulumi.StringPtrInput
	// 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](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringPtrInput
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringPtrInput
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](http://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringPtrInput
	// Step scaling policy configuration, requires `policyType = "StepScaling"` (default). See supported fields below.
	StepScalingPolicyConfiguration PolicyStepScalingPolicyConfigurationPtrInput
	// A target tracking policy, requires `policyType = "TargetTrackingScaling"`. See supported fields below.
	TargetTrackingScalingPolicyConfiguration PolicyTargetTrackingScalingPolicyConfigurationPtrInput
}

func (PolicyState) ElementType

func (PolicyState) ElementType() reflect.Type

type PolicyStepScalingPolicyConfiguration

type PolicyStepScalingPolicyConfiguration struct {
	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.
	AdjustmentType *string `pulumi:"adjustmentType"`
	// The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown *int `pulumi:"cooldown"`
	// The aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
	MetricAggregationType *string `pulumi:"metricAggregationType"`
	// The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity, the scaling policy changes the scalable dimension of the scalable target by this amount.
	MinAdjustmentMagnitude *int `pulumi:"minAdjustmentMagnitude"`
	// A set of adjustments that manage scaling. These have the following structure:
	StepAdjustments []PolicyStepScalingPolicyConfigurationStepAdjustment `pulumi:"stepAdjustments"`
}

type PolicyStepScalingPolicyConfigurationArgs

type PolicyStepScalingPolicyConfigurationArgs struct {
	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.
	AdjustmentType pulumi.StringPtrInput `pulumi:"adjustmentType"`
	// The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown pulumi.IntPtrInput `pulumi:"cooldown"`
	// The aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".
	MetricAggregationType pulumi.StringPtrInput `pulumi:"metricAggregationType"`
	// The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity, the scaling policy changes the scalable dimension of the scalable target by this amount.
	MinAdjustmentMagnitude pulumi.IntPtrInput `pulumi:"minAdjustmentMagnitude"`
	// A set of adjustments that manage scaling. These have the following structure:
	StepAdjustments PolicyStepScalingPolicyConfigurationStepAdjustmentArrayInput `pulumi:"stepAdjustments"`
}

func (PolicyStepScalingPolicyConfigurationArgs) ElementType

func (PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationOutput

func (i PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationOutput() PolicyStepScalingPolicyConfigurationOutput

func (PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationOutputWithContext

func (i PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationOutput

func (PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationPtrOutput

func (i PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationPtrOutput() PolicyStepScalingPolicyConfigurationPtrOutput

func (PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext

func (i PolicyStepScalingPolicyConfigurationArgs) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationPtrOutput

type PolicyStepScalingPolicyConfigurationInput

type PolicyStepScalingPolicyConfigurationInput interface {
	pulumi.Input

	ToPolicyStepScalingPolicyConfigurationOutput() PolicyStepScalingPolicyConfigurationOutput
	ToPolicyStepScalingPolicyConfigurationOutputWithContext(context.Context) PolicyStepScalingPolicyConfigurationOutput
}

PolicyStepScalingPolicyConfigurationInput is an input type that accepts PolicyStepScalingPolicyConfigurationArgs and PolicyStepScalingPolicyConfigurationOutput values. You can construct a concrete instance of `PolicyStepScalingPolicyConfigurationInput` via:

PolicyStepScalingPolicyConfigurationArgs{...}

type PolicyStepScalingPolicyConfigurationOutput

type PolicyStepScalingPolicyConfigurationOutput struct{ *pulumi.OutputState }

func (PolicyStepScalingPolicyConfigurationOutput) AdjustmentType

Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.

func (PolicyStepScalingPolicyConfigurationOutput) Cooldown

The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.

func (PolicyStepScalingPolicyConfigurationOutput) ElementType

func (PolicyStepScalingPolicyConfigurationOutput) MetricAggregationType

The aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".

func (PolicyStepScalingPolicyConfigurationOutput) MinAdjustmentMagnitude

The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity, the scaling policy changes the scalable dimension of the scalable target by this amount.

func (PolicyStepScalingPolicyConfigurationOutput) StepAdjustments

A set of adjustments that manage scaling. These have the following structure:

func (PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationOutput

func (o PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationOutput() PolicyStepScalingPolicyConfigurationOutput

func (PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationOutputWithContext

func (o PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationOutput

func (PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationPtrOutput

func (o PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationPtrOutput() PolicyStepScalingPolicyConfigurationPtrOutput

func (PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext

func (o PolicyStepScalingPolicyConfigurationOutput) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationPtrOutput

type PolicyStepScalingPolicyConfigurationPtrInput

type PolicyStepScalingPolicyConfigurationPtrInput interface {
	pulumi.Input

	ToPolicyStepScalingPolicyConfigurationPtrOutput() PolicyStepScalingPolicyConfigurationPtrOutput
	ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext(context.Context) PolicyStepScalingPolicyConfigurationPtrOutput
}

PolicyStepScalingPolicyConfigurationPtrInput is an input type that accepts PolicyStepScalingPolicyConfigurationArgs, PolicyStepScalingPolicyConfigurationPtr and PolicyStepScalingPolicyConfigurationPtrOutput values. You can construct a concrete instance of `PolicyStepScalingPolicyConfigurationPtrInput` via:

		 PolicyStepScalingPolicyConfigurationArgs{...}

 or:

		 nil

type PolicyStepScalingPolicyConfigurationPtrOutput

type PolicyStepScalingPolicyConfigurationPtrOutput struct{ *pulumi.OutputState }

func (PolicyStepScalingPolicyConfigurationPtrOutput) AdjustmentType

Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.

func (PolicyStepScalingPolicyConfigurationPtrOutput) Cooldown

The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.

func (PolicyStepScalingPolicyConfigurationPtrOutput) Elem

func (PolicyStepScalingPolicyConfigurationPtrOutput) ElementType

func (PolicyStepScalingPolicyConfigurationPtrOutput) MetricAggregationType

The aggregation type for the policy's metrics. Valid values are "Minimum", "Maximum", and "Average". Without a value, AWS will treat the aggregation type as "Average".

func (PolicyStepScalingPolicyConfigurationPtrOutput) MinAdjustmentMagnitude

The minimum number to adjust your scalable dimension as a result of a scaling activity. If the adjustment type is PercentChangeInCapacity, the scaling policy changes the scalable dimension of the scalable target by this amount.

func (PolicyStepScalingPolicyConfigurationPtrOutput) StepAdjustments

A set of adjustments that manage scaling. These have the following structure:

func (PolicyStepScalingPolicyConfigurationPtrOutput) ToPolicyStepScalingPolicyConfigurationPtrOutput

func (o PolicyStepScalingPolicyConfigurationPtrOutput) ToPolicyStepScalingPolicyConfigurationPtrOutput() PolicyStepScalingPolicyConfigurationPtrOutput

func (PolicyStepScalingPolicyConfigurationPtrOutput) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext

func (o PolicyStepScalingPolicyConfigurationPtrOutput) ToPolicyStepScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationPtrOutput

type PolicyStepScalingPolicyConfigurationStepAdjustment

type PolicyStepScalingPolicyConfigurationStepAdjustment struct {
	// The lower bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as negative infinity.
	MetricIntervalLowerBound *string `pulumi:"metricIntervalLowerBound"`
	// The upper bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as infinity. The upper bound must be greater than the lower bound.
	MetricIntervalUpperBound *string `pulumi:"metricIntervalUpperBound"`
	// The number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.
	ScalingAdjustment int `pulumi:"scalingAdjustment"`
}

type PolicyStepScalingPolicyConfigurationStepAdjustmentArgs

type PolicyStepScalingPolicyConfigurationStepAdjustmentArgs struct {
	// The lower bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as negative infinity.
	MetricIntervalLowerBound pulumi.StringPtrInput `pulumi:"metricIntervalLowerBound"`
	// The upper bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as infinity. The upper bound must be greater than the lower bound.
	MetricIntervalUpperBound pulumi.StringPtrInput `pulumi:"metricIntervalUpperBound"`
	// The number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.
	ScalingAdjustment pulumi.IntInput `pulumi:"scalingAdjustment"`
}

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArgs) ElementType

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArgs) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutput

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArgs) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutputWithContext

func (i PolicyStepScalingPolicyConfigurationStepAdjustmentArgs) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentOutput

type PolicyStepScalingPolicyConfigurationStepAdjustmentArray

type PolicyStepScalingPolicyConfigurationStepAdjustmentArray []PolicyStepScalingPolicyConfigurationStepAdjustmentInput

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArray) ElementType

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArray) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

func (i PolicyStepScalingPolicyConfigurationStepAdjustmentArray) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput() PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArray) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutputWithContext

func (i PolicyStepScalingPolicyConfigurationStepAdjustmentArray) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

type PolicyStepScalingPolicyConfigurationStepAdjustmentArrayInput

type PolicyStepScalingPolicyConfigurationStepAdjustmentArrayInput interface {
	pulumi.Input

	ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput() PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput
	ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutputWithContext(context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput
}

PolicyStepScalingPolicyConfigurationStepAdjustmentArrayInput is an input type that accepts PolicyStepScalingPolicyConfigurationStepAdjustmentArray and PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput values. You can construct a concrete instance of `PolicyStepScalingPolicyConfigurationStepAdjustmentArrayInput` via:

PolicyStepScalingPolicyConfigurationStepAdjustmentArray{ PolicyStepScalingPolicyConfigurationStepAdjustmentArgs{...} }

type PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

type PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput struct{ *pulumi.OutputState }

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput) ElementType

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput) Index

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

func (PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutputWithContext

func (o PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentArrayOutput

type PolicyStepScalingPolicyConfigurationStepAdjustmentInput

type PolicyStepScalingPolicyConfigurationStepAdjustmentInput interface {
	pulumi.Input

	ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutput() PolicyStepScalingPolicyConfigurationStepAdjustmentOutput
	ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutputWithContext(context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentOutput
}

PolicyStepScalingPolicyConfigurationStepAdjustmentInput is an input type that accepts PolicyStepScalingPolicyConfigurationStepAdjustmentArgs and PolicyStepScalingPolicyConfigurationStepAdjustmentOutput values. You can construct a concrete instance of `PolicyStepScalingPolicyConfigurationStepAdjustmentInput` via:

PolicyStepScalingPolicyConfigurationStepAdjustmentArgs{...}

type PolicyStepScalingPolicyConfigurationStepAdjustmentOutput

type PolicyStepScalingPolicyConfigurationStepAdjustmentOutput struct{ *pulumi.OutputState }

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) ElementType

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) MetricIntervalLowerBound

The lower bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as negative infinity.

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) MetricIntervalUpperBound

The upper bound for the difference between the alarm threshold and the CloudWatch metric. Without a value, AWS will treat this bound as infinity. The upper bound must be greater than the lower bound.

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) ScalingAdjustment

The number of members by which to scale, when the adjustment bounds are breached. A positive value scales up. A negative value scales down.

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutput

func (PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutputWithContext

func (o PolicyStepScalingPolicyConfigurationStepAdjustmentOutput) ToPolicyStepScalingPolicyConfigurationStepAdjustmentOutputWithContext(ctx context.Context) PolicyStepScalingPolicyConfigurationStepAdjustmentOutput

type PolicyTargetTrackingScalingPolicyConfiguration

type PolicyTargetTrackingScalingPolicyConfiguration struct {
	// A custom CloudWatch metric. Documentation can be found  at: [AWS Customized Metric Specification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_CustomizedMetricSpecification.html). See supported fields below.
	CustomizedMetricSpecification *PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecification `pulumi:"customizedMetricSpecification"`
	// 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`.
	DisableScaleIn *bool `pulumi:"disableScaleIn"`
	// A predefined metric. See supported fields below.
	PredefinedMetricSpecification *PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecification `pulumi:"predefinedMetricSpecification"`
	// The amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
	ScaleInCooldown *int `pulumi:"scaleInCooldown"`
	// The amount of time, in seconds, after a scale out activity completes before another scale out activity can start.
	ScaleOutCooldown *int `pulumi:"scaleOutCooldown"`
	// The target value for the metric.
	TargetValue float64 `pulumi:"targetValue"`
}

type PolicyTargetTrackingScalingPolicyConfigurationArgs

type PolicyTargetTrackingScalingPolicyConfigurationArgs struct {
	// A custom CloudWatch metric. Documentation can be found  at: [AWS Customized Metric Specification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_CustomizedMetricSpecification.html). See supported fields below.
	CustomizedMetricSpecification PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrInput `pulumi:"customizedMetricSpecification"`
	// 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`.
	DisableScaleIn pulumi.BoolPtrInput `pulumi:"disableScaleIn"`
	// A predefined metric. See supported fields below.
	PredefinedMetricSpecification PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrInput `pulumi:"predefinedMetricSpecification"`
	// The amount of time, in seconds, after a scale in activity completes before another scale in activity can start.
	ScaleInCooldown pulumi.IntPtrInput `pulumi:"scaleInCooldown"`
	// The amount of time, in seconds, after a scale out activity completes before another scale out activity can start.
	ScaleOutCooldown pulumi.IntPtrInput `pulumi:"scaleOutCooldown"`
	// The target value for the metric.
	TargetValue pulumi.Float64Input `pulumi:"targetValue"`
}

func (PolicyTargetTrackingScalingPolicyConfigurationArgs) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationOutput

func (i PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationOutput() PolicyTargetTrackingScalingPolicyConfigurationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationOutputWithContext

func (i PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationOutputWithContext(ctx context.Context) PolicyTargetTrackingScalingPolicyConfigurationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput

func (i PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput() PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext

func (i PolicyTargetTrackingScalingPolicyConfigurationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecification

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecification struct {
	// Configuration block(s) with the dimensions of the metric if the metric was published with dimensions. Detailed below.
	Dimensions []PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimension `pulumi:"dimensions"`
	// The name of the metric.
	MetricName string `pulumi:"metricName"`
	// The namespace of the metric.
	Namespace string `pulumi:"namespace"`
	// The statistic of the metric. Valid values: `Average`, `Minimum`, `Maximum`, `SampleCount`, and `Sum`.
	Statistic string `pulumi:"statistic"`
	// The unit of the metric.
	Unit *string `pulumi:"unit"`
}

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs struct {
	// Configuration block(s) with the dimensions of the metric if the metric was published with dimensions. Detailed below.
	Dimensions PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayInput `pulumi:"dimensions"`
	// The name of the metric.
	MetricName pulumi.StringInput `pulumi:"metricName"`
	// The namespace of the metric.
	Namespace pulumi.StringInput `pulumi:"namespace"`
	// The statistic of the metric. Valid values: `Average`, `Minimum`, `Maximum`, `SampleCount`, and `Sum`.
	Statistic pulumi.StringInput `pulumi:"statistic"`
	// The unit of the metric.
	Unit pulumi.StringPtrInput `pulumi:"unit"`
}

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimension

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimension struct {
	// The name of the policy.
	Name string `pulumi:"name"`
	// Value of the dimension.
	Value string `pulumi:"value"`
}

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs struct {
	// The name of the policy.
	Name pulumi.StringInput `pulumi:"name"`
	// Value of the dimension.
	Value pulumi.StringInput `pulumi:"value"`
}

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray []PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionInput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayInput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput() PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput
}

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray and PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayInput` via:

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArray{ PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs{...} }

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArrayOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionInput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput() PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput
}

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs and PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionInput` via:

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionArgs{...}

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput) Name

The name of the policy.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationDimensionOutput) Value

Value of the dimension.

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationInput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput() PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput
}

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs and PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationInput` via:

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs{...}

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) Dimensions

Configuration block(s) with the dimensions of the metric if the metric was published with dimensions. Detailed below.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) MetricName

The name of the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) Namespace

The namespace of the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) Statistic

The statistic of the metric. Valid values: `Average`, `Minimum`, `Maximum`, `SampleCount`, and `Sum`.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationOutput) Unit

The unit of the metric.

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrInput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput() PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput
}

PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs, PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtr and PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrInput` via:

		 PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationArgs{...}

 or:

		 nil

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput

type PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) Dimensions

Configuration block(s) with the dimensions of the metric if the metric was published with dimensions. Detailed below.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) MetricName

The name of the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) Namespace

The namespace of the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) Statistic

The statistic of the metric. Valid values: `Average`, `Minimum`, `Maximum`, `SampleCount`, and `Sum`.

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationCustomizedMetricSpecificationPtrOutput) Unit

The unit of the metric.

type PolicyTargetTrackingScalingPolicyConfigurationInput

type PolicyTargetTrackingScalingPolicyConfigurationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationOutput() PolicyTargetTrackingScalingPolicyConfigurationOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationOutput
}

PolicyTargetTrackingScalingPolicyConfigurationInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationArgs and PolicyTargetTrackingScalingPolicyConfigurationOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationInput` via:

PolicyTargetTrackingScalingPolicyConfigurationArgs{...}

type PolicyTargetTrackingScalingPolicyConfigurationOutput

type PolicyTargetTrackingScalingPolicyConfigurationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) CustomizedMetricSpecification

A custom CloudWatch metric. Documentation can be found at: [AWS Customized Metric Specification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_CustomizedMetricSpecification.html). See supported fields below.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) DisableScaleIn

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`.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) PredefinedMetricSpecification

A predefined metric. See supported fields below.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ScaleInCooldown

The amount of time, in seconds, after a scale in activity completes before another scale in activity can start.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ScaleOutCooldown

The amount of time, in seconds, after a scale out activity completes before another scale out activity can start.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) TargetValue

The target value for the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationOutputWithContext

func (o PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationOutputWithContext(ctx context.Context) PolicyTargetTrackingScalingPolicyConfigurationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput

func (o PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput() PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext

func (o PolicyTargetTrackingScalingPolicyConfigurationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecification

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecification struct {
	// The metric type.
	PredefinedMetricType string `pulumi:"predefinedMetricType"`
	// Reserved for future use.
	ResourceLabel *string `pulumi:"resourceLabel"`
}

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs struct {
	// The metric type.
	PredefinedMetricType pulumi.StringInput `pulumi:"predefinedMetricType"`
	// Reserved for future use.
	ResourceLabel pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationInput

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput() PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput
}

PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs and PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationInput` via:

PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs{...}

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) PredefinedMetricType

The metric type.

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ResourceLabel

Reserved for future use.

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutputWithContext

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrInput

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput() PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput
}

PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs, PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtr and PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrInput` via:

		 PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationArgs{...}

 or:

		 nil

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput

type PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput) PredefinedMetricType

The metric type.

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput) ResourceLabel

Reserved for future use.

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPredefinedMetricSpecificationPtrOutputWithContext

type PolicyTargetTrackingScalingPolicyConfigurationPtrInput

type PolicyTargetTrackingScalingPolicyConfigurationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput() PolicyTargetTrackingScalingPolicyConfigurationPtrOutput
	ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext(context.Context) PolicyTargetTrackingScalingPolicyConfigurationPtrOutput
}

PolicyTargetTrackingScalingPolicyConfigurationPtrInput is an input type that accepts PolicyTargetTrackingScalingPolicyConfigurationArgs, PolicyTargetTrackingScalingPolicyConfigurationPtr and PolicyTargetTrackingScalingPolicyConfigurationPtrOutput values. You can construct a concrete instance of `PolicyTargetTrackingScalingPolicyConfigurationPtrInput` via:

		 PolicyTargetTrackingScalingPolicyConfigurationArgs{...}

 or:

		 nil

type PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

type PolicyTargetTrackingScalingPolicyConfigurationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) CustomizedMetricSpecification

A custom CloudWatch metric. Documentation can be found at: [AWS Customized Metric Specification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_CustomizedMetricSpecification.html). See supported fields below.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) DisableScaleIn

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`.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) Elem

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ElementType

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) PredefinedMetricSpecification

A predefined metric. See supported fields below.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ScaleInCooldown

The amount of time, in seconds, after a scale in activity completes before another scale in activity can start.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ScaleOutCooldown

The amount of time, in seconds, after a scale out activity completes before another scale out activity can start.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) TargetValue

The target value for the metric.

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutput

func (PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext

func (o PolicyTargetTrackingScalingPolicyConfigurationPtrOutput) ToPolicyTargetTrackingScalingPolicyConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingScalingPolicyConfigurationPtrOutput

type ScheduledAction

type ScheduledAction struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the scheduled action.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z
	EndTime pulumi.StringPtrOutput `pulumi:"endTime"`
	// The name of the scheduled action.
	Name pulumi.StringOutput `pulumi:"name"`
	// The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ResourceId)
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// The scalable dimension. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ScalableDimension) Example: ecs:service:DesiredCount
	ScalableDimension pulumi.StringPtrOutput `pulumi:"scalableDimension"`
	// The new minimum and maximum capacity. You can set both values or just one. See below
	ScalableTargetAction ScheduledActionScalableTargetActionPtrOutput `pulumi:"scalableTargetAction"`
	// 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](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-Schedule)
	Schedule pulumi.StringPtrOutput `pulumi:"schedule"`
	// The namespace of the AWS service. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ServiceNamespace) Example: ecs
	ServiceNamespace pulumi.StringOutput `pulumi:"serviceNamespace"`
	// The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z
	StartTime pulumi.StringPtrOutput `pulumi:"startTime"`
}

Provides an Application AutoScaling ScheduledAction resource.

## Example Usage

### DynamoDB Table Autoscaling

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/appautoscaling"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dynamodbTarget, err := appautoscaling.NewTarget(ctx, "dynamodbTarget", &appautoscaling.TargetArgs{
			MaxCapacity:       pulumi.Int(100),
			MinCapacity:       pulumi.Int(5),
			ResourceId:        pulumi.String("table/tableName"),
			ScalableDimension: pulumi.String("dynamodb:table:ReadCapacityUnits"),
			ServiceNamespace:  pulumi.String("dynamodb"),
		})
		if err != nil {
			return err
		}
		dynamodbScheduledAction, err := appautoscaling.NewScheduledAction(ctx, "dynamodbScheduledAction", &appautoscaling.ScheduledActionArgs{
			ResourceId:        dynamodbTarget.ResourceId,
			ScalableDimension: dynamodbTarget.ScalableDimension,
			ScalableTargetAction: &appautoscaling.ScheduledActionScalableTargetActionArgs{
				MaxCapacity: pulumi.Int(200),
				MinCapacity: pulumi.Int(1),
			},
			Schedule:         pulumi.String("at(2006-01-02T15:04:05)"),
			ServiceNamespace: dynamodbTarget.ServiceNamespace,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### ECS Service Autoscaling

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v2/go/aws/appautoscaling"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ecsTarget, err := appautoscaling.NewTarget(ctx, "ecsTarget", &appautoscaling.TargetArgs{
			MaxCapacity:       pulumi.Int(4),
			MinCapacity:       pulumi.Int(1),
			ResourceId:        pulumi.String("service/clusterName/serviceName"),
			ScalableDimension: pulumi.String("ecs:service:DesiredCount"),
			ServiceNamespace:  pulumi.String("ecs"),
		})
		if err != nil {
			return err
		}
		ecsScheduledAction, err := appautoscaling.NewScheduledAction(ctx, "ecsScheduledAction", &appautoscaling.ScheduledActionArgs{
			ResourceId:        ecsTarget.ResourceId,
			ScalableDimension: ecsTarget.ScalableDimension,
			ScalableTargetAction: &appautoscaling.ScheduledActionScalableTargetActionArgs{
				MaxCapacity: pulumi.Int(10),
				MinCapacity: pulumi.Int(1),
			},
			Schedule:         pulumi.String("at(2006-01-02T15:04:05)"),
			ServiceNamespace: ecsTarget.ServiceNamespace,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetScheduledAction

func GetScheduledAction(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScheduledActionState, opts ...pulumi.ResourceOption) (*ScheduledAction, error)

GetScheduledAction gets an existing ScheduledAction resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewScheduledAction

func NewScheduledAction(ctx *pulumi.Context,
	name string, args *ScheduledActionArgs, opts ...pulumi.ResourceOption) (*ScheduledAction, error)

NewScheduledAction registers a new resource with the given unique name, arguments, and options.

type ScheduledActionArgs

type ScheduledActionArgs struct {
	// The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z
	EndTime pulumi.StringPtrInput
	// The name of the scheduled action.
	Name pulumi.StringPtrInput
	// The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ResourceId)
	ResourceId pulumi.StringInput
	// The scalable dimension. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ScalableDimension) Example: ecs:service:DesiredCount
	ScalableDimension pulumi.StringPtrInput
	// The new minimum and maximum capacity. You can set both values or just one. See below
	ScalableTargetAction ScheduledActionScalableTargetActionPtrInput
	// 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](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-Schedule)
	Schedule pulumi.StringPtrInput
	// The namespace of the AWS service. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ServiceNamespace) Example: ecs
	ServiceNamespace pulumi.StringInput
	// The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z
	StartTime pulumi.StringPtrInput
}

The set of arguments for constructing a ScheduledAction resource.

func (ScheduledActionArgs) ElementType

func (ScheduledActionArgs) ElementType() reflect.Type

type ScheduledActionScalableTargetAction

type ScheduledActionScalableTargetAction struct {
	// The maximum capacity.
	MaxCapacity *int `pulumi:"maxCapacity"`
	// The minimum capacity.
	MinCapacity *int `pulumi:"minCapacity"`
}

type ScheduledActionScalableTargetActionArgs

type ScheduledActionScalableTargetActionArgs struct {
	// The maximum capacity.
	MaxCapacity pulumi.IntPtrInput `pulumi:"maxCapacity"`
	// The minimum capacity.
	MinCapacity pulumi.IntPtrInput `pulumi:"minCapacity"`
}

func (ScheduledActionScalableTargetActionArgs) ElementType

func (ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionOutput

func (i ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionOutput() ScheduledActionScalableTargetActionOutput

func (ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionOutputWithContext

func (i ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionOutputWithContext(ctx context.Context) ScheduledActionScalableTargetActionOutput

func (ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionPtrOutput

func (i ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionPtrOutput() ScheduledActionScalableTargetActionPtrOutput

func (ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionPtrOutputWithContext

func (i ScheduledActionScalableTargetActionArgs) ToScheduledActionScalableTargetActionPtrOutputWithContext(ctx context.Context) ScheduledActionScalableTargetActionPtrOutput

type ScheduledActionScalableTargetActionInput

type ScheduledActionScalableTargetActionInput interface {
	pulumi.Input

	ToScheduledActionScalableTargetActionOutput() ScheduledActionScalableTargetActionOutput
	ToScheduledActionScalableTargetActionOutputWithContext(context.Context) ScheduledActionScalableTargetActionOutput
}

ScheduledActionScalableTargetActionInput is an input type that accepts ScheduledActionScalableTargetActionArgs and ScheduledActionScalableTargetActionOutput values. You can construct a concrete instance of `ScheduledActionScalableTargetActionInput` via:

ScheduledActionScalableTargetActionArgs{...}

type ScheduledActionScalableTargetActionOutput

type ScheduledActionScalableTargetActionOutput struct{ *pulumi.OutputState }

func (ScheduledActionScalableTargetActionOutput) ElementType

func (ScheduledActionScalableTargetActionOutput) MaxCapacity

The maximum capacity.

func (ScheduledActionScalableTargetActionOutput) MinCapacity

The minimum capacity.

func (ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionOutput

func (o ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionOutput() ScheduledActionScalableTargetActionOutput

func (ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionOutputWithContext

func (o ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionOutputWithContext(ctx context.Context) ScheduledActionScalableTargetActionOutput

func (ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionPtrOutput

func (o ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionPtrOutput() ScheduledActionScalableTargetActionPtrOutput

func (ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionPtrOutputWithContext

func (o ScheduledActionScalableTargetActionOutput) ToScheduledActionScalableTargetActionPtrOutputWithContext(ctx context.Context) ScheduledActionScalableTargetActionPtrOutput

type ScheduledActionScalableTargetActionPtrInput

type ScheduledActionScalableTargetActionPtrInput interface {
	pulumi.Input

	ToScheduledActionScalableTargetActionPtrOutput() ScheduledActionScalableTargetActionPtrOutput
	ToScheduledActionScalableTargetActionPtrOutputWithContext(context.Context) ScheduledActionScalableTargetActionPtrOutput
}

ScheduledActionScalableTargetActionPtrInput is an input type that accepts ScheduledActionScalableTargetActionArgs, ScheduledActionScalableTargetActionPtr and ScheduledActionScalableTargetActionPtrOutput values. You can construct a concrete instance of `ScheduledActionScalableTargetActionPtrInput` via:

		 ScheduledActionScalableTargetActionArgs{...}

 or:

		 nil

type ScheduledActionScalableTargetActionPtrOutput

type ScheduledActionScalableTargetActionPtrOutput struct{ *pulumi.OutputState }

func (ScheduledActionScalableTargetActionPtrOutput) Elem

func (ScheduledActionScalableTargetActionPtrOutput) ElementType

func (ScheduledActionScalableTargetActionPtrOutput) MaxCapacity

The maximum capacity.

func (ScheduledActionScalableTargetActionPtrOutput) MinCapacity

The minimum capacity.

func (ScheduledActionScalableTargetActionPtrOutput) ToScheduledActionScalableTargetActionPtrOutput

func (o ScheduledActionScalableTargetActionPtrOutput) ToScheduledActionScalableTargetActionPtrOutput() ScheduledActionScalableTargetActionPtrOutput

func (ScheduledActionScalableTargetActionPtrOutput) ToScheduledActionScalableTargetActionPtrOutputWithContext

func (o ScheduledActionScalableTargetActionPtrOutput) ToScheduledActionScalableTargetActionPtrOutputWithContext(ctx context.Context) ScheduledActionScalableTargetActionPtrOutput

type ScheduledActionState

type ScheduledActionState struct {
	// The Amazon Resource Name (ARN) of the scheduled action.
	Arn pulumi.StringPtrInput
	// The date and time for the scheduled action to end. Specify the following format: 2006-01-02T15:04:05Z
	EndTime pulumi.StringPtrInput
	// The name of the scheduled action.
	Name pulumi.StringPtrInput
	// The identifier of the resource associated with the scheduled action. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ResourceId)
	ResourceId pulumi.StringPtrInput
	// The scalable dimension. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ScalableDimension) Example: ecs:service:DesiredCount
	ScalableDimension pulumi.StringPtrInput
	// The new minimum and maximum capacity. You can set both values or just one. See below
	ScalableTargetAction ScheduledActionScalableTargetActionPtrInput
	// 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](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-Schedule)
	Schedule pulumi.StringPtrInput
	// The namespace of the AWS service. Documentation can be found in the parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_PutScheduledAction.html#ApplicationAutoScaling-PutScheduledAction-request-ServiceNamespace) Example: ecs
	ServiceNamespace pulumi.StringPtrInput
	// The date and time for the scheduled action to start. Specify the following format: 2006-01-02T15:04:05Z
	StartTime pulumi.StringPtrInput
}

func (ScheduledActionState) ElementType

func (ScheduledActionState) ElementType() reflect.Type

type Target

type Target struct {
	pulumi.CustomResourceState

	// The max capacity of the scalable target.
	MaxCapacity pulumi.IntOutput `pulumi:"maxCapacity"`
	// The min capacity of the scalable target.
	MinCapacity pulumi.IntOutput `pulumi:"minCapacity"`
	// 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](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf. This defaults to an IAM Service-Linked Role for most services and custom IAM Roles are ignored by the API for those namespaces. See the [AWS Application Auto Scaling documentation](https://docs.aws.amazon.com/autoscaling/application/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-roles) for more information about how this service interacts with IAM.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringOutput `pulumi:"scalableDimension"`
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringOutput `pulumi:"serviceNamespace"`
}

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

> **NOTE:** The [Application Auto Scaling service automatically attempts to manage IAM Service-Linked Roles](https://docs.aws.amazon.com/autoscaling/application/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-roles) when registering certain service namespaces for the first time. To manually manage this role, see the `iam.ServiceLinkedRole` resource.

func GetTarget

func GetTarget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TargetState, opts ...pulumi.ResourceOption) (*Target, error)

GetTarget gets an existing Target resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTarget

func NewTarget(ctx *pulumi.Context,
	name string, args *TargetArgs, opts ...pulumi.ResourceOption) (*Target, error)

NewTarget registers a new resource with the given unique name, arguments, and options.

type TargetArgs

type TargetArgs struct {
	// The max capacity of the scalable target.
	MaxCapacity pulumi.IntInput
	// The min capacity of the scalable target.
	MinCapacity pulumi.IntInput
	// 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](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringInput
	// The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf. This defaults to an IAM Service-Linked Role for most services and custom IAM Roles are ignored by the API for those namespaces. See the [AWS Application Auto Scaling documentation](https://docs.aws.amazon.com/autoscaling/application/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-roles) for more information about how this service interacts with IAM.
	RoleArn pulumi.StringPtrInput
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringInput
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringInput
}

The set of arguments for constructing a Target resource.

func (TargetArgs) ElementType

func (TargetArgs) ElementType() reflect.Type

type TargetState

type TargetState struct {
	// The max capacity of the scalable target.
	MaxCapacity pulumi.IntPtrInput
	// The min capacity of the scalable target.
	MinCapacity pulumi.IntPtrInput
	// 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](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ResourceId pulumi.StringPtrInput
	// The ARN of the IAM role that allows Application AutoScaling to modify your scalable target on your behalf. This defaults to an IAM Service-Linked Role for most services and custom IAM Roles are ignored by the API for those namespaces. See the [AWS Application Auto Scaling documentation](https://docs.aws.amazon.com/autoscaling/application/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-roles) for more information about how this service interacts with IAM.
	RoleArn pulumi.StringPtrInput
	// The scalable dimension of the scalable target. Documentation can be found in the `ScalableDimension` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ScalableDimension pulumi.StringPtrInput
	// The AWS service namespace of the scalable target. Documentation can be found in the `ServiceNamespace` parameter at: [AWS Application Auto Scaling API Reference](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_RegisterScalableTarget.html#API_RegisterScalableTarget_RequestParameters)
	ServiceNamespace pulumi.StringPtrInput
}

func (TargetState) ElementType

func (TargetState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL