autoscaling

package
v1.27.0 Latest Latest
Warning

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

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

Documentation

Overview

nolint: lll

nolint: lll

nolint: lll

nolint: lll

nolint: lll

nolint: lll

nolint: lll

nolint: lll

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Attachment

type Attachment struct {
	pulumi.CustomResourceState

	// The ARN of an ALB Target Group.
	AlbTargetGroupArn pulumi.StringPtrOutput `pulumi:"albTargetGroupArn"`
	// Name of ASG to associate with the ELB.
	AutoscalingGroupName pulumi.StringOutput `pulumi:"autoscalingGroupName"`
	// The name of the ELB.
	Elb pulumi.StringPtrOutput `pulumi:"elb"`
}

Provides an AutoScaling Attachment resource.

> **NOTE on AutoScaling Groups and ASG Attachments:** This provider currently provides both a standalone ASG Attachment resource (describing an ASG attached to an ELB), and an AutoScaling Group resource with `loadBalancers` defined in-line. At this time you cannot use an ASG with in-line load balancers in conjunction with an ASG Attachment resource. Doing so will cause a conflict and will overwrite attachments.

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

func GetAttachment

func GetAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AttachmentState, opts ...pulumi.ResourceOption) (*Attachment, error)

GetAttachment gets an existing Attachment 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 NewAttachment

func NewAttachment(ctx *pulumi.Context,
	name string, args *AttachmentArgs, opts ...pulumi.ResourceOption) (*Attachment, error)

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

type AttachmentArgs

type AttachmentArgs struct {
	// The ARN of an ALB Target Group.
	AlbTargetGroupArn pulumi.StringPtrInput
	// Name of ASG to associate with the ELB.
	AutoscalingGroupName pulumi.StringInput
	// The name of the ELB.
	Elb pulumi.StringPtrInput
}

The set of arguments for constructing a Attachment resource.

func (AttachmentArgs) ElementType added in v1.19.0

func (AttachmentArgs) ElementType() reflect.Type

type AttachmentState

type AttachmentState struct {
	// The ARN of an ALB Target Group.
	AlbTargetGroupArn pulumi.StringPtrInput
	// Name of ASG to associate with the ELB.
	AutoscalingGroupName pulumi.StringPtrInput
	// The name of the ELB.
	Elb pulumi.StringPtrInput
}

func (AttachmentState) ElementType added in v1.19.0

func (AttachmentState) ElementType() reflect.Type

type Group

type Group struct {
	pulumi.CustomResourceState

	// The ARN for this AutoScaling Group
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A list of one or more availability zones for the group. This parameter should not be specified when using `vpcZoneIdentifier`.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// The amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	DefaultCooldown pulumi.IntOutput `pulumi:"defaultCooldown"`
	// The number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	DesiredCapacity pulumi.IntOutput `pulumi:"desiredCapacity"`
	// A list of metrics to collect. The allowed values are `GroupDesiredCapacity`, `GroupInServiceCapacity`, `GroupPendingCapacity`, `GroupMinSize`, `GroupMaxSize`, `GroupInServiceInstances`, `GroupPendingInstances`, `GroupStandbyInstances`, `GroupStandbyCapacity`, `GroupTerminatingCapacity`, `GroupTerminatingInstances`, `GroupTotalCapacity`, `GroupTotalInstances`.
	// * `waitForCapacityTimeout` (Default: "10m") A maximum
	// [duration](https://golang.org/pkg/time/#ParseDuration) that this provider should
	// wait for ASG instances to be healthy before timing out.  (See also Waiting
	// for Capacity below.) Setting this to "0" causes
	// this provider to skip all Capacity Waiting behavior.
	EnabledMetrics pulumi.StringArrayOutput `pulumi:"enabledMetrics"`
	// Allows deleting the autoscaling group without waiting
	// for all instances in the pool to terminate.  You can force an autoscaling group to delete
	// even if it's in the process of scaling a resource. Normally, this provider
	// drains all the instances before deleting the group.  This bypasses that
	// behavior and potentially leaves resources dangling.
	ForceDelete pulumi.BoolPtrOutput `pulumi:"forceDelete"`
	// Time (in seconds) after instance comes into service before checking health.
	HealthCheckGracePeriod pulumi.IntPtrOutput `pulumi:"healthCheckGracePeriod"`
	// "EC2" or "ELB". Controls how health checking is done.
	HealthCheckType pulumi.StringOutput `pulumi:"healthCheckType"`
	// One or more
	// [Lifecycle Hooks](http://docs.aws.amazon.com/autoscaling/latest/userguide/lifecycle-hooks.html)
	// to attach to the autoscaling group **before** instances are launched. The
	// syntax is exactly the same as the separate
	// [`autoscaling.LifecycleHook`](https://www.terraform.io/docs/providers/aws/r/autoscaling_lifecycle_hook.html)
	// resource, without the `autoscalingGroupName` attribute. Please note that this will only work when creating
	// a new autoscaling group. For all other use-cases, please use `autoscaling.LifecycleHook` resource.
	InitialLifecycleHooks GroupInitialLifecycleHookArrayOutput `pulumi:"initialLifecycleHooks"`
	// The name of the launch configuration to use.
	LaunchConfiguration pulumi.StringPtrOutput `pulumi:"launchConfiguration"`
	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate GroupLaunchTemplatePtrOutput `pulumi:"launchTemplate"`
	// A list of elastic load balancer names to add to the autoscaling
	// group names. Only valid for classic load balancers. For ALBs, use `targetGroupArns` instead.
	LoadBalancers pulumi.StringArrayOutput `pulumi:"loadBalancers"`
	// The maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 604800 and 31536000 seconds.
	MaxInstanceLifetime pulumi.IntPtrOutput `pulumi:"maxInstanceLifetime"`
	// The maximum size of the auto scale group.
	MaxSize pulumi.IntOutput `pulumi:"maxSize"`
	// The granularity to associate with the metrics to collect. The only valid value is `1Minute`. Default is `1Minute`.
	MetricsGranularity pulumi.StringPtrOutput `pulumi:"metricsGranularity"`
	// Setting this causes this provider to wait for
	// this number of instances from this autoscaling group to show up healthy in the
	// ELB only on creation. Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	MinElbCapacity pulumi.IntPtrOutput `pulumi:"minElbCapacity"`
	// The minimum size of the auto scale group.
	// (See also Waiting for Capacity below.)
	MinSize pulumi.IntOutput `pulumi:"minSize"`
	// Configuration block containing settings to define launch targets for Auto Scaling groups. Defined below.
	MixedInstancesPolicy GroupMixedInstancesPolicyPtrOutput `pulumi:"mixedInstancesPolicy"`
	// The name of the auto scaling group. By default generated by this provider.
	Name pulumi.StringOutput `pulumi:"name"`
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrOutput `pulumi:"namePrefix"`
	// The name of the placement group into which you'll launch your instances, if any.
	PlacementGroup pulumi.StringPtrOutput `pulumi:"placementGroup"`
	// Allows setting instance protection. The
	// autoscaling group will not select instances with this setting for terminination
	// during scale in events.
	ProtectFromScaleIn pulumi.BoolPtrOutput `pulumi:"protectFromScaleIn"`
	// The ARN of the service-linked role that the ASG will use to call other AWS services
	ServiceLinkedRoleArn pulumi.StringOutput `pulumi:"serviceLinkedRoleArn"`
	// A list of processes to suspend for the AutoScaling Group. The allowed values are `Launch`, `Terminate`, `HealthCheck`, `ReplaceUnhealthy`, `AZRebalance`, `AlarmNotification`, `ScheduledActions`, `AddToLoadBalancer`.
	// Note that if you suspend either the `Launch` or `Terminate` process types, it can prevent your autoscaling group from functioning properly.
	SuspendedProcesses pulumi.StringArrayOutput `pulumi:"suspendedProcesses"`
	// A list of tag blocks. Tags documented below.
	Tags GroupTagArrayOutput `pulumi:"tags"`
	// A list of tag blocks (maps). Tags documented below.
	TagsCollection pulumi.MapArrayOutput `pulumi:"tagsCollection"`
	// A list of `alb.TargetGroup` ARNs, for use with Application or Network Load Balancing.
	TargetGroupArns pulumi.StringArrayOutput `pulumi:"targetGroupArns"`
	// A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are `OldestInstance`, `NewestInstance`, `OldestLaunchConfiguration`, `ClosestToNextInstanceHour`, `OldestLaunchTemplate`, `AllocationStrategy`, `Default`.
	TerminationPolicies pulumi.StringArrayOutput `pulumi:"terminationPolicies"`
	// A list of subnet IDs to launch resources in.
	VpcZoneIdentifiers     pulumi.StringArrayOutput `pulumi:"vpcZoneIdentifiers"`
	WaitForCapacityTimeout pulumi.StringPtrOutput   `pulumi:"waitForCapacityTimeout"`
	// Setting this will cause this provider to wait
	// for exactly this number of healthy instances from this autoscaling group in
	// all attached load balancers on both create and update operations. (Takes
	// precedence over `minElbCapacity` behavior.)
	// (See also Waiting for Capacity below.)
	WaitForElbCapacity pulumi.IntPtrOutput `pulumi:"waitForElbCapacity"`
}

Provides an AutoScaling Group resource.

> **Note:** You must specify either `launchConfiguration`, `launchTemplate`, or `mixedInstancesPolicy`.

## Waiting for Capacity

A newly-created ASG is initially empty and begins to scale to `minSize` (or `desiredCapacity`, if specified) by launching instances using the provided Launch Configuration. These instances take time to launch and boot.

On ASG Update, changes to these values also take time to result in the target number of instances providing service.

This provider provides two mechanisms to help consistently manage ASG scale up time across dependent resources.

#### Waiting for ASG Capacity

The first is default behavior. This provider waits after ASG creation for `minSize` (or `desiredCapacity`, if specified) healthy instances to show up in the ASG before continuing.

If `minSize` or `desiredCapacity` are changed in a subsequent update, this provider will also wait for the correct number of healthy instances before continuing.

This provider considers an instance "healthy" when the ASG reports `HealthStatus: "Healthy"` and `LifecycleState: "InService"`. See the [AWS AutoScaling Docs](https://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/AutoScalingGroupLifecycle.html) for more information on an ASG's lifecycle.

This provider will wait for healthy instances for up to `waitForCapacityTimeout`. If ASG creation is taking more than a few minutes, it's worth investigating for scaling activity errors, which can be caused by problems with the selected Launch Configuration.

Setting `waitForCapacityTimeout` to `"0"` disables ASG Capacity waiting.

#### Waiting for ELB Capacity

The second mechanism is optional, and affects ASGs with attached ELBs specified via the `loadBalancers` attribute or with ALBs specified with `targetGroupArns`.

The `minElbCapacity` parameter causes this provider to wait for at least the requested number of instances to show up `"InService"` in all attached ELBs during ASG creation. It has no effect on ASG updates.

If `waitForElbCapacity` is set, this provider will wait for exactly that number of Instances to be `"InService"` in all attached ELBs on both creation and updates.

These parameters can be used to ensure that service is being provided before this provider moves on. If new instances don't pass the ELB's health checks for any reason, the deployment will time out, and the ASG will be marked as tainted (i.e. marked to be destroyed in a follow up run).

As with ASG Capacity, this provider will wait for up to `waitForCapacityTimeout` for the proper number of instances to be healthy.

#### Troubleshooting Capacity Waiting Timeouts

If ASG creation takes more than a few minutes, this could indicate one of a number of configuration problems. See the [AWS Docs on Load Balancer Troubleshooting](https://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-troubleshooting.html) for more information.

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

func GetGroup

func GetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupState, opts ...pulumi.ResourceOption) (*Group, error)

GetGroup gets an existing Group 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 NewGroup

func NewGroup(ctx *pulumi.Context,
	name string, args *GroupArgs, opts ...pulumi.ResourceOption) (*Group, error)

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

type GroupArgs

type GroupArgs struct {
	// A list of one or more availability zones for the group. This parameter should not be specified when using `vpcZoneIdentifier`.
	AvailabilityZones pulumi.StringArrayInput
	// The amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	DefaultCooldown pulumi.IntPtrInput
	// The number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	DesiredCapacity pulumi.IntPtrInput
	// A list of metrics to collect. The allowed values are `GroupDesiredCapacity`, `GroupInServiceCapacity`, `GroupPendingCapacity`, `GroupMinSize`, `GroupMaxSize`, `GroupInServiceInstances`, `GroupPendingInstances`, `GroupStandbyInstances`, `GroupStandbyCapacity`, `GroupTerminatingCapacity`, `GroupTerminatingInstances`, `GroupTotalCapacity`, `GroupTotalInstances`.
	// * `waitForCapacityTimeout` (Default: "10m") A maximum
	// [duration](https://golang.org/pkg/time/#ParseDuration) that this provider should
	// wait for ASG instances to be healthy before timing out.  (See also Waiting
	// for Capacity below.) Setting this to "0" causes
	// this provider to skip all Capacity Waiting behavior.
	EnabledMetrics pulumi.StringArrayInput
	// Allows deleting the autoscaling group without waiting
	// for all instances in the pool to terminate.  You can force an autoscaling group to delete
	// even if it's in the process of scaling a resource. Normally, this provider
	// drains all the instances before deleting the group.  This bypasses that
	// behavior and potentially leaves resources dangling.
	ForceDelete pulumi.BoolPtrInput
	// Time (in seconds) after instance comes into service before checking health.
	HealthCheckGracePeriod pulumi.IntPtrInput
	// "EC2" or "ELB". Controls how health checking is done.
	HealthCheckType pulumi.StringPtrInput
	// One or more
	// [Lifecycle Hooks](http://docs.aws.amazon.com/autoscaling/latest/userguide/lifecycle-hooks.html)
	// to attach to the autoscaling group **before** instances are launched. The
	// syntax is exactly the same as the separate
	// [`autoscaling.LifecycleHook`](https://www.terraform.io/docs/providers/aws/r/autoscaling_lifecycle_hook.html)
	// resource, without the `autoscalingGroupName` attribute. Please note that this will only work when creating
	// a new autoscaling group. For all other use-cases, please use `autoscaling.LifecycleHook` resource.
	InitialLifecycleHooks GroupInitialLifecycleHookArrayInput
	// The name of the launch configuration to use.
	LaunchConfiguration pulumi.Input
	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate GroupLaunchTemplatePtrInput
	// A list of elastic load balancer names to add to the autoscaling
	// group names. Only valid for classic load balancers. For ALBs, use `targetGroupArns` instead.
	LoadBalancers pulumi.StringArrayInput
	// The maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 604800 and 31536000 seconds.
	MaxInstanceLifetime pulumi.IntPtrInput
	// The maximum size of the auto scale group.
	MaxSize pulumi.IntInput
	// The granularity to associate with the metrics to collect. The only valid value is `1Minute`. Default is `1Minute`.
	MetricsGranularity pulumi.Input
	// Setting this causes this provider to wait for
	// this number of instances from this autoscaling group to show up healthy in the
	// ELB only on creation. Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	MinElbCapacity pulumi.IntPtrInput
	// The minimum size of the auto scale group.
	// (See also Waiting for Capacity below.)
	MinSize pulumi.IntInput
	// Configuration block containing settings to define launch targets for Auto Scaling groups. Defined below.
	MixedInstancesPolicy GroupMixedInstancesPolicyPtrInput
	// The name of the auto scaling group. By default generated by this provider.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The name of the placement group into which you'll launch your instances, if any.
	PlacementGroup pulumi.Input
	// Allows setting instance protection. The
	// autoscaling group will not select instances with this setting for terminination
	// during scale in events.
	ProtectFromScaleIn pulumi.BoolPtrInput
	// The ARN of the service-linked role that the ASG will use to call other AWS services
	ServiceLinkedRoleArn pulumi.StringPtrInput
	// A list of processes to suspend for the AutoScaling Group. The allowed values are `Launch`, `Terminate`, `HealthCheck`, `ReplaceUnhealthy`, `AZRebalance`, `AlarmNotification`, `ScheduledActions`, `AddToLoadBalancer`.
	// Note that if you suspend either the `Launch` or `Terminate` process types, it can prevent your autoscaling group from functioning properly.
	SuspendedProcesses pulumi.StringArrayInput
	// A list of tag blocks. Tags documented below.
	Tags GroupTagArrayInput
	// A list of tag blocks (maps). Tags documented below.
	TagsCollection pulumi.MapArrayInput
	// A list of `alb.TargetGroup` ARNs, for use with Application or Network Load Balancing.
	TargetGroupArns pulumi.StringArrayInput
	// A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are `OldestInstance`, `NewestInstance`, `OldestLaunchConfiguration`, `ClosestToNextInstanceHour`, `OldestLaunchTemplate`, `AllocationStrategy`, `Default`.
	TerminationPolicies pulumi.StringArrayInput
	// A list of subnet IDs to launch resources in.
	VpcZoneIdentifiers     pulumi.StringArrayInput
	WaitForCapacityTimeout pulumi.StringPtrInput
	// Setting this will cause this provider to wait
	// for exactly this number of healthy instances from this autoscaling group in
	// all attached load balancers on both create and update operations. (Takes
	// precedence over `minElbCapacity` behavior.)
	// (See also Waiting for Capacity below.)
	WaitForElbCapacity pulumi.IntPtrInput
}

The set of arguments for constructing a Group resource.

func (GroupArgs) ElementType added in v1.19.0

func (GroupArgs) ElementType() reflect.Type

type GroupInitialLifecycleHook added in v1.19.0

type GroupInitialLifecycleHook struct {
	DefaultResult       *string `pulumi:"defaultResult"`
	HeartbeatTimeout    *int    `pulumi:"heartbeatTimeout"`
	LifecycleTransition string  `pulumi:"lifecycleTransition"`
	// The name of the auto scaling group. By default generated by this provider.
	Name                  string  `pulumi:"name"`
	NotificationMetadata  *string `pulumi:"notificationMetadata"`
	NotificationTargetArn *string `pulumi:"notificationTargetArn"`
	RoleArn               *string `pulumi:"roleArn"`
}

type GroupInitialLifecycleHookArgs added in v1.19.0

type GroupInitialLifecycleHookArgs struct {
	DefaultResult       pulumi.StringPtrInput `pulumi:"defaultResult"`
	HeartbeatTimeout    pulumi.IntPtrInput    `pulumi:"heartbeatTimeout"`
	LifecycleTransition pulumi.StringInput    `pulumi:"lifecycleTransition"`
	// The name of the auto scaling group. By default generated by this provider.
	Name                  pulumi.StringInput    `pulumi:"name"`
	NotificationMetadata  pulumi.StringPtrInput `pulumi:"notificationMetadata"`
	NotificationTargetArn pulumi.StringPtrInput `pulumi:"notificationTargetArn"`
	RoleArn               pulumi.StringPtrInput `pulumi:"roleArn"`
}

func (GroupInitialLifecycleHookArgs) ElementType added in v1.19.0

func (GroupInitialLifecycleHookArgs) ToGroupInitialLifecycleHookOutput added in v1.19.0

func (i GroupInitialLifecycleHookArgs) ToGroupInitialLifecycleHookOutput() GroupInitialLifecycleHookOutput

func (GroupInitialLifecycleHookArgs) ToGroupInitialLifecycleHookOutputWithContext added in v1.19.0

func (i GroupInitialLifecycleHookArgs) ToGroupInitialLifecycleHookOutputWithContext(ctx context.Context) GroupInitialLifecycleHookOutput

type GroupInitialLifecycleHookArray added in v1.19.0

type GroupInitialLifecycleHookArray []GroupInitialLifecycleHookInput

func (GroupInitialLifecycleHookArray) ElementType added in v1.19.0

func (GroupInitialLifecycleHookArray) ToGroupInitialLifecycleHookArrayOutput added in v1.19.0

func (i GroupInitialLifecycleHookArray) ToGroupInitialLifecycleHookArrayOutput() GroupInitialLifecycleHookArrayOutput

func (GroupInitialLifecycleHookArray) ToGroupInitialLifecycleHookArrayOutputWithContext added in v1.19.0

func (i GroupInitialLifecycleHookArray) ToGroupInitialLifecycleHookArrayOutputWithContext(ctx context.Context) GroupInitialLifecycleHookArrayOutput

type GroupInitialLifecycleHookArrayInput added in v1.19.0

type GroupInitialLifecycleHookArrayInput interface {
	pulumi.Input

	ToGroupInitialLifecycleHookArrayOutput() GroupInitialLifecycleHookArrayOutput
	ToGroupInitialLifecycleHookArrayOutputWithContext(context.Context) GroupInitialLifecycleHookArrayOutput
}

type GroupInitialLifecycleHookArrayOutput added in v1.19.0

type GroupInitialLifecycleHookArrayOutput struct{ *pulumi.OutputState }

func (GroupInitialLifecycleHookArrayOutput) ElementType added in v1.19.0

func (GroupInitialLifecycleHookArrayOutput) Index added in v1.19.0

func (GroupInitialLifecycleHookArrayOutput) ToGroupInitialLifecycleHookArrayOutput added in v1.19.0

func (o GroupInitialLifecycleHookArrayOutput) ToGroupInitialLifecycleHookArrayOutput() GroupInitialLifecycleHookArrayOutput

func (GroupInitialLifecycleHookArrayOutput) ToGroupInitialLifecycleHookArrayOutputWithContext added in v1.19.0

func (o GroupInitialLifecycleHookArrayOutput) ToGroupInitialLifecycleHookArrayOutputWithContext(ctx context.Context) GroupInitialLifecycleHookArrayOutput

type GroupInitialLifecycleHookInput added in v1.19.0

type GroupInitialLifecycleHookInput interface {
	pulumi.Input

	ToGroupInitialLifecycleHookOutput() GroupInitialLifecycleHookOutput
	ToGroupInitialLifecycleHookOutputWithContext(context.Context) GroupInitialLifecycleHookOutput
}

type GroupInitialLifecycleHookOutput added in v1.19.0

type GroupInitialLifecycleHookOutput struct{ *pulumi.OutputState }

func (GroupInitialLifecycleHookOutput) DefaultResult added in v1.19.0

func (GroupInitialLifecycleHookOutput) ElementType added in v1.19.0

func (GroupInitialLifecycleHookOutput) HeartbeatTimeout added in v1.19.0

func (GroupInitialLifecycleHookOutput) LifecycleTransition added in v1.19.0

func (o GroupInitialLifecycleHookOutput) LifecycleTransition() pulumi.StringOutput

func (GroupInitialLifecycleHookOutput) Name added in v1.19.0

The name of the auto scaling group. By default generated by this provider.

func (GroupInitialLifecycleHookOutput) NotificationMetadata added in v1.19.0

func (o GroupInitialLifecycleHookOutput) NotificationMetadata() pulumi.StringPtrOutput

func (GroupInitialLifecycleHookOutput) NotificationTargetArn added in v1.19.0

func (o GroupInitialLifecycleHookOutput) NotificationTargetArn() pulumi.StringPtrOutput

func (GroupInitialLifecycleHookOutput) RoleArn added in v1.19.0

func (GroupInitialLifecycleHookOutput) ToGroupInitialLifecycleHookOutput added in v1.19.0

func (o GroupInitialLifecycleHookOutput) ToGroupInitialLifecycleHookOutput() GroupInitialLifecycleHookOutput

func (GroupInitialLifecycleHookOutput) ToGroupInitialLifecycleHookOutputWithContext added in v1.19.0

func (o GroupInitialLifecycleHookOutput) ToGroupInitialLifecycleHookOutputWithContext(ctx context.Context) GroupInitialLifecycleHookOutput

type GroupLaunchTemplate added in v1.19.0

type GroupLaunchTemplate struct {
	// The autoscaling group id.
	Id *string `pulumi:"id"`
	// The name of the auto scaling group. By default generated by this provider.
	Name *string `pulumi:"name"`
	// Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).
	Version *string `pulumi:"version"`
}

type GroupLaunchTemplateArgs added in v1.19.0

type GroupLaunchTemplateArgs struct {
	// The autoscaling group id.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// The name of the auto scaling group. By default generated by this provider.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (GroupLaunchTemplateArgs) ElementType added in v1.19.0

func (GroupLaunchTemplateArgs) ElementType() reflect.Type

func (GroupLaunchTemplateArgs) ToGroupLaunchTemplateOutput added in v1.19.0

func (i GroupLaunchTemplateArgs) ToGroupLaunchTemplateOutput() GroupLaunchTemplateOutput

func (GroupLaunchTemplateArgs) ToGroupLaunchTemplateOutputWithContext added in v1.19.0

func (i GroupLaunchTemplateArgs) ToGroupLaunchTemplateOutputWithContext(ctx context.Context) GroupLaunchTemplateOutput

func (GroupLaunchTemplateArgs) ToGroupLaunchTemplatePtrOutput added in v1.19.0

func (i GroupLaunchTemplateArgs) ToGroupLaunchTemplatePtrOutput() GroupLaunchTemplatePtrOutput

func (GroupLaunchTemplateArgs) ToGroupLaunchTemplatePtrOutputWithContext added in v1.19.0

func (i GroupLaunchTemplateArgs) ToGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) GroupLaunchTemplatePtrOutput

type GroupLaunchTemplateInput added in v1.19.0

type GroupLaunchTemplateInput interface {
	pulumi.Input

	ToGroupLaunchTemplateOutput() GroupLaunchTemplateOutput
	ToGroupLaunchTemplateOutputWithContext(context.Context) GroupLaunchTemplateOutput
}

type GroupLaunchTemplateOutput added in v1.19.0

type GroupLaunchTemplateOutput struct{ *pulumi.OutputState }

func (GroupLaunchTemplateOutput) ElementType added in v1.19.0

func (GroupLaunchTemplateOutput) ElementType() reflect.Type

func (GroupLaunchTemplateOutput) Id added in v1.19.0

The autoscaling group id.

func (GroupLaunchTemplateOutput) Name added in v1.19.0

The name of the auto scaling group. By default generated by this provider.

func (GroupLaunchTemplateOutput) ToGroupLaunchTemplateOutput added in v1.19.0

func (o GroupLaunchTemplateOutput) ToGroupLaunchTemplateOutput() GroupLaunchTemplateOutput

func (GroupLaunchTemplateOutput) ToGroupLaunchTemplateOutputWithContext added in v1.19.0

func (o GroupLaunchTemplateOutput) ToGroupLaunchTemplateOutputWithContext(ctx context.Context) GroupLaunchTemplateOutput

func (GroupLaunchTemplateOutput) ToGroupLaunchTemplatePtrOutput added in v1.19.0

func (o GroupLaunchTemplateOutput) ToGroupLaunchTemplatePtrOutput() GroupLaunchTemplatePtrOutput

func (GroupLaunchTemplateOutput) ToGroupLaunchTemplatePtrOutputWithContext added in v1.19.0

func (o GroupLaunchTemplateOutput) ToGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) GroupLaunchTemplatePtrOutput

func (GroupLaunchTemplateOutput) Version added in v1.19.0

Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).

type GroupLaunchTemplatePtrInput added in v1.19.0

type GroupLaunchTemplatePtrInput interface {
	pulumi.Input

	ToGroupLaunchTemplatePtrOutput() GroupLaunchTemplatePtrOutput
	ToGroupLaunchTemplatePtrOutputWithContext(context.Context) GroupLaunchTemplatePtrOutput
}

func GroupLaunchTemplatePtr added in v1.19.0

func GroupLaunchTemplatePtr(v *GroupLaunchTemplateArgs) GroupLaunchTemplatePtrInput

type GroupLaunchTemplatePtrOutput added in v1.19.0

type GroupLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (GroupLaunchTemplatePtrOutput) Elem added in v1.19.0

func (GroupLaunchTemplatePtrOutput) ElementType added in v1.19.0

func (GroupLaunchTemplatePtrOutput) Id added in v1.19.0

The autoscaling group id.

func (GroupLaunchTemplatePtrOutput) Name added in v1.19.0

The name of the auto scaling group. By default generated by this provider.

func (GroupLaunchTemplatePtrOutput) ToGroupLaunchTemplatePtrOutput added in v1.19.0

func (o GroupLaunchTemplatePtrOutput) ToGroupLaunchTemplatePtrOutput() GroupLaunchTemplatePtrOutput

func (GroupLaunchTemplatePtrOutput) ToGroupLaunchTemplatePtrOutputWithContext added in v1.19.0

func (o GroupLaunchTemplatePtrOutput) ToGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) GroupLaunchTemplatePtrOutput

func (GroupLaunchTemplatePtrOutput) Version added in v1.19.0

Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).

type GroupMixedInstancesPolicy added in v1.19.0

type GroupMixedInstancesPolicy struct {
	// Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
	InstancesDistribution *GroupMixedInstancesPolicyInstancesDistribution `pulumi:"instancesDistribution"`
	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate GroupMixedInstancesPolicyLaunchTemplate `pulumi:"launchTemplate"`
}

type GroupMixedInstancesPolicyArgs added in v1.19.0

type GroupMixedInstancesPolicyArgs struct {
	// Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
	InstancesDistribution GroupMixedInstancesPolicyInstancesDistributionPtrInput `pulumi:"instancesDistribution"`
	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate GroupMixedInstancesPolicyLaunchTemplateInput `pulumi:"launchTemplate"`
}

func (GroupMixedInstancesPolicyArgs) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyOutput added in v1.19.0

func (i GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyOutput() GroupMixedInstancesPolicyOutput

func (GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyOutput

func (GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyPtrOutput added in v1.19.0

func (i GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyPtrOutput() GroupMixedInstancesPolicyPtrOutput

func (GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyPtrOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyArgs) ToGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyPtrOutput

type GroupMixedInstancesPolicyInput added in v1.19.0

type GroupMixedInstancesPolicyInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyOutput() GroupMixedInstancesPolicyOutput
	ToGroupMixedInstancesPolicyOutputWithContext(context.Context) GroupMixedInstancesPolicyOutput
}

type GroupMixedInstancesPolicyInstancesDistribution added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistribution struct {
	// Strategy to use when launching on-demand instances. Valid values: `prioritized`. Default: `prioritized`.
	OnDemandAllocationStrategy *string `pulumi:"onDemandAllocationStrategy"`
	// Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: `0`.
	OnDemandBaseCapacity *int `pulumi:"onDemandBaseCapacity"`
	// Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: `100`.
	OnDemandPercentageAboveBaseCapacity *int `pulumi:"onDemandPercentageAboveBaseCapacity"`
	// How to allocate capacity across the Spot pools. Valid values: `lowest-price`, `capacity-optimized`. Default: `lowest-price`.
	SpotAllocationStrategy *string `pulumi:"spotAllocationStrategy"`
	// Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Default: `2`.
	SpotInstancePools *int `pulumi:"spotInstancePools"`
	// Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.
	SpotMaxPrice *string `pulumi:"spotMaxPrice"`
}

type GroupMixedInstancesPolicyInstancesDistributionArgs added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistributionArgs struct {
	// Strategy to use when launching on-demand instances. Valid values: `prioritized`. Default: `prioritized`.
	OnDemandAllocationStrategy pulumi.StringPtrInput `pulumi:"onDemandAllocationStrategy"`
	// Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: `0`.
	OnDemandBaseCapacity pulumi.IntPtrInput `pulumi:"onDemandBaseCapacity"`
	// Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: `100`.
	OnDemandPercentageAboveBaseCapacity pulumi.IntPtrInput `pulumi:"onDemandPercentageAboveBaseCapacity"`
	// How to allocate capacity across the Spot pools. Valid values: `lowest-price`, `capacity-optimized`. Default: `lowest-price`.
	SpotAllocationStrategy pulumi.StringPtrInput `pulumi:"spotAllocationStrategy"`
	// Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Default: `2`.
	SpotInstancePools pulumi.IntPtrInput `pulumi:"spotInstancePools"`
	// Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.
	SpotMaxPrice pulumi.StringPtrInput `pulumi:"spotMaxPrice"`
}

func (GroupMixedInstancesPolicyInstancesDistributionArgs) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionOutput added in v1.19.0

func (i GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionOutput() GroupMixedInstancesPolicyInstancesDistributionOutput

func (GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyInstancesDistributionOutput

func (GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput added in v1.19.0

func (i GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput() GroupMixedInstancesPolicyInstancesDistributionPtrOutput

func (GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyInstancesDistributionArgs) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyInstancesDistributionPtrOutput

type GroupMixedInstancesPolicyInstancesDistributionInput added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistributionInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyInstancesDistributionOutput() GroupMixedInstancesPolicyInstancesDistributionOutput
	ToGroupMixedInstancesPolicyInstancesDistributionOutputWithContext(context.Context) GroupMixedInstancesPolicyInstancesDistributionOutput
}

type GroupMixedInstancesPolicyInstancesDistributionOutput added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistributionOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyInstancesDistributionOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionOutput) OnDemandAllocationStrategy added in v1.19.0

Strategy to use when launching on-demand instances. Valid values: `prioritized`. Default: `prioritized`.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) OnDemandBaseCapacity added in v1.19.0

Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: `0`.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) OnDemandPercentageAboveBaseCapacity added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionOutput) OnDemandPercentageAboveBaseCapacity() pulumi.IntPtrOutput

Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: `100`.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) SpotAllocationStrategy added in v1.19.0

How to allocate capacity across the Spot pools. Valid values: `lowest-price`, `capacity-optimized`. Default: `lowest-price`.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) SpotInstancePools added in v1.19.0

Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Default: `2`.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) SpotMaxPrice added in v1.19.0

Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.

func (GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionOutput added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyInstancesDistributionOutput

func (GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput() GroupMixedInstancesPolicyInstancesDistributionPtrOutput

func (GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyInstancesDistributionPtrOutput

type GroupMixedInstancesPolicyInstancesDistributionPtrInput added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistributionPtrInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput() GroupMixedInstancesPolicyInstancesDistributionPtrOutput
	ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext(context.Context) GroupMixedInstancesPolicyInstancesDistributionPtrOutput
}

type GroupMixedInstancesPolicyInstancesDistributionPtrOutput added in v1.19.0

type GroupMixedInstancesPolicyInstancesDistributionPtrOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) Elem added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) OnDemandAllocationStrategy added in v1.19.0

Strategy to use when launching on-demand instances. Valid values: `prioritized`. Default: `prioritized`.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) OnDemandBaseCapacity added in v1.19.0

Absolute minimum amount of desired capacity that must be fulfilled by on-demand instances. Default: `0`.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) OnDemandPercentageAboveBaseCapacity added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionPtrOutput) OnDemandPercentageAboveBaseCapacity() pulumi.IntPtrOutput

Percentage split between on-demand and Spot instances above the base on-demand capacity. Default: `100`.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) SpotAllocationStrategy added in v1.19.0

How to allocate capacity across the Spot pools. Valid values: `lowest-price`, `capacity-optimized`. Default: `lowest-price`.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) SpotInstancePools added in v1.19.0

Number of Spot pools per availability zone to allocate capacity. EC2 Auto Scaling selects the cheapest Spot pools and evenly allocates Spot capacity across the number of Spot pools that you specify. Default: `2`.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) SpotMaxPrice added in v1.19.0

Maximum price per unit hour that the user is willing to pay for the Spot instances. Default: an empty string which means the on-demand price.

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutput added in v1.19.0

func (GroupMixedInstancesPolicyInstancesDistributionPtrOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyInstancesDistributionPtrOutput) ToGroupMixedInstancesPolicyInstancesDistributionPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyInstancesDistributionPtrOutput

type GroupMixedInstancesPolicyLaunchTemplate added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplate struct {
	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification `pulumi:"launchTemplateSpecification"`
	// List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
	Overrides []GroupMixedInstancesPolicyLaunchTemplateOverride `pulumi:"overrides"`
}

type GroupMixedInstancesPolicyLaunchTemplateArgs added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateArgs struct {
	// Nested argument defines the Launch Template. Defined below.
	LaunchTemplateSpecification GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationInput `pulumi:"launchTemplateSpecification"`
	// List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
	Overrides GroupMixedInstancesPolicyLaunchTemplateOverrideArrayInput `pulumi:"overrides"`
}

func (GroupMixedInstancesPolicyLaunchTemplateArgs) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateArgs) ToGroupMixedInstancesPolicyLaunchTemplateOutput added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateArgs) ToGroupMixedInstancesPolicyLaunchTemplateOutput() GroupMixedInstancesPolicyLaunchTemplateOutput

func (GroupMixedInstancesPolicyLaunchTemplateArgs) ToGroupMixedInstancesPolicyLaunchTemplateOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateArgs) ToGroupMixedInstancesPolicyLaunchTemplateOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOutput

type GroupMixedInstancesPolicyLaunchTemplateInput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyLaunchTemplateOutput() GroupMixedInstancesPolicyLaunchTemplateOutput
	ToGroupMixedInstancesPolicyLaunchTemplateOutputWithContext(context.Context) GroupMixedInstancesPolicyLaunchTemplateOutput
}

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecification struct {
	// The ID of the launch template. Conflicts with `launchTemplateName`.
	LaunchTemplateId *string `pulumi:"launchTemplateId"`
	// The name of the launch template. Conflicts with `launchTemplateId`.
	LaunchTemplateName *string `pulumi:"launchTemplateName"`
	// Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).
	Version *string `pulumi:"version"`
}

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs struct {
	// The ID of the launch template. Conflicts with `launchTemplateName`.
	LaunchTemplateId pulumi.StringPtrInput `pulumi:"launchTemplateId"`
	// The name of the launch template. Conflicts with `launchTemplateId`.
	LaunchTemplateName pulumi.StringPtrInput `pulumi:"launchTemplateName"`
	// Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs) ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs) ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationArgs) ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationInput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput() GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput
	ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutputWithContext(context.Context) GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput
}

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) LaunchTemplateId added in v1.19.0

The ID of the launch template. Conflicts with `launchTemplateName`.

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) LaunchTemplateName added in v1.19.0

The name of the launch template. Conflicts with `launchTemplateId`.

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) ToGroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutputWithContext added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateLaunchTemplateSpecificationOutput) Version added in v1.19.0

Template version. Can be version number, `$Latest`, or `$Default`. (Default: `$Default`).

type GroupMixedInstancesPolicyLaunchTemplateOutput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyLaunchTemplateOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOutput) LaunchTemplateSpecification added in v1.19.0

Nested argument defines the Launch Template. Defined below.

func (GroupMixedInstancesPolicyLaunchTemplateOutput) Overrides added in v1.19.0

List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.

func (GroupMixedInstancesPolicyLaunchTemplateOutput) ToGroupMixedInstancesPolicyLaunchTemplateOutput added in v1.19.0

func (o GroupMixedInstancesPolicyLaunchTemplateOutput) ToGroupMixedInstancesPolicyLaunchTemplateOutput() GroupMixedInstancesPolicyLaunchTemplateOutput

func (GroupMixedInstancesPolicyLaunchTemplateOutput) ToGroupMixedInstancesPolicyLaunchTemplateOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyLaunchTemplateOutput) ToGroupMixedInstancesPolicyLaunchTemplateOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOutput

type GroupMixedInstancesPolicyLaunchTemplateOverride added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverride struct {
	// Override the instance type in the Launch Template.
	InstanceType *string `pulumi:"instanceType"`
	// The number of capacity units, which gives the instance type a proportional weight to other instance types.
	WeightedCapacity *string `pulumi:"weightedCapacity"`
}

type GroupMixedInstancesPolicyLaunchTemplateOverrideArgs added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideArgs struct {
	// Override the instance type in the Launch Template.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// The number of capacity units, which gives the instance type a proportional weight to other instance types.
	WeightedCapacity pulumi.StringPtrInput `pulumi:"weightedCapacity"`
}

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArgs) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArgs) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutput added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateOverrideArgs) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutput() GroupMixedInstancesPolicyLaunchTemplateOverrideOutput

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArgs) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateOverrideArgs) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideOutput

type GroupMixedInstancesPolicyLaunchTemplateOverrideArray added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideArray []GroupMixedInstancesPolicyLaunchTemplateOverrideInput

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArray) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArray) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateOverrideArray) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput() GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArray) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutputWithContext added in v1.19.0

func (i GroupMixedInstancesPolicyLaunchTemplateOverrideArray) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput

type GroupMixedInstancesPolicyLaunchTemplateOverrideArrayInput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideArrayInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput() GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput
	ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutputWithContext(context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput
}

type GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput) Index added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideArrayOutput

type GroupMixedInstancesPolicyLaunchTemplateOverrideInput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutput() GroupMixedInstancesPolicyLaunchTemplateOverrideOutput
	ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutputWithContext(context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideOutput
}

type GroupMixedInstancesPolicyLaunchTemplateOverrideOutput added in v1.19.0

type GroupMixedInstancesPolicyLaunchTemplateOverrideOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) InstanceType added in v1.19.0

Override the instance type in the Launch Template.

func (GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutput added in v1.19.0

func (GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) ToGroupMixedInstancesPolicyLaunchTemplateOverrideOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyLaunchTemplateOverrideOutput

func (GroupMixedInstancesPolicyLaunchTemplateOverrideOutput) WeightedCapacity added in v1.19.0

The number of capacity units, which gives the instance type a proportional weight to other instance types.

type GroupMixedInstancesPolicyOutput added in v1.19.0

type GroupMixedInstancesPolicyOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyOutput) InstancesDistribution added in v1.19.0

Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.

func (GroupMixedInstancesPolicyOutput) LaunchTemplate added in v1.19.0

Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.

func (GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyOutput added in v1.19.0

func (o GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyOutput() GroupMixedInstancesPolicyOutput

func (GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyOutput

func (GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyPtrOutput added in v1.19.0

func (o GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyPtrOutput() GroupMixedInstancesPolicyPtrOutput

func (GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyPtrOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyOutput) ToGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyPtrOutput

type GroupMixedInstancesPolicyPtrInput added in v1.19.0

type GroupMixedInstancesPolicyPtrInput interface {
	pulumi.Input

	ToGroupMixedInstancesPolicyPtrOutput() GroupMixedInstancesPolicyPtrOutput
	ToGroupMixedInstancesPolicyPtrOutputWithContext(context.Context) GroupMixedInstancesPolicyPtrOutput
}

func GroupMixedInstancesPolicyPtr added in v1.19.0

type GroupMixedInstancesPolicyPtrOutput added in v1.19.0

type GroupMixedInstancesPolicyPtrOutput struct{ *pulumi.OutputState }

func (GroupMixedInstancesPolicyPtrOutput) Elem added in v1.19.0

func (GroupMixedInstancesPolicyPtrOutput) ElementType added in v1.19.0

func (GroupMixedInstancesPolicyPtrOutput) InstancesDistribution added in v1.19.0

Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.

func (GroupMixedInstancesPolicyPtrOutput) LaunchTemplate added in v1.19.0

Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.

func (GroupMixedInstancesPolicyPtrOutput) ToGroupMixedInstancesPolicyPtrOutput added in v1.19.0

func (o GroupMixedInstancesPolicyPtrOutput) ToGroupMixedInstancesPolicyPtrOutput() GroupMixedInstancesPolicyPtrOutput

func (GroupMixedInstancesPolicyPtrOutput) ToGroupMixedInstancesPolicyPtrOutputWithContext added in v1.19.0

func (o GroupMixedInstancesPolicyPtrOutput) ToGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) GroupMixedInstancesPolicyPtrOutput

type GroupState

type GroupState struct {
	// The ARN for this AutoScaling Group
	Arn pulumi.StringPtrInput
	// A list of one or more availability zones for the group. This parameter should not be specified when using `vpcZoneIdentifier`.
	AvailabilityZones pulumi.StringArrayInput
	// The amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
	DefaultCooldown pulumi.IntPtrInput
	// The number of Amazon EC2 instances that
	// should be running in the group. (See also Waiting for
	// Capacity below.)
	DesiredCapacity pulumi.IntPtrInput
	// A list of metrics to collect. The allowed values are `GroupDesiredCapacity`, `GroupInServiceCapacity`, `GroupPendingCapacity`, `GroupMinSize`, `GroupMaxSize`, `GroupInServiceInstances`, `GroupPendingInstances`, `GroupStandbyInstances`, `GroupStandbyCapacity`, `GroupTerminatingCapacity`, `GroupTerminatingInstances`, `GroupTotalCapacity`, `GroupTotalInstances`.
	// * `waitForCapacityTimeout` (Default: "10m") A maximum
	// [duration](https://golang.org/pkg/time/#ParseDuration) that this provider should
	// wait for ASG instances to be healthy before timing out.  (See also Waiting
	// for Capacity below.) Setting this to "0" causes
	// this provider to skip all Capacity Waiting behavior.
	EnabledMetrics pulumi.StringArrayInput
	// Allows deleting the autoscaling group without waiting
	// for all instances in the pool to terminate.  You can force an autoscaling group to delete
	// even if it's in the process of scaling a resource. Normally, this provider
	// drains all the instances before deleting the group.  This bypasses that
	// behavior and potentially leaves resources dangling.
	ForceDelete pulumi.BoolPtrInput
	// Time (in seconds) after instance comes into service before checking health.
	HealthCheckGracePeriod pulumi.IntPtrInput
	// "EC2" or "ELB". Controls how health checking is done.
	HealthCheckType pulumi.StringPtrInput
	// One or more
	// [Lifecycle Hooks](http://docs.aws.amazon.com/autoscaling/latest/userguide/lifecycle-hooks.html)
	// to attach to the autoscaling group **before** instances are launched. The
	// syntax is exactly the same as the separate
	// [`autoscaling.LifecycleHook`](https://www.terraform.io/docs/providers/aws/r/autoscaling_lifecycle_hook.html)
	// resource, without the `autoscalingGroupName` attribute. Please note that this will only work when creating
	// a new autoscaling group. For all other use-cases, please use `autoscaling.LifecycleHook` resource.
	InitialLifecycleHooks GroupInitialLifecycleHookArrayInput
	// The name of the launch configuration to use.
	LaunchConfiguration pulumi.StringPtrInput
	// Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
	LaunchTemplate GroupLaunchTemplatePtrInput
	// A list of elastic load balancer names to add to the autoscaling
	// group names. Only valid for classic load balancers. For ALBs, use `targetGroupArns` instead.
	LoadBalancers pulumi.StringArrayInput
	// The maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 604800 and 31536000 seconds.
	MaxInstanceLifetime pulumi.IntPtrInput
	// The maximum size of the auto scale group.
	MaxSize pulumi.IntPtrInput
	// The granularity to associate with the metrics to collect. The only valid value is `1Minute`. Default is `1Minute`.
	MetricsGranularity pulumi.StringPtrInput
	// Setting this causes this provider to wait for
	// this number of instances from this autoscaling group to show up healthy in the
	// ELB only on creation. Updates will not wait on ELB instance number changes.
	// (See also Waiting for Capacity below.)
	MinElbCapacity pulumi.IntPtrInput
	// The minimum size of the auto scale group.
	// (See also Waiting for Capacity below.)
	MinSize pulumi.IntPtrInput
	// Configuration block containing settings to define launch targets for Auto Scaling groups. Defined below.
	MixedInstancesPolicy GroupMixedInstancesPolicyPtrInput
	// The name of the auto scaling group. By default generated by this provider.
	Name pulumi.StringPtrInput
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix pulumi.StringPtrInput
	// The name of the placement group into which you'll launch your instances, if any.
	PlacementGroup pulumi.StringPtrInput
	// Allows setting instance protection. The
	// autoscaling group will not select instances with this setting for terminination
	// during scale in events.
	ProtectFromScaleIn pulumi.BoolPtrInput
	// The ARN of the service-linked role that the ASG will use to call other AWS services
	ServiceLinkedRoleArn pulumi.StringPtrInput
	// A list of processes to suspend for the AutoScaling Group. The allowed values are `Launch`, `Terminate`, `HealthCheck`, `ReplaceUnhealthy`, `AZRebalance`, `AlarmNotification`, `ScheduledActions`, `AddToLoadBalancer`.
	// Note that if you suspend either the `Launch` or `Terminate` process types, it can prevent your autoscaling group from functioning properly.
	SuspendedProcesses pulumi.StringArrayInput
	// A list of tag blocks. Tags documented below.
	Tags GroupTagArrayInput
	// A list of tag blocks (maps). Tags documented below.
	TagsCollection pulumi.MapArrayInput
	// A list of `alb.TargetGroup` ARNs, for use with Application or Network Load Balancing.
	TargetGroupArns pulumi.StringArrayInput
	// A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are `OldestInstance`, `NewestInstance`, `OldestLaunchConfiguration`, `ClosestToNextInstanceHour`, `OldestLaunchTemplate`, `AllocationStrategy`, `Default`.
	TerminationPolicies pulumi.StringArrayInput
	// A list of subnet IDs to launch resources in.
	VpcZoneIdentifiers     pulumi.StringArrayInput
	WaitForCapacityTimeout pulumi.StringPtrInput
	// Setting this will cause this provider to wait
	// for exactly this number of healthy instances from this autoscaling group in
	// all attached load balancers on both create and update operations. (Takes
	// precedence over `minElbCapacity` behavior.)
	// (See also Waiting for Capacity below.)
	WaitForElbCapacity pulumi.IntPtrInput
}

func (GroupState) ElementType added in v1.19.0

func (GroupState) ElementType() reflect.Type

type GroupTag added in v1.19.0

type GroupTag struct {
	// Key
	Key string `pulumi:"key"`
	// Enables propagation of the tag to
	// Amazon EC2 instances launched via this ASG
	PropagateAtLaunch bool `pulumi:"propagateAtLaunch"`
	// Value
	Value string `pulumi:"value"`
}

type GroupTagArgs added in v1.19.0

type GroupTagArgs struct {
	// Key
	Key pulumi.StringInput `pulumi:"key"`
	// Enables propagation of the tag to
	// Amazon EC2 instances launched via this ASG
	PropagateAtLaunch pulumi.BoolInput `pulumi:"propagateAtLaunch"`
	// Value
	Value pulumi.StringInput `pulumi:"value"`
}

func (GroupTagArgs) ElementType added in v1.19.0

func (GroupTagArgs) ElementType() reflect.Type

func (GroupTagArgs) ToGroupTagOutput added in v1.19.0

func (i GroupTagArgs) ToGroupTagOutput() GroupTagOutput

func (GroupTagArgs) ToGroupTagOutputWithContext added in v1.19.0

func (i GroupTagArgs) ToGroupTagOutputWithContext(ctx context.Context) GroupTagOutput

type GroupTagArray added in v1.19.0

type GroupTagArray []GroupTagInput

func (GroupTagArray) ElementType added in v1.19.0

func (GroupTagArray) ElementType() reflect.Type

func (GroupTagArray) ToGroupTagArrayOutput added in v1.19.0

func (i GroupTagArray) ToGroupTagArrayOutput() GroupTagArrayOutput

func (GroupTagArray) ToGroupTagArrayOutputWithContext added in v1.19.0

func (i GroupTagArray) ToGroupTagArrayOutputWithContext(ctx context.Context) GroupTagArrayOutput

type GroupTagArrayInput added in v1.19.0

type GroupTagArrayInput interface {
	pulumi.Input

	ToGroupTagArrayOutput() GroupTagArrayOutput
	ToGroupTagArrayOutputWithContext(context.Context) GroupTagArrayOutput
}

type GroupTagArrayOutput added in v1.19.0

type GroupTagArrayOutput struct{ *pulumi.OutputState }

func (GroupTagArrayOutput) ElementType added in v1.19.0

func (GroupTagArrayOutput) ElementType() reflect.Type

func (GroupTagArrayOutput) Index added in v1.19.0

func (GroupTagArrayOutput) ToGroupTagArrayOutput added in v1.19.0

func (o GroupTagArrayOutput) ToGroupTagArrayOutput() GroupTagArrayOutput

func (GroupTagArrayOutput) ToGroupTagArrayOutputWithContext added in v1.19.0

func (o GroupTagArrayOutput) ToGroupTagArrayOutputWithContext(ctx context.Context) GroupTagArrayOutput

type GroupTagInput added in v1.19.0

type GroupTagInput interface {
	pulumi.Input

	ToGroupTagOutput() GroupTagOutput
	ToGroupTagOutputWithContext(context.Context) GroupTagOutput
}

type GroupTagOutput added in v1.19.0

type GroupTagOutput struct{ *pulumi.OutputState }

func (GroupTagOutput) ElementType added in v1.19.0

func (GroupTagOutput) ElementType() reflect.Type

func (GroupTagOutput) Key added in v1.19.0

Key

func (GroupTagOutput) PropagateAtLaunch added in v1.19.0

func (o GroupTagOutput) PropagateAtLaunch() pulumi.BoolOutput

Enables propagation of the tag to Amazon EC2 instances launched via this ASG

func (GroupTagOutput) ToGroupTagOutput added in v1.19.0

func (o GroupTagOutput) ToGroupTagOutput() GroupTagOutput

func (GroupTagOutput) ToGroupTagOutputWithContext added in v1.19.0

func (o GroupTagOutput) ToGroupTagOutputWithContext(ctx context.Context) GroupTagOutput

func (GroupTagOutput) Value added in v1.19.0

Value

type LifecycleHook

type LifecycleHook struct {
	pulumi.CustomResourceState

	// The name of the Auto Scaling group to which you want to assign the lifecycle hook
	AutoscalingGroupName pulumi.StringOutput `pulumi:"autoscalingGroupName"`
	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	DefaultResult pulumi.StringOutput `pulumi:"defaultResult"`
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	HeartbeatTimeout pulumi.IntPtrOutput `pulumi:"heartbeatTimeout"`
	// The instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see [describe-lifecycle-hook-types](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-lifecycle-hook-types.html#examples)
	LifecycleTransition pulumi.StringOutput `pulumi:"lifecycleTransition"`
	// The name of the lifecycle hook.
	Name pulumi.StringOutput `pulumi:"name"`
	// Contains additional information that you want to include any time Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrOutput `pulumi:"notificationMetadata"`
	// The ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	NotificationTargetArn pulumi.StringPtrOutput `pulumi:"notificationTargetArn"`
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
	RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"`
}

Provides an AutoScaling Lifecycle Hook resource.

> **NOTE:** This provider has two types of ways you can add lifecycle hooks - via the `initialLifecycleHook` attribute from the [`autoscaling.Group`](https://www.terraform.io/docs/providers/aws/r/autoscaling_group.html) resource, or via this one. Hooks added via this resource will not be added until the autoscaling group has been created, and depending on your [capacity](https://www.terraform.io/docs/providers/aws/r/autoscaling_group.html#waiting-for-capacity) settings, after the initial instances have been launched, creating unintended behavior. If you need hooks to run on all instances, add them with `initialLifecycleHook` in [`autoscaling.Group`](https://www.terraform.io/docs/providers/aws/r/autoscaling_group.html), but take care to not duplicate those hooks with this resource.

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

func GetLifecycleHook

func GetLifecycleHook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LifecycleHookState, opts ...pulumi.ResourceOption) (*LifecycleHook, error)

GetLifecycleHook gets an existing LifecycleHook 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 NewLifecycleHook

func NewLifecycleHook(ctx *pulumi.Context,
	name string, args *LifecycleHookArgs, opts ...pulumi.ResourceOption) (*LifecycleHook, error)

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

type LifecycleHookArgs

type LifecycleHookArgs struct {
	// The name of the Auto Scaling group to which you want to assign the lifecycle hook
	AutoscalingGroupName pulumi.StringInput
	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	DefaultResult pulumi.StringPtrInput
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	HeartbeatTimeout pulumi.IntPtrInput
	// The instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see [describe-lifecycle-hook-types](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-lifecycle-hook-types.html#examples)
	LifecycleTransition pulumi.StringInput
	// The name of the lifecycle hook.
	Name pulumi.StringPtrInput
	// Contains additional information that you want to include any time Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput
	// The ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	NotificationTargetArn pulumi.StringPtrInput
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
	RoleArn pulumi.StringPtrInput
}

The set of arguments for constructing a LifecycleHook resource.

func (LifecycleHookArgs) ElementType added in v1.19.0

func (LifecycleHookArgs) ElementType() reflect.Type

type LifecycleHookState

type LifecycleHookState struct {
	// The name of the Auto Scaling group to which you want to assign the lifecycle hook
	AutoscalingGroupName pulumi.StringPtrInput
	// Defines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. The value for this parameter can be either CONTINUE or ABANDON. The default value for this parameter is ABANDON.
	DefaultResult pulumi.StringPtrInput
	// Defines the amount of time, in seconds, that can elapse before the lifecycle hook times out. When the lifecycle hook times out, Auto Scaling performs the action defined in the DefaultResult parameter
	HeartbeatTimeout pulumi.IntPtrInput
	// The instance state to which you want to attach the lifecycle hook. For a list of lifecycle hook types, see [describe-lifecycle-hook-types](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-lifecycle-hook-types.html#examples)
	LifecycleTransition pulumi.StringPtrInput
	// The name of the lifecycle hook.
	Name pulumi.StringPtrInput
	// Contains additional information that you want to include any time Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput
	// The ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This ARN target can be either an SQS queue or an SNS topic.
	NotificationTargetArn pulumi.StringPtrInput
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
	RoleArn pulumi.StringPtrInput
}

func (LifecycleHookState) ElementType added in v1.19.0

func (LifecycleHookState) ElementType() reflect.Type

type LookupGroupArgs added in v1.19.0

type LookupGroupArgs struct {
	// Specify the exact name of the desired autoscaling group.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getGroup.

type LookupGroupResult added in v1.19.0

type LookupGroupResult struct {
	// The Amazon Resource Name (ARN) of the Auto Scaling group.
	Arn string `pulumi:"arn"`
	// One or more Availability Zones for the group.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	DefaultCooldown   int      `pulumi:"defaultCooldown"`
	// The desired size of the group.
	DesiredCapacity int `pulumi:"desiredCapacity"`
	// The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service.
	HealthCheckGracePeriod int `pulumi:"healthCheckGracePeriod"`
	// The service to use for the health checks. The valid values are EC2 and ELB.
	HealthCheckType string `pulumi:"healthCheckType"`
	// id is the provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The name of the associated launch configuration.
	LaunchConfiguration string `pulumi:"launchConfiguration"`
	// One or more load balancers associated with the group.
	LoadBalancers []string `pulumi:"loadBalancers"`
	// The maximum size of the group.
	MaxSize int `pulumi:"maxSize"`
	// The minimum size of the group.
	MinSize int `pulumi:"minSize"`
	// The name of the Auto Scaling group.
	Name                             string `pulumi:"name"`
	NewInstancesProtectedFromScaleIn bool   `pulumi:"newInstancesProtectedFromScaleIn"`
	// The name of the placement group into which to launch your instances, if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the Amazon Elastic Compute Cloud User Guide.
	PlacementGroup string `pulumi:"placementGroup"`
	// The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS services on your behalf.
	ServiceLinkedRoleArn string `pulumi:"serviceLinkedRoleArn"`
	// The current state of the group when DeleteAutoScalingGroup is in progress.
	Status string `pulumi:"status"`
	// The Amazon Resource Names (ARN) of the target groups for your load balancer.
	TargetGroupArns []string `pulumi:"targetGroupArns"`
	// The termination policies for the group.
	TerminationPolicies []string `pulumi:"terminationPolicies"`
	// VPC ID for the group.
	VpcZoneIdentifier string `pulumi:"vpcZoneIdentifier"`
}

A collection of values returned by getGroup.

func LookupGroup added in v0.16.5

func LookupGroup(ctx *pulumi.Context, args *LookupGroupArgs, opts ...pulumi.InvokeOption) (*LookupGroupResult, error)

Use this data source to get information on an existing autoscaling group.

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

type Notification

type Notification struct {
	pulumi.CustomResourceState

	// A list of AutoScaling Group Names
	GroupNames pulumi.StringArrayOutput `pulumi:"groupNames"`
	// A list of Notification Types that trigger
	// notifications. Acceptable values are documented [in the AWS documentation here][1]
	Notifications pulumi.StringArrayOutput `pulumi:"notifications"`
	// The Topic ARN for notifications to be sent through
	TopicArn pulumi.StringOutput `pulumi:"topicArn"`
}

Provides an AutoScaling Group with Notification support, via SNS Topics. Each of the `notifications` map to a [Notification Configuration][2] inside Amazon Web Services, and are applied to each AutoScaling Group you supply.

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

func GetNotification

func GetNotification(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NotificationState, opts ...pulumi.ResourceOption) (*Notification, error)

GetNotification gets an existing Notification 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 NewNotification

func NewNotification(ctx *pulumi.Context,
	name string, args *NotificationArgs, opts ...pulumi.ResourceOption) (*Notification, error)

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

type NotificationArgs

type NotificationArgs struct {
	// A list of AutoScaling Group Names
	GroupNames pulumi.StringArrayInput
	// A list of Notification Types that trigger
	// notifications. Acceptable values are documented [in the AWS documentation here][1]
	Notifications pulumi.StringArrayInput
	// The Topic ARN for notifications to be sent through
	TopicArn pulumi.StringInput
}

The set of arguments for constructing a Notification resource.

func (NotificationArgs) ElementType added in v1.19.0

func (NotificationArgs) ElementType() reflect.Type

type NotificationState

type NotificationState struct {
	// A list of AutoScaling Group Names
	GroupNames pulumi.StringArrayInput
	// A list of Notification Types that trigger
	// notifications. Acceptable values are documented [in the AWS documentation here][1]
	Notifications pulumi.StringArrayInput
	// The Topic ARN for notifications to be sent through
	TopicArn pulumi.StringPtrInput
}

func (NotificationState) ElementType added in v1.19.0

func (NotificationState) ElementType() reflect.Type

type Policy

type Policy struct {
	pulumi.CustomResourceState

	// Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are `ChangeInCapacity`, `ExactCapacity`, and `PercentChangeInCapacity`.
	AdjustmentType pulumi.StringPtrOutput `pulumi:"adjustmentType"`
	// The ARN assigned by AWS to the scaling policy.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the autoscaling group.
	AutoscalingGroupName pulumi.StringOutput `pulumi:"autoscalingGroupName"`
	// The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown pulumi.IntPtrOutput `pulumi:"cooldown"`
	// The estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	EstimatedInstanceWarmup pulumi.IntPtrOutput `pulumi:"estimatedInstanceWarmup"`
	// 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.StringOutput `pulumi:"metricAggregationType"`
	MinAdjustmentMagnitude pulumi.IntPtrOutput `pulumi:"minAdjustmentMagnitude"`
	// The name of the dimension.
	Name pulumi.StringOutput `pulumi:"name"`
	// The policy type, either "SimpleScaling", "StepScaling" or "TargetTrackingScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	PolicyType pulumi.StringPtrOutput `pulumi:"policyType"`
	// 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.IntPtrOutput `pulumi:"scalingAdjustment"`
	// A set of adjustments that manage
	// group scaling. These have the following structure:
	StepAdjustments PolicyStepAdjustmentArrayOutput `pulumi:"stepAdjustments"`
	// A target tracking policy. These have the following structure:
	TargetTrackingConfiguration PolicyTargetTrackingConfigurationPtrOutput `pulumi:"targetTrackingConfiguration"`
}

Provides an AutoScaling Scaling Policy resource.

> **NOTE:** You may want to omit `desiredCapacity` attribute from attached `autoscaling.Group` when using autoscaling policies. It's good practice to pick either [manual](https://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-manual-scaling.html) or [dynamic](https://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/as-scale-based-on-demand.html) (policy-based) scaling.

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

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 {
	// 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
	// The name of the autoscaling group.
	AutoscalingGroupName pulumi.StringInput
	// The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown pulumi.IntPtrInput
	// The estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	EstimatedInstanceWarmup pulumi.IntPtrInput
	// 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
	MinAdjustmentMagnitude pulumi.IntPtrInput
	// The name of the dimension.
	Name pulumi.StringPtrInput
	// The policy type, either "SimpleScaling", "StepScaling" or "TargetTrackingScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	PolicyType pulumi.StringPtrInput
	// 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.IntPtrInput
	// A set of adjustments that manage
	// group scaling. These have the following structure:
	StepAdjustments PolicyStepAdjustmentArrayInput
	// A target tracking policy. These have the following structure:
	TargetTrackingConfiguration PolicyTargetTrackingConfigurationPtrInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType added in v1.19.0

func (PolicyArgs) ElementType() reflect.Type

type PolicyState

type PolicyState 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
	// The ARN assigned by AWS to the scaling policy.
	Arn pulumi.StringPtrInput
	// The name of the autoscaling group.
	AutoscalingGroupName pulumi.StringPtrInput
	// The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start.
	Cooldown pulumi.IntPtrInput
	// The estimated time, in seconds, until a newly launched instance will contribute CloudWatch metrics. Without a value, AWS will default to the group's specified cooldown period.
	EstimatedInstanceWarmup pulumi.IntPtrInput
	// 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
	MinAdjustmentMagnitude pulumi.IntPtrInput
	// The name of the dimension.
	Name pulumi.StringPtrInput
	// The policy type, either "SimpleScaling", "StepScaling" or "TargetTrackingScaling". If this value isn't provided, AWS will default to "SimpleScaling."
	PolicyType pulumi.StringPtrInput
	// 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.IntPtrInput
	// A set of adjustments that manage
	// group scaling. These have the following structure:
	StepAdjustments PolicyStepAdjustmentArrayInput
	// A target tracking policy. These have the following structure:
	TargetTrackingConfiguration PolicyTargetTrackingConfigurationPtrInput
}

func (PolicyState) ElementType added in v1.19.0

func (PolicyState) ElementType() reflect.Type

type PolicyStepAdjustment added in v1.19.0

type PolicyStepAdjustment struct {
	// The lower bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as 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 PolicyStepAdjustmentArgs added in v1.19.0

type PolicyStepAdjustmentArgs struct {
	// The lower bound for the
	// difference between the alarm threshold and the CloudWatch metric.
	// Without a value, AWS will treat this bound as 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 (PolicyStepAdjustmentArgs) ElementType added in v1.19.0

func (PolicyStepAdjustmentArgs) ElementType() reflect.Type

func (PolicyStepAdjustmentArgs) ToPolicyStepAdjustmentOutput added in v1.19.0

func (i PolicyStepAdjustmentArgs) ToPolicyStepAdjustmentOutput() PolicyStepAdjustmentOutput

func (PolicyStepAdjustmentArgs) ToPolicyStepAdjustmentOutputWithContext added in v1.19.0

func (i PolicyStepAdjustmentArgs) ToPolicyStepAdjustmentOutputWithContext(ctx context.Context) PolicyStepAdjustmentOutput

type PolicyStepAdjustmentArray added in v1.19.0

type PolicyStepAdjustmentArray []PolicyStepAdjustmentInput

func (PolicyStepAdjustmentArray) ElementType added in v1.19.0

func (PolicyStepAdjustmentArray) ElementType() reflect.Type

func (PolicyStepAdjustmentArray) ToPolicyStepAdjustmentArrayOutput added in v1.19.0

func (i PolicyStepAdjustmentArray) ToPolicyStepAdjustmentArrayOutput() PolicyStepAdjustmentArrayOutput

func (PolicyStepAdjustmentArray) ToPolicyStepAdjustmentArrayOutputWithContext added in v1.19.0

func (i PolicyStepAdjustmentArray) ToPolicyStepAdjustmentArrayOutputWithContext(ctx context.Context) PolicyStepAdjustmentArrayOutput

type PolicyStepAdjustmentArrayInput added in v1.19.0

type PolicyStepAdjustmentArrayInput interface {
	pulumi.Input

	ToPolicyStepAdjustmentArrayOutput() PolicyStepAdjustmentArrayOutput
	ToPolicyStepAdjustmentArrayOutputWithContext(context.Context) PolicyStepAdjustmentArrayOutput
}

type PolicyStepAdjustmentArrayOutput added in v1.19.0

type PolicyStepAdjustmentArrayOutput struct{ *pulumi.OutputState }

func (PolicyStepAdjustmentArrayOutput) ElementType added in v1.19.0

func (PolicyStepAdjustmentArrayOutput) Index added in v1.19.0

func (PolicyStepAdjustmentArrayOutput) ToPolicyStepAdjustmentArrayOutput added in v1.19.0

func (o PolicyStepAdjustmentArrayOutput) ToPolicyStepAdjustmentArrayOutput() PolicyStepAdjustmentArrayOutput

func (PolicyStepAdjustmentArrayOutput) ToPolicyStepAdjustmentArrayOutputWithContext added in v1.19.0

func (o PolicyStepAdjustmentArrayOutput) ToPolicyStepAdjustmentArrayOutputWithContext(ctx context.Context) PolicyStepAdjustmentArrayOutput

type PolicyStepAdjustmentInput added in v1.19.0

type PolicyStepAdjustmentInput interface {
	pulumi.Input

	ToPolicyStepAdjustmentOutput() PolicyStepAdjustmentOutput
	ToPolicyStepAdjustmentOutputWithContext(context.Context) PolicyStepAdjustmentOutput
}

type PolicyStepAdjustmentOutput added in v1.19.0

type PolicyStepAdjustmentOutput struct{ *pulumi.OutputState }

func (PolicyStepAdjustmentOutput) ElementType added in v1.19.0

func (PolicyStepAdjustmentOutput) ElementType() reflect.Type

func (PolicyStepAdjustmentOutput) MetricIntervalLowerBound added in v1.19.0

func (o PolicyStepAdjustmentOutput) MetricIntervalLowerBound() pulumi.StringPtrOutput

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

func (PolicyStepAdjustmentOutput) MetricIntervalUpperBound added in v1.19.0

func (o PolicyStepAdjustmentOutput) MetricIntervalUpperBound() pulumi.StringPtrOutput

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 (PolicyStepAdjustmentOutput) ScalingAdjustment added in v1.19.0

func (o PolicyStepAdjustmentOutput) ScalingAdjustment() pulumi.IntOutput

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 (PolicyStepAdjustmentOutput) ToPolicyStepAdjustmentOutput added in v1.19.0

func (o PolicyStepAdjustmentOutput) ToPolicyStepAdjustmentOutput() PolicyStepAdjustmentOutput

func (PolicyStepAdjustmentOutput) ToPolicyStepAdjustmentOutputWithContext added in v1.19.0

func (o PolicyStepAdjustmentOutput) ToPolicyStepAdjustmentOutputWithContext(ctx context.Context) PolicyStepAdjustmentOutput

type PolicyTargetTrackingConfiguration added in v1.19.0

type PolicyTargetTrackingConfiguration struct {
	// A customized metric. Conflicts with `predefinedMetricSpecification`.
	CustomizedMetricSpecification *PolicyTargetTrackingConfigurationCustomizedMetricSpecification `pulumi:"customizedMetricSpecification"`
	// Indicates whether scale in by the target tracking policy is disabled.
	DisableScaleIn *bool `pulumi:"disableScaleIn"`
	// A predefined metric. Conflicts with `customizedMetricSpecification`.
	PredefinedMetricSpecification *PolicyTargetTrackingConfigurationPredefinedMetricSpecification `pulumi:"predefinedMetricSpecification"`
	// The target value for the metric.
	TargetValue float64 `pulumi:"targetValue"`
}

type PolicyTargetTrackingConfigurationArgs added in v1.19.0

type PolicyTargetTrackingConfigurationArgs struct {
	// A customized metric. Conflicts with `predefinedMetricSpecification`.
	CustomizedMetricSpecification PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrInput `pulumi:"customizedMetricSpecification"`
	// Indicates whether scale in by the target tracking policy is disabled.
	DisableScaleIn pulumi.BoolPtrInput `pulumi:"disableScaleIn"`
	// A predefined metric. Conflicts with `customizedMetricSpecification`.
	PredefinedMetricSpecification PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrInput `pulumi:"predefinedMetricSpecification"`
	// The target value for the metric.
	TargetValue pulumi.Float64Input `pulumi:"targetValue"`
}

func (PolicyTargetTrackingConfigurationArgs) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationOutput added in v1.19.0

func (i PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationOutput() PolicyTargetTrackingConfigurationOutput

func (PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationOutput

func (PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationPtrOutput added in v1.19.0

func (i PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationPtrOutput() PolicyTargetTrackingConfigurationPtrOutput

func (PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationPtrOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationArgs) ToPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPtrOutput

type PolicyTargetTrackingConfigurationCustomizedMetricSpecification added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecification struct {
	// The dimensions of the metric.
	MetricDimensions []PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimension `pulumi:"metricDimensions"`
	// The name of the metric.
	MetricName string `pulumi:"metricName"`
	// The namespace of the metric.
	Namespace string `pulumi:"namespace"`
	// The statistic of the metric.
	Statistic string `pulumi:"statistic"`
	// The unit of the metric.
	Unit *string `pulumi:"unit"`
}

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs struct {
	// The dimensions of the metric.
	MetricDimensions PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayInput `pulumi:"metricDimensions"`
	// 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.
	Statistic pulumi.StringInput `pulumi:"statistic"`
	// The unit of the metric.
	Unit pulumi.StringPtrInput `pulumi:"unit"`
}

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationCustomizedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationInput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput() PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput
	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutputWithContext(context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput
}

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimension added in v1.19.0

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

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArgs added in v1.19.0

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

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArgs) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArgs) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutputWithContext added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArray added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArray []PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionInput

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArray) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArray) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArray) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutputWithContext added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayInput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput() PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput
	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutputWithContext(context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput
}

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput) Index added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionArrayOutputWithContext added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionInput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput() PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput
	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutputWithContext(context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput
}

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput) Name added in v1.19.0

The name of the dimension.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutputWithContext added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationMetricDimensionOutput) Value added in v1.19.0

The value of the dimension.

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) MetricDimensions added in v1.19.0

The dimensions of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) MetricName added in v1.19.0

The name of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) Namespace added in v1.19.0

The namespace of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) Statistic added in v1.19.0

The statistic of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationOutput) Unit added in v1.19.0

The unit of the metric.

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrInput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput() PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput
	ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext(context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput
}

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput added in v1.19.0

type PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) Elem added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) MetricDimensions added in v1.19.0

The dimensions of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) MetricName added in v1.19.0

The name of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) Namespace added in v1.19.0

The namespace of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) Statistic added in v1.19.0

The statistic of the metric.

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput

func (PolicyTargetTrackingConfigurationCustomizedMetricSpecificationPtrOutput) Unit added in v1.19.0

The unit of the metric.

type PolicyTargetTrackingConfigurationInput added in v1.19.0

type PolicyTargetTrackingConfigurationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationOutput() PolicyTargetTrackingConfigurationOutput
	ToPolicyTargetTrackingConfigurationOutputWithContext(context.Context) PolicyTargetTrackingConfigurationOutput
}

type PolicyTargetTrackingConfigurationOutput added in v1.19.0

type PolicyTargetTrackingConfigurationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationOutput) CustomizedMetricSpecification added in v1.19.0

A customized metric. Conflicts with `predefinedMetricSpecification`.

func (PolicyTargetTrackingConfigurationOutput) DisableScaleIn added in v1.19.0

Indicates whether scale in by the target tracking policy is disabled.

func (PolicyTargetTrackingConfigurationOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationOutput) PredefinedMetricSpecification added in v1.19.0

A predefined metric. Conflicts with `customizedMetricSpecification`.

func (PolicyTargetTrackingConfigurationOutput) TargetValue added in v1.19.0

The target value for the metric.

func (PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationOutput added in v1.19.0

func (o PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationOutput() PolicyTargetTrackingConfigurationOutput

func (PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationOutput

func (PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationPtrOutput added in v1.19.0

func (o PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationPtrOutput() PolicyTargetTrackingConfigurationPtrOutput

func (PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationOutput) ToPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPtrOutput

type PolicyTargetTrackingConfigurationPredefinedMetricSpecification added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecification struct {
	// The metric type.
	PredefinedMetricType string `pulumi:"predefinedMetricType"`
	// Identifies the resource associated with the metric type.
	ResourceLabel *string `pulumi:"resourceLabel"`
}

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs struct {
	// The metric type.
	PredefinedMetricType pulumi.StringInput `pulumi:"predefinedMetricType"`
	// Identifies the resource associated with the metric type.
	ResourceLabel pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (i PolicyTargetTrackingConfigurationPredefinedMetricSpecificationArgs) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationInput added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput() PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput
	ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutputWithContext(context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput
}

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) PredefinedMetricType added in v1.19.0

The metric type.

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ResourceLabel added in v1.19.0

Identifies the resource associated with the metric type.

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationPredefinedMetricSpecificationOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrInput added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput() PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput
	ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext(context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput
}

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput added in v1.19.0

type PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) Elem added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) PredefinedMetricType added in v1.19.0

The metric type.

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) ResourceLabel added in v1.19.0

Identifies the resource associated with the metric type.

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput added in v1.19.0

func (PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput) ToPolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPredefinedMetricSpecificationPtrOutput

type PolicyTargetTrackingConfigurationPtrInput added in v1.19.0

type PolicyTargetTrackingConfigurationPtrInput interface {
	pulumi.Input

	ToPolicyTargetTrackingConfigurationPtrOutput() PolicyTargetTrackingConfigurationPtrOutput
	ToPolicyTargetTrackingConfigurationPtrOutputWithContext(context.Context) PolicyTargetTrackingConfigurationPtrOutput
}

type PolicyTargetTrackingConfigurationPtrOutput added in v1.19.0

type PolicyTargetTrackingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (PolicyTargetTrackingConfigurationPtrOutput) CustomizedMetricSpecification added in v1.19.0

A customized metric. Conflicts with `predefinedMetricSpecification`.

func (PolicyTargetTrackingConfigurationPtrOutput) DisableScaleIn added in v1.19.0

Indicates whether scale in by the target tracking policy is disabled.

func (PolicyTargetTrackingConfigurationPtrOutput) Elem added in v1.19.0

func (PolicyTargetTrackingConfigurationPtrOutput) ElementType added in v1.19.0

func (PolicyTargetTrackingConfigurationPtrOutput) PredefinedMetricSpecification added in v1.19.0

A predefined metric. Conflicts with `customizedMetricSpecification`.

func (PolicyTargetTrackingConfigurationPtrOutput) TargetValue added in v1.19.0

The target value for the metric.

func (PolicyTargetTrackingConfigurationPtrOutput) ToPolicyTargetTrackingConfigurationPtrOutput added in v1.19.0

func (o PolicyTargetTrackingConfigurationPtrOutput) ToPolicyTargetTrackingConfigurationPtrOutput() PolicyTargetTrackingConfigurationPtrOutput

func (PolicyTargetTrackingConfigurationPtrOutput) ToPolicyTargetTrackingConfigurationPtrOutputWithContext added in v1.19.0

func (o PolicyTargetTrackingConfigurationPtrOutput) ToPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) PolicyTargetTrackingConfigurationPtrOutput

type Schedule

type Schedule struct {
	pulumi.CustomResourceState

	// The ARN assigned by AWS to the autoscaling schedule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or Amazon Resource Name (ARN) of the Auto Scaling group.
	AutoscalingGroupName pulumi.StringOutput `pulumi:"autoscalingGroupName"`
	// The number of EC2 instances that should be running in the group. Default 0.  Set to -1 if you don't want to change the desired capacity at the scheduled time.
	DesiredCapacity pulumi.IntOutput `pulumi:"desiredCapacity"`
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	EndTime pulumi.StringOutput `pulumi:"endTime"`
	// The maximum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the maximum size at the scheduled time.
	MaxSize pulumi.IntOutput `pulumi:"maxSize"`
	// The minimum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the minimum size at the scheduled time.
	MinSize pulumi.IntOutput `pulumi:"minSize"`
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format.
	Recurrence pulumi.StringOutput `pulumi:"recurrence"`
	// The name of this scaling action.
	ScheduledActionName pulumi.StringOutput `pulumi:"scheduledActionName"`
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
}

Provides an AutoScaling Schedule resource.

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

func GetSchedule

func GetSchedule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScheduleState, opts ...pulumi.ResourceOption) (*Schedule, error)

GetSchedule gets an existing Schedule 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 NewSchedule

func NewSchedule(ctx *pulumi.Context,
	name string, args *ScheduleArgs, opts ...pulumi.ResourceOption) (*Schedule, error)

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

type ScheduleArgs

type ScheduleArgs struct {
	// The name or Amazon Resource Name (ARN) of the Auto Scaling group.
	AutoscalingGroupName pulumi.StringInput
	// The number of EC2 instances that should be running in the group. Default 0.  Set to -1 if you don't want to change the desired capacity at the scheduled time.
	DesiredCapacity pulumi.IntPtrInput
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	EndTime pulumi.StringPtrInput
	// The maximum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the maximum size at the scheduled time.
	MaxSize pulumi.IntPtrInput
	// The minimum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the minimum size at the scheduled time.
	MinSize pulumi.IntPtrInput
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format.
	Recurrence pulumi.StringPtrInput
	// The name of this scaling action.
	ScheduledActionName pulumi.StringInput
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	StartTime pulumi.StringPtrInput
}

The set of arguments for constructing a Schedule resource.

func (ScheduleArgs) ElementType added in v1.19.0

func (ScheduleArgs) ElementType() reflect.Type

type ScheduleState

type ScheduleState struct {
	// The ARN assigned by AWS to the autoscaling schedule.
	Arn pulumi.StringPtrInput
	// The name or Amazon Resource Name (ARN) of the Auto Scaling group.
	AutoscalingGroupName pulumi.StringPtrInput
	// The number of EC2 instances that should be running in the group. Default 0.  Set to -1 if you don't want to change the desired capacity at the scheduled time.
	DesiredCapacity pulumi.IntPtrInput
	// The time for this action to end, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	EndTime pulumi.StringPtrInput
	// The maximum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the maximum size at the scheduled time.
	MaxSize pulumi.IntPtrInput
	// The minimum size for the Auto Scaling group. Default 0.
	// Set to -1 if you don't want to change the minimum size at the scheduled time.
	MinSize pulumi.IntPtrInput
	// The time when recurring future actions will start. Start time is specified by the user following the Unix cron syntax format.
	Recurrence pulumi.StringPtrInput
	// The name of this scaling action.
	ScheduledActionName pulumi.StringPtrInput
	// The time for this action to start, in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only (for example, 2014-06-01T00:00:00Z ).
	// If you try to schedule your action in the past, Auto Scaling returns an error message.
	StartTime pulumi.StringPtrInput
}

func (ScheduleState) ElementType added in v1.19.0

func (ScheduleState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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