autoscaling

package
v0.104.0 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AutoScalingGroup

type AutoScalingGroup struct {
	pulumi.CustomResourceState

	// The name of the Auto Scaling group. This name must be unique per Region per account.
	//  The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
	//   You cannot use a colon (:) in the name.
	AutoScalingGroupName pulumi.StringPtrOutput `pulumi:"autoScalingGroupName"`
	// A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the “VPCZoneIdentifier“ property, or for attaching a network interface when an existing network interface ID is specified in a launch template.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*.
	CapacityRebalance pulumi.BoolPtrOutput `pulumi:"capacityRebalance"`
	// Reserved.
	Context pulumi.StringPtrOutput `pulumi:"context"`
	// *Only needed if you use simple scaling policies.*
	//  The amount of time, in seconds, between one scaling activity ending and another one starting due to simple scaling policies. For more information, see [Scaling cooldowns for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “300“ seconds
	Cooldown pulumi.StringPtrOutput `pulumi:"cooldown"`
	// The amount of time, in seconds, until a new instance is considered to have finished initializing and resource consumption to become stable after it enters the “InService“ state.
	//  During an instance refresh, Amazon EC2 Auto Scaling waits for the warm-up period after it replaces an instance before it moves on to replacing the next instance. Amazon EC2 Auto Scaling also waits for the warm-up period before aggregating the metrics for new instances with existing instances in the Amazon CloudWatch metrics that are used for scaling, resulting in more reliable usage data. For more information, see [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//   To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify “-1“ for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of “0“ or other nominal value.
	//   Default: None
	DefaultInstanceWarmup pulumi.IntPtrOutput `pulumi:"defaultInstanceWarmup"`
	// The desired capacity is the initial capacity of the Auto Scaling group at the time of its creation and the capacity it attempts to maintain. It can scale beyond this capacity if you configure automatic scaling.
	//  The number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group. If you do not specify a desired capacity when creating the stack, the default is the minimum size of the group.
	//  CloudFormation marks the Auto Scaling group as successful (by setting its status to CREATE_COMPLETE) when the desired capacity is reached. However, if a maximum Spot price is set in the launch template or launch configuration that you specified, then desired capacity is not used as a criteria for success. Whether your request is fulfilled depends on Spot Instance capacity and your maximum price.
	DesiredCapacity pulumi.StringPtrOutput `pulumi:"desiredCapacity"`
	// The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports “DesiredCapacityType“ for attribute-based instance type selection only. For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  By default, Amazon EC2 Auto Scaling specifies “units“, which translates into number of instances.
	//  Valid values: “units“ | “vcpu“ | “memory-mib“
	DesiredCapacityType pulumi.StringPtrOutput `pulumi:"desiredCapacityType"`
	// 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 and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the “InService“ state. For more information, see [Set the health check grace period for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “0“ seconds
	HealthCheckGracePeriod pulumi.IntPtrOutput `pulumi:"healthCheckGracePeriod"`
	// A comma-separated value string of one or more health check types.
	//  The valid values are “EC2“, “ELB“, and “VPC_LATTICE“. “EC2“ is the default health check and cannot be disabled. For more information, see [Health checks for Auto Scaling instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Only specify “EC2“ if you must clear a value that was previously set.
	HealthCheckType pulumi.StringPtrOutput `pulumi:"healthCheckType"`
	// The ID of the instance used to base the launch configuration on. For more information, see [Create an Auto Scaling group using an EC2 instance](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-from-instance.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  If you specify “LaunchTemplate“, “MixedInstancesPolicy“, or “LaunchConfigurationName“, don't specify “InstanceId“.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// An instance maintenance policy. For more information, see [Set instance maintenance policy](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.
	InstanceMaintenancePolicy AutoScalingGroupInstanceMaintenancePolicyPtrOutput `pulumi:"instanceMaintenancePolicy"`
	// The name of the launch configuration to use to launch instances.
	//  Required only if you don't specify “LaunchTemplate“, “MixedInstancesPolicy“, or “InstanceId“.
	LaunchConfigurationName pulumi.StringPtrOutput `pulumi:"launchConfigurationName"`
	// Information used to specify the launch template and version to use to launch instances. You can alternatively associate a launch template to the Auto Scaling group by specifying a “MixedInstancesPolicy“. For more information about creating launch templates, see [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  If you omit this property, you must specify “MixedInstancesPolicy“, “LaunchConfigurationName“, or “InstanceId“.
	LaunchTemplate AutoScalingGroupLaunchTemplateSpecificationPtrOutput `pulumi:"launchTemplate"`
	// One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.
	LifecycleHookSpecificationList AutoScalingGroupLifecycleHookSpecificationArrayOutput `pulumi:"lifecycleHookSpecificationList"`
	// A list of Classic Load Balancers associated with this Auto Scaling group. For Application Load Balancers, Network Load Balancers, and Gateway Load Balancers, specify the “TargetGroupARNs“ property instead.
	LoadBalancerNames pulumi.StringArrayOutput `pulumi:"loadBalancerNames"`
	// The maximum amount of time, in seconds, that an instance can be in service. The default is null. If specified, the value must be either 0 or a number equal to or greater than 86,400 seconds (1 day). For more information, see [Replacing Auto Scaling instances based on maximum instance lifetime](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MaxInstanceLifetime pulumi.IntPtrOutput `pulumi:"maxInstanceLifetime"`
	// The maximum size of the group.
	//   With a mixed instances policy that uses instance weighting, Amazon EC2 Auto Scaling may need to go above “MaxSize“ to meet your capacity requirements. In this event, Amazon EC2 Auto Scaling will never go above “MaxSize“ by more than your largest instance weight (weights that define how many units each instance contributes to the desired capacity of the group).
	MaxSize pulumi.StringOutput `pulumi:"maxSize"`
	// Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.
	MetricsCollection AutoScalingGroupMetricsCollectionArrayOutput `pulumi:"metricsCollection"`
	// The minimum size of the group.
	MinSize pulumi.StringOutput `pulumi:"minSize"`
	// An embedded object that specifies a mixed instances policy.
	//  The policy includes properties that not only define the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances (optional), and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacities, but also the properties that specify the instance configuration information—the launch template and instance types. The policy can also include a weight for each instance type and different launch templates for individual instance types.
	//  For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MixedInstancesPolicy AutoScalingGroupMixedInstancesPolicyPtrOutput `pulumi:"mixedInstancesPolicy"`
	// Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.
	NewInstancesProtectedFromScaleIn pulumi.BoolPtrOutput                               `pulumi:"newInstancesProtectedFromScaleIn"`
	NotificationConfiguration        AutoScalingGroupNotificationConfigurationPtrOutput `pulumi:"notificationConfiguration"`
	// Configures an Auto Scaling group to send notifications when specified events take place.
	NotificationConfigurations AutoScalingGroupNotificationConfigurationArrayOutput `pulumi:"notificationConfigurations"`
	// The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//   A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
	PlacementGroup pulumi.StringPtrOutput `pulumi:"placementGroup"`
	// The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named “AWSServiceRoleForAutoScaling“, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.
	ServiceLinkedRoleArn pulumi.StringPtrOutput `pulumi:"serviceLinkedRoleArn"`
	// One or more tags. You can tag your Auto Scaling group and propagate the tags to the Amazon EC2 instances it launches. Tags are not propagated to Amazon EBS volumes. To add tags to Amazon EBS volumes, specify the tags in a launch template but use caution. If the launch template specifies an instance tag with a key that is also specified for the Auto Scaling group, Amazon EC2 Auto Scaling overrides the value of that instance tag with the value specified by the Auto Scaling group. For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*.
	Tags AutoScalingGroupTagPropertyArrayOutput `pulumi:"tags"`
	// The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see [Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) in the *Amazon EC2 Auto Scaling User Guide*.
	TargetGroupArns pulumi.StringArrayOutput `pulumi:"targetGroupArns"`
	// A policy or a list of policies that are used to select the instance to terminate. These policies are executed in the order that you list them. For more information, see [Work with Amazon EC2 Auto Scaling termination policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-termination-policies.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Valid values: “Default“ | “AllocationStrategy“ | “ClosestToNextInstanceHour“ | “NewestInstance“ | “OldestInstance“ | “OldestLaunchConfiguration“ | “OldestLaunchTemplate“ | “arn:aws:lambda:region:account-id:function:my-function:my-alias“
	TerminationPolicies pulumi.StringArrayOutput `pulumi:"terminationPolicies"`
	// A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.
	//  If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
	//   When you update “VPCZoneIdentifier“, this retains the same Auto Scaling group and replaces old instances with new ones, according to the specified subnets. You can optionally specify how CloudFormation handles these updates by using an [UpdatePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html).
	//   Required to launch instances into a nondefault VPC. If you specify “VPCZoneIdentifier“ with “AvailabilityZones“, the subnets that you specify for this property must reside in those Availability Zones.
	VpcZoneIdentifier pulumi.StringArrayOutput `pulumi:"vpcZoneIdentifier"`
}

The “AWS::AutoScaling::AutoScalingGroup“ resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management.

For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html).
 Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. They do not provide full functionality for Amazon EC2 Auto Scaling or Amazon EC2. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) and [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*.

func GetAutoScalingGroup

func GetAutoScalingGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AutoScalingGroupState, opts ...pulumi.ResourceOption) (*AutoScalingGroup, error)

GetAutoScalingGroup gets an existing AutoScalingGroup 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 NewAutoScalingGroup

func NewAutoScalingGroup(ctx *pulumi.Context,
	name string, args *AutoScalingGroupArgs, opts ...pulumi.ResourceOption) (*AutoScalingGroup, error)

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

func (*AutoScalingGroup) ElementType

func (*AutoScalingGroup) ElementType() reflect.Type

func (*AutoScalingGroup) ToAutoScalingGroupOutput

func (i *AutoScalingGroup) ToAutoScalingGroupOutput() AutoScalingGroupOutput

func (*AutoScalingGroup) ToAutoScalingGroupOutputWithContext

func (i *AutoScalingGroup) ToAutoScalingGroupOutputWithContext(ctx context.Context) AutoScalingGroupOutput

type AutoScalingGroupAcceleratorCountRequest added in v0.3.0

type AutoScalingGroupAcceleratorCountRequest struct {
	// The maximum value.
	Max *int `pulumi:"max"`
	// The minimum value.
	Min *int `pulumi:"min"`
}

“AcceleratorCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of accelerators for an instance type.

type AutoScalingGroupAcceleratorCountRequestArgs added in v0.3.0

type AutoScalingGroupAcceleratorCountRequestArgs struct {
	// The maximum value.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The minimum value.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“AcceleratorCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of accelerators for an instance type.

func (AutoScalingGroupAcceleratorCountRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestOutput added in v0.3.0

func (i AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestOutput() AutoScalingGroupAcceleratorCountRequestOutput

func (AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorCountRequestOutput

func (AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestPtrOutput() AutoScalingGroupAcceleratorCountRequestPtrOutput

func (AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupAcceleratorCountRequestArgs) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorCountRequestPtrOutput

type AutoScalingGroupAcceleratorCountRequestInput added in v0.3.0

type AutoScalingGroupAcceleratorCountRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupAcceleratorCountRequestOutput() AutoScalingGroupAcceleratorCountRequestOutput
	ToAutoScalingGroupAcceleratorCountRequestOutputWithContext(context.Context) AutoScalingGroupAcceleratorCountRequestOutput
}

AutoScalingGroupAcceleratorCountRequestInput is an input type that accepts AutoScalingGroupAcceleratorCountRequestArgs and AutoScalingGroupAcceleratorCountRequestOutput values. You can construct a concrete instance of `AutoScalingGroupAcceleratorCountRequestInput` via:

AutoScalingGroupAcceleratorCountRequestArgs{...}

type AutoScalingGroupAcceleratorCountRequestOutput added in v0.3.0

type AutoScalingGroupAcceleratorCountRequestOutput struct{ *pulumi.OutputState }

“AcceleratorCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of accelerators for an instance type.

func (AutoScalingGroupAcceleratorCountRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorCountRequestOutput) Max added in v0.3.0

The maximum value.

func (AutoScalingGroupAcceleratorCountRequestOutput) Min added in v0.3.0

The minimum value.

func (AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestOutput added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestOutput() AutoScalingGroupAcceleratorCountRequestOutput

func (AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorCountRequestOutput

func (AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutput() AutoScalingGroupAcceleratorCountRequestPtrOutput

func (AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorCountRequestPtrOutput

type AutoScalingGroupAcceleratorCountRequestPtrInput added in v0.3.0

type AutoScalingGroupAcceleratorCountRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupAcceleratorCountRequestPtrOutput() AutoScalingGroupAcceleratorCountRequestPtrOutput
	ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext(context.Context) AutoScalingGroupAcceleratorCountRequestPtrOutput
}

AutoScalingGroupAcceleratorCountRequestPtrInput is an input type that accepts AutoScalingGroupAcceleratorCountRequestArgs, AutoScalingGroupAcceleratorCountRequestPtr and AutoScalingGroupAcceleratorCountRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupAcceleratorCountRequestPtrInput` via:

        AutoScalingGroupAcceleratorCountRequestArgs{...}

or:

        nil

type AutoScalingGroupAcceleratorCountRequestPtrOutput added in v0.3.0

type AutoScalingGroupAcceleratorCountRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) Max added in v0.3.0

The maximum value.

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) Min added in v0.3.0

The minimum value.

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestPtrOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutput() AutoScalingGroupAcceleratorCountRequestPtrOutput

func (AutoScalingGroupAcceleratorCountRequestPtrOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorCountRequestPtrOutput) ToAutoScalingGroupAcceleratorCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorCountRequestPtrOutput

type AutoScalingGroupAcceleratorTotalMemoryMiBRequest added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequest struct {
	// The memory maximum in MiB.
	Max *int `pulumi:"max"`
	// The memory minimum in MiB.
	Min *int `pulumi:"min"`
}

“AcceleratorTotalMemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total memory size for the accelerators for an instance type, in MiB.

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs struct {
	// The memory maximum in MiB.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The memory minimum in MiB.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“AcceleratorTotalMemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total memory size for the accelerators for an instance type, in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput added in v0.3.0

func (i AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput() AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput() AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestInput added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput() AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput
	ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutputWithContext(context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput
}

AutoScalingGroupAcceleratorTotalMemoryMiBRequestInput is an input type that accepts AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs and AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput values. You can construct a concrete instance of `AutoScalingGroupAcceleratorTotalMemoryMiBRequestInput` via:

AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs{...}

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput struct{ *pulumi.OutputState }

“AcceleratorTotalMemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total memory size for the accelerators for an instance type, in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) Max added in v0.3.0

The memory maximum in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) Min added in v0.3.0

The memory minimum in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput() AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrInput added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput() AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput
	ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext(context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput
}

AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrInput is an input type that accepts AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs, AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtr and AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrInput` via:

        AutoScalingGroupAcceleratorTotalMemoryMiBRequestArgs{...}

or:

        nil

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput added in v0.3.0

type AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) Max added in v0.3.0

The memory maximum in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) Min added in v0.3.0

The memory minimum in MiB.

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput added in v0.3.0

func (AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) ToAutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput

type AutoScalingGroupArgs

type AutoScalingGroupArgs struct {
	// The name of the Auto Scaling group. This name must be unique per Region per account.
	//  The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
	//   You cannot use a colon (:) in the name.
	AutoScalingGroupName pulumi.StringPtrInput
	// A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the “VPCZoneIdentifier“ property, or for attaching a network interface when an existing network interface ID is specified in a launch template.
	AvailabilityZones pulumi.StringArrayInput
	// Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*.
	CapacityRebalance pulumi.BoolPtrInput
	// Reserved.
	Context pulumi.StringPtrInput
	// *Only needed if you use simple scaling policies.*
	//  The amount of time, in seconds, between one scaling activity ending and another one starting due to simple scaling policies. For more information, see [Scaling cooldowns for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “300“ seconds
	Cooldown pulumi.StringPtrInput
	// The amount of time, in seconds, until a new instance is considered to have finished initializing and resource consumption to become stable after it enters the “InService“ state.
	//  During an instance refresh, Amazon EC2 Auto Scaling waits for the warm-up period after it replaces an instance before it moves on to replacing the next instance. Amazon EC2 Auto Scaling also waits for the warm-up period before aggregating the metrics for new instances with existing instances in the Amazon CloudWatch metrics that are used for scaling, resulting in more reliable usage data. For more information, see [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//   To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify “-1“ for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of “0“ or other nominal value.
	//   Default: None
	DefaultInstanceWarmup pulumi.IntPtrInput
	// The desired capacity is the initial capacity of the Auto Scaling group at the time of its creation and the capacity it attempts to maintain. It can scale beyond this capacity if you configure automatic scaling.
	//  The number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group. If you do not specify a desired capacity when creating the stack, the default is the minimum size of the group.
	//  CloudFormation marks the Auto Scaling group as successful (by setting its status to CREATE_COMPLETE) when the desired capacity is reached. However, if a maximum Spot price is set in the launch template or launch configuration that you specified, then desired capacity is not used as a criteria for success. Whether your request is fulfilled depends on Spot Instance capacity and your maximum price.
	DesiredCapacity pulumi.StringPtrInput
	// The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports “DesiredCapacityType“ for attribute-based instance type selection only. For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  By default, Amazon EC2 Auto Scaling specifies “units“, which translates into number of instances.
	//  Valid values: “units“ | “vcpu“ | “memory-mib“
	DesiredCapacityType pulumi.StringPtrInput
	// 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 and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the “InService“ state. For more information, see [Set the health check grace period for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “0“ seconds
	HealthCheckGracePeriod pulumi.IntPtrInput
	// A comma-separated value string of one or more health check types.
	//  The valid values are “EC2“, “ELB“, and “VPC_LATTICE“. “EC2“ is the default health check and cannot be disabled. For more information, see [Health checks for Auto Scaling instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Only specify “EC2“ if you must clear a value that was previously set.
	HealthCheckType pulumi.StringPtrInput
	// The ID of the instance used to base the launch configuration on. For more information, see [Create an Auto Scaling group using an EC2 instance](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-from-instance.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  If you specify “LaunchTemplate“, “MixedInstancesPolicy“, or “LaunchConfigurationName“, don't specify “InstanceId“.
	InstanceId pulumi.StringPtrInput
	// An instance maintenance policy. For more information, see [Set instance maintenance policy](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.
	InstanceMaintenancePolicy AutoScalingGroupInstanceMaintenancePolicyPtrInput
	// The name of the launch configuration to use to launch instances.
	//  Required only if you don't specify “LaunchTemplate“, “MixedInstancesPolicy“, or “InstanceId“.
	LaunchConfigurationName pulumi.StringPtrInput
	// Information used to specify the launch template and version to use to launch instances. You can alternatively associate a launch template to the Auto Scaling group by specifying a “MixedInstancesPolicy“. For more information about creating launch templates, see [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  If you omit this property, you must specify “MixedInstancesPolicy“, “LaunchConfigurationName“, or “InstanceId“.
	LaunchTemplate AutoScalingGroupLaunchTemplateSpecificationPtrInput
	// One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.
	LifecycleHookSpecificationList AutoScalingGroupLifecycleHookSpecificationArrayInput
	// A list of Classic Load Balancers associated with this Auto Scaling group. For Application Load Balancers, Network Load Balancers, and Gateway Load Balancers, specify the “TargetGroupARNs“ property instead.
	LoadBalancerNames pulumi.StringArrayInput
	// The maximum amount of time, in seconds, that an instance can be in service. The default is null. If specified, the value must be either 0 or a number equal to or greater than 86,400 seconds (1 day). For more information, see [Replacing Auto Scaling instances based on maximum instance lifetime](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MaxInstanceLifetime pulumi.IntPtrInput
	// The maximum size of the group.
	//   With a mixed instances policy that uses instance weighting, Amazon EC2 Auto Scaling may need to go above “MaxSize“ to meet your capacity requirements. In this event, Amazon EC2 Auto Scaling will never go above “MaxSize“ by more than your largest instance weight (weights that define how many units each instance contributes to the desired capacity of the group).
	MaxSize pulumi.StringInput
	// Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.
	MetricsCollection AutoScalingGroupMetricsCollectionArrayInput
	// The minimum size of the group.
	MinSize pulumi.StringInput
	// An embedded object that specifies a mixed instances policy.
	//  The policy includes properties that not only define the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances (optional), and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacities, but also the properties that specify the instance configuration information—the launch template and instance types. The policy can also include a weight for each instance type and different launch templates for individual instance types.
	//  For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MixedInstancesPolicy AutoScalingGroupMixedInstancesPolicyPtrInput
	// Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.
	NewInstancesProtectedFromScaleIn pulumi.BoolPtrInput
	NotificationConfiguration        AutoScalingGroupNotificationConfigurationPtrInput
	// Configures an Auto Scaling group to send notifications when specified events take place.
	NotificationConfigurations AutoScalingGroupNotificationConfigurationArrayInput
	// The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//   A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
	PlacementGroup pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named “AWSServiceRoleForAutoScaling“, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.
	ServiceLinkedRoleArn pulumi.StringPtrInput
	// One or more tags. You can tag your Auto Scaling group and propagate the tags to the Amazon EC2 instances it launches. Tags are not propagated to Amazon EBS volumes. To add tags to Amazon EBS volumes, specify the tags in a launch template but use caution. If the launch template specifies an instance tag with a key that is also specified for the Auto Scaling group, Amazon EC2 Auto Scaling overrides the value of that instance tag with the value specified by the Auto Scaling group. For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*.
	Tags AutoScalingGroupTagPropertyArrayInput
	// The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see [Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) in the *Amazon EC2 Auto Scaling User Guide*.
	TargetGroupArns pulumi.StringArrayInput
	// A policy or a list of policies that are used to select the instance to terminate. These policies are executed in the order that you list them. For more information, see [Work with Amazon EC2 Auto Scaling termination policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-termination-policies.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Valid values: “Default“ | “AllocationStrategy“ | “ClosestToNextInstanceHour“ | “NewestInstance“ | “OldestInstance“ | “OldestLaunchConfiguration“ | “OldestLaunchTemplate“ | “arn:aws:lambda:region:account-id:function:my-function:my-alias“
	TerminationPolicies pulumi.StringArrayInput
	// A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.
	//  If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
	//   When you update “VPCZoneIdentifier“, this retains the same Auto Scaling group and replaces old instances with new ones, according to the specified subnets. You can optionally specify how CloudFormation handles these updates by using an [UpdatePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html).
	//   Required to launch instances into a nondefault VPC. If you specify “VPCZoneIdentifier“ with “AvailabilityZones“, the subnets that you specify for this property must reside in those Availability Zones.
	VpcZoneIdentifier pulumi.StringArrayInput
}

The set of arguments for constructing a AutoScalingGroup resource.

func (AutoScalingGroupArgs) ElementType

func (AutoScalingGroupArgs) ElementType() reflect.Type

type AutoScalingGroupBaselineEbsBandwidthMbpsRequest added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequest struct {
	// The maximum value in Mbps.
	Max *int `pulumi:"max"`
	// The minimum value in Mbps.
	Min *int `pulumi:"min"`
}

“BaselineEbsBandwidthMbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum baseline bandwidth performance for an instance type, in Mbps.

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs struct {
	// The maximum value in Mbps.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The minimum value in Mbps.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“BaselineEbsBandwidthMbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum baseline bandwidth performance for an instance type, in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput added in v0.3.0

func (i AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput() AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutputWithContext(ctx context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput() AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestInput added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput() AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput
	ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutputWithContext(context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput
}

AutoScalingGroupBaselineEbsBandwidthMbpsRequestInput is an input type that accepts AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs and AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput values. You can construct a concrete instance of `AutoScalingGroupBaselineEbsBandwidthMbpsRequestInput` via:

AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs{...}

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput struct{ *pulumi.OutputState }

“BaselineEbsBandwidthMbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum baseline bandwidth performance for an instance type, in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) Max added in v0.3.0

The maximum value in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) Min added in v0.3.0

The minimum value in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestOutputWithContext(ctx context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput() AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupBaselineEbsBandwidthMbpsRequestOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrInput added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput() AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput
	ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext(context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput
}

AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrInput is an input type that accepts AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs, AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtr and AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrInput` via:

        AutoScalingGroupBaselineEbsBandwidthMbpsRequestArgs{...}

or:

        nil

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput added in v0.3.0

type AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) Max added in v0.3.0

The maximum value in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) Min added in v0.3.0

The minimum value in Mbps.

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput added in v0.3.0

func (AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput) ToAutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrOutput

type AutoScalingGroupInput

type AutoScalingGroupInput interface {
	pulumi.Input

	ToAutoScalingGroupOutput() AutoScalingGroupOutput
	ToAutoScalingGroupOutputWithContext(ctx context.Context) AutoScalingGroupOutput
}

type AutoScalingGroupInstanceMaintenancePolicy added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicy struct {
	// Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of “-1“.
	//  Both “MinHealthyPercentage“ and “MaxHealthyPercentage“ must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.
	MaxHealthyPercentage *int `pulumi:"maxHealthyPercentage"`
	// Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of “-1“.
	MinHealthyPercentage *int `pulumi:"minHealthyPercentage"`
}

“InstanceMaintenancePolicy“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Instance maintenance policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.

type AutoScalingGroupInstanceMaintenancePolicyArgs added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicyArgs struct {
	// Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of “-1“.
	//  Both “MinHealthyPercentage“ and “MaxHealthyPercentage“ must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.
	MaxHealthyPercentage pulumi.IntPtrInput `pulumi:"maxHealthyPercentage"`
	// Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of “-1“.
	MinHealthyPercentage pulumi.IntPtrInput `pulumi:"minHealthyPercentage"`
}

“InstanceMaintenancePolicy“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Instance maintenance policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupInstanceMaintenancePolicyArgs) ElementType added in v0.77.0

func (AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyOutput added in v0.77.0

func (i AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyOutput() AutoScalingGroupInstanceMaintenancePolicyOutput

func (AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyOutputWithContext added in v0.77.0

func (i AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyOutputWithContext(ctx context.Context) AutoScalingGroupInstanceMaintenancePolicyOutput

func (AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput added in v0.77.0

func (i AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput() AutoScalingGroupInstanceMaintenancePolicyPtrOutput

func (AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext added in v0.77.0

func (i AutoScalingGroupInstanceMaintenancePolicyArgs) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceMaintenancePolicyPtrOutput

type AutoScalingGroupInstanceMaintenancePolicyInput added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicyInput interface {
	pulumi.Input

	ToAutoScalingGroupInstanceMaintenancePolicyOutput() AutoScalingGroupInstanceMaintenancePolicyOutput
	ToAutoScalingGroupInstanceMaintenancePolicyOutputWithContext(context.Context) AutoScalingGroupInstanceMaintenancePolicyOutput
}

AutoScalingGroupInstanceMaintenancePolicyInput is an input type that accepts AutoScalingGroupInstanceMaintenancePolicyArgs and AutoScalingGroupInstanceMaintenancePolicyOutput values. You can construct a concrete instance of `AutoScalingGroupInstanceMaintenancePolicyInput` via:

AutoScalingGroupInstanceMaintenancePolicyArgs{...}

type AutoScalingGroupInstanceMaintenancePolicyOutput added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicyOutput struct{ *pulumi.OutputState }

“InstanceMaintenancePolicy“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Instance maintenance policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupInstanceMaintenancePolicyOutput) ElementType added in v0.77.0

func (AutoScalingGroupInstanceMaintenancePolicyOutput) MaxHealthyPercentage added in v0.77.0

Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of “-1“.

Both ``MinHealthyPercentage`` and ``MaxHealthyPercentage`` must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.

func (AutoScalingGroupInstanceMaintenancePolicyOutput) MinHealthyPercentage added in v0.77.0

Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of “-1“.

func (AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyOutput added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyOutput() AutoScalingGroupInstanceMaintenancePolicyOutput

func (AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyOutputWithContext added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyOutputWithContext(ctx context.Context) AutoScalingGroupInstanceMaintenancePolicyOutput

func (AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput() AutoScalingGroupInstanceMaintenancePolicyPtrOutput

func (AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceMaintenancePolicyPtrOutput

type AutoScalingGroupInstanceMaintenancePolicyPtrInput added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicyPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput() AutoScalingGroupInstanceMaintenancePolicyPtrOutput
	ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext(context.Context) AutoScalingGroupInstanceMaintenancePolicyPtrOutput
}

AutoScalingGroupInstanceMaintenancePolicyPtrInput is an input type that accepts AutoScalingGroupInstanceMaintenancePolicyArgs, AutoScalingGroupInstanceMaintenancePolicyPtr and AutoScalingGroupInstanceMaintenancePolicyPtrOutput values. You can construct a concrete instance of `AutoScalingGroupInstanceMaintenancePolicyPtrInput` via:

        AutoScalingGroupInstanceMaintenancePolicyArgs{...}

or:

        nil

type AutoScalingGroupInstanceMaintenancePolicyPtrOutput added in v0.77.0

type AutoScalingGroupInstanceMaintenancePolicyPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) Elem added in v0.77.0

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) ElementType added in v0.77.0

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) MaxHealthyPercentage added in v0.77.0

Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances. Value range is 100 to 200. To clear a previously set value, specify a value of “-1“.

Both ``MinHealthyPercentage`` and ``MaxHealthyPercentage`` must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) MinHealthyPercentage added in v0.77.0

Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group. It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances. Value range is 0 to 100. To clear a previously set value, specify a value of “-1“.

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyPtrOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutput() AutoScalingGroupInstanceMaintenancePolicyPtrOutput

func (AutoScalingGroupInstanceMaintenancePolicyPtrOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext added in v0.77.0

func (o AutoScalingGroupInstanceMaintenancePolicyPtrOutput) ToAutoScalingGroupInstanceMaintenancePolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceMaintenancePolicyPtrOutput

type AutoScalingGroupInstanceRequirements added in v0.3.0

type AutoScalingGroupInstanceRequirements struct {
	// The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.
	//  To exclude accelerator-enabled instance types, set “Max“ to “0“.
	//  Default: No minimum or maximum limits
	AcceleratorCount *AutoScalingGroupAcceleratorCountRequest `pulumi:"acceleratorCount"`
	// Indicates whether instance types must have accelerators by specific manufacturers.
	//   +  For instance types with NVIDIA devices, specify “nvidia“.
	//   +  For instance types with AMD devices, specify “amd“.
	//   +  For instance types with AWS devices, specify “amazon-web-services“.
	//   +  For instance types with Xilinx devices, specify “xilinx“.
	//
	//  Default: Any manufacturer
	AcceleratorManufacturers []string `pulumi:"acceleratorManufacturers"`
	// Lists the accelerators that must be on an instance type.
	//   +  For instance types with NVIDIA A100 GPUs, specify “a100“.
	//   +  For instance types with NVIDIA V100 GPUs, specify “v100“.
	//   +  For instance types with NVIDIA K80 GPUs, specify “k80“.
	//   +  For instance types with NVIDIA T4 GPUs, specify “t4“.
	//   +  For instance types with NVIDIA M60 GPUs, specify “m60“.
	//   +  For instance types with AMD Radeon Pro V520 GPUs, specify “radeon-pro-v520“.
	//   +  For instance types with Xilinx VU9P FPGAs, specify “vu9p“.
	//
	//  Default: Any accelerator
	AcceleratorNames []string `pulumi:"acceleratorNames"`
	// The minimum and maximum total memory size for the accelerators on an instance type, in MiB.
	//  Default: No minimum or maximum limits
	AcceleratorTotalMemoryMiB *AutoScalingGroupAcceleratorTotalMemoryMiBRequest `pulumi:"acceleratorTotalMemoryMiB"`
	// Lists the accelerator types that must be on an instance type.
	//   +  For instance types with GPU accelerators, specify “gpu“.
	//   +  For instance types with FPGA accelerators, specify “fpga“.
	//   +  For instance types with inference accelerators, specify “inference“.
	//
	//  Default: Any accelerator type
	AcceleratorTypes []string `pulumi:"acceleratorTypes"`
	// The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.
	//  You can use strings with one or more wild cards, represented by an asterisk (“*“), to allow an instance type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.
	//  For example, if you specify “c5*“, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify “m5a.*“, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
	//   If you specify “AllowedInstanceTypes“, you can't specify “ExcludedInstanceTypes“.
	//   Default: All instance types
	AllowedInstanceTypes []string `pulumi:"allowedInstanceTypes"`
	// Indicates whether bare metal instance types are included, excluded, or required.
	//  Default: “excluded“
	BareMetal *string `pulumi:"bareMetal"`
	// The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS–optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: No minimum or maximum limits
	BaselineEbsBandwidthMbps *AutoScalingGroupBaselineEbsBandwidthMbpsRequest `pulumi:"baselineEbsBandwidthMbps"`
	// Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: “excluded“
	BurstablePerformance *string `pulumi:"burstablePerformance"`
	// Lists which specific CPU manufacturers to include.
	//   +  For instance types with Intel CPUs, specify “intel“.
	//   +  For instance types with AMD CPUs, specify “amd“.
	//   +  For instance types with AWS CPUs, specify “amazon-web-services“.
	//
	//   Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template.
	//   Default: Any manufacturer
	CpuManufacturers []string `pulumi:"cpuManufacturers"`
	// The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (“*“), to exclude an instance family, type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.
	//  For example, if you specify “c5*“, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify “m5a.*“, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
	//   If you specify “ExcludedInstanceTypes“, you can't specify “AllowedInstanceTypes“.
	//   Default: No excluded instance types
	ExcludedInstanceTypes []string `pulumi:"excludedInstanceTypes"`
	// Indicates whether current or previous generation instance types are included.
	//   +  For current generation instance types, specify “current“. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//   +  For previous generation instance types, specify “previous“.
	//
	//  Default: Any current or previous generation
	InstanceGenerations []string `pulumi:"instanceGenerations"`
	// Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: “included“
	LocalStorage *string `pulumi:"localStorage"`
	// Indicates the type of local storage that is required.
	//   +  For instance types with hard disk drive (HDD) storage, specify “hdd“.
	//   +  For instance types with solid state drive (SSD) storage, specify “ssd“.
	//
	//  Default: Any local storage type
	LocalStorageTypes []string `pulumi:"localStorageTypes"`
	// [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To indicate no price protection threshold, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
	//   Only one of “SpotMaxPricePercentageOverLowestPrice“ or “MaxSpotPriceAsPercentageOfOptimalOnDemandPrice“ can be specified. If you don't specify either, then “SpotMaxPricePercentageOverLowestPrice“ is used and the value for that parameter defaults to “100“.
	MaxSpotPriceAsPercentageOfOptimalOnDemandPrice *int `pulumi:"maxSpotPriceAsPercentageOfOptimalOnDemandPrice"`
	// The minimum and maximum amount of memory per vCPU for an instance type, in GiB.
	//  Default: No minimum or maximum limits
	MemoryGiBPerVCpu *AutoScalingGroupMemoryGiBPerVCpuRequest `pulumi:"memoryGiBPerVCpu"`
	// The minimum and maximum instance memory size for an instance type, in MiB.
	MemoryMiB AutoScalingGroupMemoryMiBRequest `pulumi:"memoryMiB"`
	// The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).
	//  Default: No minimum or maximum limits
	NetworkBandwidthGbps *AutoScalingGroupNetworkBandwidthGbpsRequest `pulumi:"networkBandwidthGbps"`
	// The minimum and maximum number of network interfaces for an instance type.
	//  Default: No minimum or maximum limits
	NetworkInterfaceCount *AutoScalingGroupNetworkInterfaceCountRequest `pulumi:"networkInterfaceCount"`
	// [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To turn off price protection, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
	//  Default: “20“
	OnDemandMaxPricePercentageOverLowestPrice *int `pulumi:"onDemandMaxPricePercentageOverLowestPrice"`
	// Indicates whether instance types must provide On-Demand Instance hibernation support.
	//  Default: “false“
	RequireHibernateSupport *bool `pulumi:"requireHibernateSupport"`
	// [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To turn off price protection, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
	//   Only one of “SpotMaxPricePercentageOverLowestPrice“ or “MaxSpotPriceAsPercentageOfOptimalOnDemandPrice“ can be specified.
	//   Default: “100“
	SpotMaxPricePercentageOverLowestPrice *int `pulumi:"spotMaxPricePercentageOverLowestPrice"`
	// The minimum and maximum total local storage size for an instance type, in GB.
	//  Default: No minimum or maximum limits
	TotalLocalStorageGb *AutoScalingGroupTotalLocalStorageGbRequest `pulumi:"totalLocalStorageGb"`
	// The minimum and maximum number of vCPUs for an instance type.
	VCpuCount AutoScalingGroupVCpuCountRequest `pulumi:"vCpuCount"`
}

The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.
To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:
 +  ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
 +  ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.

 You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.
 For an example template, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.
``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

type AutoScalingGroupInstanceRequirementsArgs added in v0.3.0

type AutoScalingGroupInstanceRequirementsArgs struct {
	// The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.
	//  To exclude accelerator-enabled instance types, set “Max“ to “0“.
	//  Default: No minimum or maximum limits
	AcceleratorCount AutoScalingGroupAcceleratorCountRequestPtrInput `pulumi:"acceleratorCount"`
	// Indicates whether instance types must have accelerators by specific manufacturers.
	//   +  For instance types with NVIDIA devices, specify “nvidia“.
	//   +  For instance types with AMD devices, specify “amd“.
	//   +  For instance types with AWS devices, specify “amazon-web-services“.
	//   +  For instance types with Xilinx devices, specify “xilinx“.
	//
	//  Default: Any manufacturer
	AcceleratorManufacturers pulumi.StringArrayInput `pulumi:"acceleratorManufacturers"`
	// Lists the accelerators that must be on an instance type.
	//   +  For instance types with NVIDIA A100 GPUs, specify “a100“.
	//   +  For instance types with NVIDIA V100 GPUs, specify “v100“.
	//   +  For instance types with NVIDIA K80 GPUs, specify “k80“.
	//   +  For instance types with NVIDIA T4 GPUs, specify “t4“.
	//   +  For instance types with NVIDIA M60 GPUs, specify “m60“.
	//   +  For instance types with AMD Radeon Pro V520 GPUs, specify “radeon-pro-v520“.
	//   +  For instance types with Xilinx VU9P FPGAs, specify “vu9p“.
	//
	//  Default: Any accelerator
	AcceleratorNames pulumi.StringArrayInput `pulumi:"acceleratorNames"`
	// The minimum and maximum total memory size for the accelerators on an instance type, in MiB.
	//  Default: No minimum or maximum limits
	AcceleratorTotalMemoryMiB AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrInput `pulumi:"acceleratorTotalMemoryMiB"`
	// Lists the accelerator types that must be on an instance type.
	//   +  For instance types with GPU accelerators, specify “gpu“.
	//   +  For instance types with FPGA accelerators, specify “fpga“.
	//   +  For instance types with inference accelerators, specify “inference“.
	//
	//  Default: Any accelerator type
	AcceleratorTypes pulumi.StringArrayInput `pulumi:"acceleratorTypes"`
	// The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.
	//  You can use strings with one or more wild cards, represented by an asterisk (“*“), to allow an instance type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.
	//  For example, if you specify “c5*“, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify “m5a.*“, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
	//   If you specify “AllowedInstanceTypes“, you can't specify “ExcludedInstanceTypes“.
	//   Default: All instance types
	AllowedInstanceTypes pulumi.StringArrayInput `pulumi:"allowedInstanceTypes"`
	// Indicates whether bare metal instance types are included, excluded, or required.
	//  Default: “excluded“
	BareMetal pulumi.StringPtrInput `pulumi:"bareMetal"`
	// The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS–optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: No minimum or maximum limits
	BaselineEbsBandwidthMbps AutoScalingGroupBaselineEbsBandwidthMbpsRequestPtrInput `pulumi:"baselineEbsBandwidthMbps"`
	// Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: “excluded“
	BurstablePerformance pulumi.StringPtrInput `pulumi:"burstablePerformance"`
	// Lists which specific CPU manufacturers to include.
	//   +  For instance types with Intel CPUs, specify “intel“.
	//   +  For instance types with AMD CPUs, specify “amd“.
	//   +  For instance types with AWS CPUs, specify “amazon-web-services“.
	//
	//   Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template.
	//   Default: Any manufacturer
	CpuManufacturers pulumi.StringArrayInput `pulumi:"cpuManufacturers"`
	// The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (“*“), to exclude an instance family, type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.
	//  For example, if you specify “c5*“, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify “m5a.*“, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
	//   If you specify “ExcludedInstanceTypes“, you can't specify “AllowedInstanceTypes“.
	//   Default: No excluded instance types
	ExcludedInstanceTypes pulumi.StringArrayInput `pulumi:"excludedInstanceTypes"`
	// Indicates whether current or previous generation instance types are included.
	//   +  For current generation instance types, specify “current“. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//   +  For previous generation instance types, specify “previous“.
	//
	//  Default: Any current or previous generation
	InstanceGenerations pulumi.StringArrayInput `pulumi:"instanceGenerations"`
	// Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//  Default: “included“
	LocalStorage pulumi.StringPtrInput `pulumi:"localStorage"`
	// Indicates the type of local storage that is required.
	//   +  For instance types with hard disk drive (HDD) storage, specify “hdd“.
	//   +  For instance types with solid state drive (SSD) storage, specify “ssd“.
	//
	//  Default: Any local storage type
	LocalStorageTypes pulumi.StringArrayInput `pulumi:"localStorageTypes"`
	// [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To indicate no price protection threshold, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
	//   Only one of “SpotMaxPricePercentageOverLowestPrice“ or “MaxSpotPriceAsPercentageOfOptimalOnDemandPrice“ can be specified. If you don't specify either, then “SpotMaxPricePercentageOverLowestPrice“ is used and the value for that parameter defaults to “100“.
	MaxSpotPriceAsPercentageOfOptimalOnDemandPrice pulumi.IntPtrInput `pulumi:"maxSpotPriceAsPercentageOfOptimalOnDemandPrice"`
	// The minimum and maximum amount of memory per vCPU for an instance type, in GiB.
	//  Default: No minimum or maximum limits
	MemoryGiBPerVCpu AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput `pulumi:"memoryGiBPerVCpu"`
	// The minimum and maximum instance memory size for an instance type, in MiB.
	MemoryMiB AutoScalingGroupMemoryMiBRequestInput `pulumi:"memoryMiB"`
	// The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).
	//  Default: No minimum or maximum limits
	NetworkBandwidthGbps AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput `pulumi:"networkBandwidthGbps"`
	// The minimum and maximum number of network interfaces for an instance type.
	//  Default: No minimum or maximum limits
	NetworkInterfaceCount AutoScalingGroupNetworkInterfaceCountRequestPtrInput `pulumi:"networkInterfaceCount"`
	// [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To turn off price protection, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
	//  Default: “20“
	OnDemandMaxPricePercentageOverLowestPrice pulumi.IntPtrInput `pulumi:"onDemandMaxPricePercentageOverLowestPrice"`
	// Indicates whether instance types must provide On-Demand Instance hibernation support.
	//  Default: “false“
	RequireHibernateSupport pulumi.BoolPtrInput `pulumi:"requireHibernateSupport"`
	// [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
	//  The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
	//  To turn off price protection, specify a high value, such as “999999“.
	//  If you set “DesiredCapacityType“ to “vcpu“ or “memory-mib“, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
	//   Only one of “SpotMaxPricePercentageOverLowestPrice“ or “MaxSpotPriceAsPercentageOfOptimalOnDemandPrice“ can be specified.
	//   Default: “100“
	SpotMaxPricePercentageOverLowestPrice pulumi.IntPtrInput `pulumi:"spotMaxPricePercentageOverLowestPrice"`
	// The minimum and maximum total local storage size for an instance type, in GB.
	//  Default: No minimum or maximum limits
	TotalLocalStorageGb AutoScalingGroupTotalLocalStorageGbRequestPtrInput `pulumi:"totalLocalStorageGb"`
	// The minimum and maximum number of vCPUs for an instance type.
	VCpuCount AutoScalingGroupVCpuCountRequestInput `pulumi:"vCpuCount"`
}

The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.
To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:
 +  ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
 +  ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.

 You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.
 For an example template, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.
``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

func (AutoScalingGroupInstanceRequirementsArgs) ElementType added in v0.3.0

func (AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsOutput added in v0.3.0

func (i AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsOutput() AutoScalingGroupInstanceRequirementsOutput

func (AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsOutputWithContext added in v0.3.0

func (i AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsOutputWithContext(ctx context.Context) AutoScalingGroupInstanceRequirementsOutput

func (AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsPtrOutput added in v0.3.0

func (i AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsPtrOutput() AutoScalingGroupInstanceRequirementsPtrOutput

func (AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupInstanceRequirementsArgs) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceRequirementsPtrOutput

type AutoScalingGroupInstanceRequirementsInput added in v0.3.0

type AutoScalingGroupInstanceRequirementsInput interface {
	pulumi.Input

	ToAutoScalingGroupInstanceRequirementsOutput() AutoScalingGroupInstanceRequirementsOutput
	ToAutoScalingGroupInstanceRequirementsOutputWithContext(context.Context) AutoScalingGroupInstanceRequirementsOutput
}

AutoScalingGroupInstanceRequirementsInput is an input type that accepts AutoScalingGroupInstanceRequirementsArgs and AutoScalingGroupInstanceRequirementsOutput values. You can construct a concrete instance of `AutoScalingGroupInstanceRequirementsInput` via:

AutoScalingGroupInstanceRequirementsArgs{...}

type AutoScalingGroupInstanceRequirementsOutput added in v0.3.0

type AutoScalingGroupInstanceRequirementsOutput struct{ *pulumi.OutputState }

The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.
To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:
 +  ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
 +  ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.

 You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.
 For an example template, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.
``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

func (AutoScalingGroupInstanceRequirementsOutput) AcceleratorCount added in v0.3.0

The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.

To exclude accelerator-enabled instance types, set ``Max`` to ``0``.
Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) AcceleratorManufacturers added in v0.3.0

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify “nvidia“.

  • For instance types with AMD devices, specify “amd“.

  • For instance types with AWS devices, specify “amazon-web-services“.

  • For instance types with Xilinx devices, specify “xilinx“.

    Default: Any manufacturer

func (AutoScalingGroupInstanceRequirementsOutput) AcceleratorNames added in v0.3.0

Lists the accelerators that must be on an instance type.

  • For instance types with NVIDIA A100 GPUs, specify “a100“.

  • For instance types with NVIDIA V100 GPUs, specify “v100“.

  • For instance types with NVIDIA K80 GPUs, specify “k80“.

  • For instance types with NVIDIA T4 GPUs, specify “t4“.

  • For instance types with NVIDIA M60 GPUs, specify “m60“.

  • For instance types with AMD Radeon Pro V520 GPUs, specify “radeon-pro-v520“.

  • For instance types with Xilinx VU9P FPGAs, specify “vu9p“.

    Default: Any accelerator

func (AutoScalingGroupInstanceRequirementsOutput) AcceleratorTotalMemoryMiB added in v0.3.0

The minimum and maximum total memory size for the accelerators on an instance type, in MiB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) AcceleratorTypes added in v0.3.0

Lists the accelerator types that must be on an instance type.

  • For instance types with GPU accelerators, specify “gpu“.

  • For instance types with FPGA accelerators, specify “fpga“.

  • For instance types with inference accelerators, specify “inference“.

    Default: Any accelerator type

func (AutoScalingGroupInstanceRequirementsOutput) AllowedInstanceTypes added in v0.42.0

The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.

You can use strings with one or more wild cards, represented by an asterisk (``*``), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
For example, if you specify ``c5*``, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
 If you specify ``AllowedInstanceTypes``, you can't specify ``ExcludedInstanceTypes``.
 Default: All instance types

func (AutoScalingGroupInstanceRequirementsOutput) BareMetal added in v0.3.0

Indicates whether bare metal instance types are included, excluded, or required.

Default: ``excluded``

func (AutoScalingGroupInstanceRequirementsOutput) BaselineEbsBandwidthMbps added in v0.3.0

The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS–optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) BurstablePerformance added in v0.3.0

Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: ``excluded``

func (AutoScalingGroupInstanceRequirementsOutput) CpuManufacturers added in v0.3.0

Lists which specific CPU manufacturers to include.

  • For instance types with Intel CPUs, specify “intel“.

  • For instance types with AMD CPUs, specify “amd“.

  • For instance types with AWS CPUs, specify “amazon-web-services“.

    Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

func (AutoScalingGroupInstanceRequirementsOutput) ElementType added in v0.3.0

func (AutoScalingGroupInstanceRequirementsOutput) ExcludedInstanceTypes added in v0.3.0

The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (“*“), to exclude an instance family, type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.

For example, if you specify ``c5*``, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
 If you specify ``ExcludedInstanceTypes``, you can't specify ``AllowedInstanceTypes``.
 Default: No excluded instance types

func (AutoScalingGroupInstanceRequirementsOutput) InstanceGenerations added in v0.3.0

Indicates whether current or previous generation instance types are included.

  • For current generation instance types, specify “current“. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.

  • For previous generation instance types, specify “previous“.

    Default: Any current or previous generation

func (AutoScalingGroupInstanceRequirementsOutput) LocalStorage added in v0.3.0

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: ``included``

func (AutoScalingGroupInstanceRequirementsOutput) LocalStorageTypes added in v0.3.0

Indicates the type of local storage that is required.

  • For instance types with hard disk drive (HDD) storage, specify “hdd“.

  • For instance types with solid state drive (SSD) storage, specify “ssd“.

    Default: Any local storage type

func (AutoScalingGroupInstanceRequirementsOutput) MaxSpotPriceAsPercentageOfOptimalOnDemandPrice added in v0.95.0

func (o AutoScalingGroupInstanceRequirementsOutput) MaxSpotPriceAsPercentageOfOptimalOnDemandPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To indicate no price protection threshold, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
 Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100``.

func (AutoScalingGroupInstanceRequirementsOutput) MemoryGiBPerVCpu added in v0.3.0

The minimum and maximum amount of memory per vCPU for an instance type, in GiB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) MemoryMiB added in v0.3.0

The minimum and maximum instance memory size for an instance type, in MiB.

func (AutoScalingGroupInstanceRequirementsOutput) NetworkBandwidthGbps added in v0.42.0

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) NetworkInterfaceCount added in v0.3.0

The minimum and maximum number of network interfaces for an instance type.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) OnDemandMaxPricePercentageOverLowestPrice added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) OnDemandMaxPricePercentageOverLowestPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To turn off price protection, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
Default: ``20``

func (AutoScalingGroupInstanceRequirementsOutput) RequireHibernateSupport added in v0.3.0

Indicates whether instance types must provide On-Demand Instance hibernation support.

Default: ``false``

func (AutoScalingGroupInstanceRequirementsOutput) SpotMaxPricePercentageOverLowestPrice added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) SpotMaxPricePercentageOverLowestPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To turn off price protection, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
 Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified.
 Default: ``100``

func (AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsOutput added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsOutput() AutoScalingGroupInstanceRequirementsOutput

func (AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsOutputWithContext added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsOutputWithContext(ctx context.Context) AutoScalingGroupInstanceRequirementsOutput

func (AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsPtrOutput added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsPtrOutput() AutoScalingGroupInstanceRequirementsPtrOutput

func (AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsOutput) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceRequirementsPtrOutput

func (AutoScalingGroupInstanceRequirementsOutput) TotalLocalStorageGb added in v0.72.0

The minimum and maximum total local storage size for an instance type, in GB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsOutput) VCpuCount added in v0.3.0

The minimum and maximum number of vCPUs for an instance type.

type AutoScalingGroupInstanceRequirementsPtrInput added in v0.3.0

type AutoScalingGroupInstanceRequirementsPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupInstanceRequirementsPtrOutput() AutoScalingGroupInstanceRequirementsPtrOutput
	ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext(context.Context) AutoScalingGroupInstanceRequirementsPtrOutput
}

AutoScalingGroupInstanceRequirementsPtrInput is an input type that accepts AutoScalingGroupInstanceRequirementsArgs, AutoScalingGroupInstanceRequirementsPtr and AutoScalingGroupInstanceRequirementsPtrOutput values. You can construct a concrete instance of `AutoScalingGroupInstanceRequirementsPtrInput` via:

        AutoScalingGroupInstanceRequirementsArgs{...}

or:

        nil

type AutoScalingGroupInstanceRequirementsPtrOutput added in v0.3.0

type AutoScalingGroupInstanceRequirementsPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupInstanceRequirementsPtrOutput) AcceleratorCount added in v0.3.0

The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) for an instance type.

To exclude accelerator-enabled instance types, set ``Max`` to ``0``.
Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) AcceleratorManufacturers added in v0.3.0

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify “nvidia“.

  • For instance types with AMD devices, specify “amd“.

  • For instance types with AWS devices, specify “amazon-web-services“.

  • For instance types with Xilinx devices, specify “xilinx“.

    Default: Any manufacturer

func (AutoScalingGroupInstanceRequirementsPtrOutput) AcceleratorNames added in v0.3.0

Lists the accelerators that must be on an instance type.

  • For instance types with NVIDIA A100 GPUs, specify “a100“.

  • For instance types with NVIDIA V100 GPUs, specify “v100“.

  • For instance types with NVIDIA K80 GPUs, specify “k80“.

  • For instance types with NVIDIA T4 GPUs, specify “t4“.

  • For instance types with NVIDIA M60 GPUs, specify “m60“.

  • For instance types with AMD Radeon Pro V520 GPUs, specify “radeon-pro-v520“.

  • For instance types with Xilinx VU9P FPGAs, specify “vu9p“.

    Default: Any accelerator

func (AutoScalingGroupInstanceRequirementsPtrOutput) AcceleratorTotalMemoryMiB added in v0.3.0

The minimum and maximum total memory size for the accelerators on an instance type, in MiB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) AcceleratorTypes added in v0.3.0

Lists the accelerator types that must be on an instance type.

  • For instance types with GPU accelerators, specify “gpu“.

  • For instance types with FPGA accelerators, specify “fpga“.

  • For instance types with inference accelerators, specify “inference“.

    Default: Any accelerator type

func (AutoScalingGroupInstanceRequirementsPtrOutput) AllowedInstanceTypes added in v0.42.0

The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.

You can use strings with one or more wild cards, represented by an asterisk (``*``), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge``, ``c5*.*``, ``m5a.*``, ``r*``, ``*3*``.
For example, if you specify ``c5*``, Amazon EC2 Auto Scaling will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will allow all the M5a instance types, but not the M5n instance types.
 If you specify ``AllowedInstanceTypes``, you can't specify ``ExcludedInstanceTypes``.
 Default: All instance types

func (AutoScalingGroupInstanceRequirementsPtrOutput) BareMetal added in v0.3.0

Indicates whether bare metal instance types are included, excluded, or required.

Default: ``excluded``

func (AutoScalingGroupInstanceRequirementsPtrOutput) BaselineEbsBandwidthMbps added in v0.3.0

The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS–optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) BurstablePerformance added in v0.3.0

Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: ``excluded``

func (AutoScalingGroupInstanceRequirementsPtrOutput) CpuManufacturers added in v0.3.0

Lists which specific CPU manufacturers to include.

  • For instance types with Intel CPUs, specify “intel“.

  • For instance types with AMD CPUs, specify “amd“.

  • For instance types with AWS CPUs, specify “amazon-web-services“.

    Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

func (AutoScalingGroupInstanceRequirementsPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupInstanceRequirementsPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupInstanceRequirementsPtrOutput) ExcludedInstanceTypes added in v0.3.0

The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (“*“), to exclude an instance family, type, size, or generation. The following are examples: “m5.8xlarge“, “c5*.*“, “m5a.*“, “r*“, “*3*“.

For example, if you specify ``c5*``, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*``, Amazon EC2 Auto Scaling will exclude all the M5a instance types, but not the M5n instance types.
 If you specify ``ExcludedInstanceTypes``, you can't specify ``AllowedInstanceTypes``.
 Default: No excluded instance types

func (AutoScalingGroupInstanceRequirementsPtrOutput) InstanceGenerations added in v0.3.0

Indicates whether current or previous generation instance types are included.

  • For current generation instance types, specify “current“. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.

  • For previous generation instance types, specify “previous“.

    Default: Any current or previous generation

func (AutoScalingGroupInstanceRequirementsPtrOutput) LocalStorage added in v0.3.0

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.

Default: ``included``

func (AutoScalingGroupInstanceRequirementsPtrOutput) LocalStorageTypes added in v0.3.0

Indicates the type of local storage that is required.

  • For instance types with hard disk drive (HDD) storage, specify “hdd“.

  • For instance types with solid state drive (SSD) storage, specify “ssd“.

    Default: Any local storage type

func (AutoScalingGroupInstanceRequirementsPtrOutput) MaxSpotPriceAsPercentageOfOptimalOnDemandPrice added in v0.95.0

func (o AutoScalingGroupInstanceRequirementsPtrOutput) MaxSpotPriceAsPercentageOfOptimalOnDemandPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To indicate no price protection threshold, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
 Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100``.

func (AutoScalingGroupInstanceRequirementsPtrOutput) MemoryGiBPerVCpu added in v0.3.0

The minimum and maximum amount of memory per vCPU for an instance type, in GiB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) MemoryMiB added in v0.3.0

The minimum and maximum instance memory size for an instance type, in MiB.

func (AutoScalingGroupInstanceRequirementsPtrOutput) NetworkBandwidthGbps added in v0.42.0

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) NetworkInterfaceCount added in v0.3.0

The minimum and maximum number of network interfaces for an instance type.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) OnDemandMaxPricePercentageOverLowestPrice added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsPtrOutput) OnDemandMaxPricePercentageOverLowestPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To turn off price protection, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per instance price.
Default: ``20``

func (AutoScalingGroupInstanceRequirementsPtrOutput) RequireHibernateSupport added in v0.3.0

Indicates whether instance types must provide On-Demand Instance hibernation support.

Default: ``false``

func (AutoScalingGroupInstanceRequirementsPtrOutput) SpotMaxPricePercentageOverLowestPrice added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsPtrOutput) SpotMaxPricePercentageOverLowestPrice() pulumi.IntPtrOutput

[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage.
To turn off price protection, specify a high value, such as ``999999``.
If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price.
 Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified.
 Default: ``100``

func (AutoScalingGroupInstanceRequirementsPtrOutput) ToAutoScalingGroupInstanceRequirementsPtrOutput added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsPtrOutput) ToAutoScalingGroupInstanceRequirementsPtrOutput() AutoScalingGroupInstanceRequirementsPtrOutput

func (AutoScalingGroupInstanceRequirementsPtrOutput) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupInstanceRequirementsPtrOutput) ToAutoScalingGroupInstanceRequirementsPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstanceRequirementsPtrOutput

func (AutoScalingGroupInstanceRequirementsPtrOutput) TotalLocalStorageGb added in v0.72.0

The minimum and maximum total local storage size for an instance type, in GB.

Default: No minimum or maximum limits

func (AutoScalingGroupInstanceRequirementsPtrOutput) VCpuCount added in v0.3.0

The minimum and maximum number of vCPUs for an instance type.

type AutoScalingGroupInstancesDistribution

type AutoScalingGroupInstancesDistribution struct {
	// The allocation strategy to apply to your On-Demand Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
	//  The following lists the valid values:
	//   + lowest-price Uses price to determine which instance types are the highest priority, launching the lowest priced instance types within an Availability Zone first. This is the default value for Auto Scaling groups that specify InstanceRequirements. + prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling launches your highest priority instance types first. If all your On-Demand capacity cannot be fulfilled using your highest priority instance type, then Amazon EC2 Auto Scaling launches the remaining capacity using the second priority instance type, and so on. This is the default value for Auto Scaling groups that don't specify InstanceRequirements and cannot be used for groups that do.
	OnDemandAllocationStrategy *string `pulumi:"onDemandAllocationStrategy"`
	// The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances. This base portion is launched first as your group scales.
	//  This number has the same unit of measurement as the group's desired capacity. If you change the default unit of measurement (number of instances) by specifying weighted capacity values in your launch template overrides list, or by changing the default desired capacity type setting of the group, you must specify this number using the same unit of measurement.
	//  Default: 0
	//   An update to this setting means a gradual replacement of instances to adjust the current On-Demand Instance levels. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
	OnDemandBaseCapacity *int `pulumi:"onDemandBaseCapacity"`
	// Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond “OnDemandBaseCapacity“. Expressed as a number (for example, 20 specifies 20% On-Demand Instances, 80% Spot Instances). If set to 100, only On-Demand Instances are used.
	//  Default: 100
	//   An update to this setting means a gradual replacement of instances to adjust the current On-Demand and Spot Instance levels for your additional capacity higher than the base capacity. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
	OnDemandPercentageAboveBaseCapacity *int `pulumi:"onDemandPercentageAboveBaseCapacity"`
	// The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
	//  The following lists the valid values:
	//   + capacity-optimized Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. + capacity-optimized-prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements. + lowest-price Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity. + price-capacity-optimized (recommended) The price and capacity optimized allocation strategy looks at both price and capacity to select the Spot Instance pools that are the least likely to be interrupted and have the lowest possible price.
	SpotAllocationStrategy *string `pulumi:"spotAllocationStrategy"`
	// The number of Spot Instance pools across which to allocate your Spot Instances. The Spot pools are determined from the different instance types in the overrides. Valid only when the “SpotAllocationStrategy“ is “lowest-price“. Value must be in the range of 1–20.
	//  Default: 2
	SpotInstancePools *int `pulumi:"spotInstancePools"`
	// The maximum price per unit hour that you are willing to pay for a Spot Instance. If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string ("") for the value.
	//   If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.
	//   Valid Range: Minimum value of 0.001
	SpotMaxPrice *string `pulumi:"spotMaxPrice"`
}

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
 ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

type AutoScalingGroupInstancesDistributionArgs

type AutoScalingGroupInstancesDistributionArgs struct {
	// The allocation strategy to apply to your On-Demand Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
	//  The following lists the valid values:
	//   + lowest-price Uses price to determine which instance types are the highest priority, launching the lowest priced instance types within an Availability Zone first. This is the default value for Auto Scaling groups that specify InstanceRequirements. + prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling launches your highest priority instance types first. If all your On-Demand capacity cannot be fulfilled using your highest priority instance type, then Amazon EC2 Auto Scaling launches the remaining capacity using the second priority instance type, and so on. This is the default value for Auto Scaling groups that don't specify InstanceRequirements and cannot be used for groups that do.
	OnDemandAllocationStrategy pulumi.StringPtrInput `pulumi:"onDemandAllocationStrategy"`
	// The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances. This base portion is launched first as your group scales.
	//  This number has the same unit of measurement as the group's desired capacity. If you change the default unit of measurement (number of instances) by specifying weighted capacity values in your launch template overrides list, or by changing the default desired capacity type setting of the group, you must specify this number using the same unit of measurement.
	//  Default: 0
	//   An update to this setting means a gradual replacement of instances to adjust the current On-Demand Instance levels. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
	OnDemandBaseCapacity pulumi.IntPtrInput `pulumi:"onDemandBaseCapacity"`
	// Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond “OnDemandBaseCapacity“. Expressed as a number (for example, 20 specifies 20% On-Demand Instances, 80% Spot Instances). If set to 100, only On-Demand Instances are used.
	//  Default: 100
	//   An update to this setting means a gradual replacement of instances to adjust the current On-Demand and Spot Instance levels for your additional capacity higher than the base capacity. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
	OnDemandPercentageAboveBaseCapacity pulumi.IntPtrInput `pulumi:"onDemandPercentageAboveBaseCapacity"`
	// The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.
	//  The following lists the valid values:
	//   + capacity-optimized Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. + capacity-optimized-prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements. + lowest-price Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity. + price-capacity-optimized (recommended) The price and capacity optimized allocation strategy looks at both price and capacity to select the Spot Instance pools that are the least likely to be interrupted and have the lowest possible price.
	SpotAllocationStrategy pulumi.StringPtrInput `pulumi:"spotAllocationStrategy"`
	// The number of Spot Instance pools across which to allocate your Spot Instances. The Spot pools are determined from the different instance types in the overrides. Valid only when the “SpotAllocationStrategy“ is “lowest-price“. Value must be in the range of 1–20.
	//  Default: 2
	SpotInstancePools pulumi.IntPtrInput `pulumi:"spotInstancePools"`
	// The maximum price per unit hour that you are willing to pay for a Spot Instance. If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string ("") for the value.
	//   If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.
	//   Valid Range: Minimum value of 0.001
	SpotMaxPrice pulumi.StringPtrInput `pulumi:"spotMaxPrice"`
}

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
 ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

func (AutoScalingGroupInstancesDistributionArgs) ElementType

func (AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionOutput

func (i AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionOutput() AutoScalingGroupInstancesDistributionOutput

func (AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionOutputWithContext

func (i AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionOutputWithContext(ctx context.Context) AutoScalingGroupInstancesDistributionOutput

func (AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionPtrOutput

func (i AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionPtrOutput() AutoScalingGroupInstancesDistributionPtrOutput

func (AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext

func (i AutoScalingGroupInstancesDistributionArgs) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstancesDistributionPtrOutput

type AutoScalingGroupInstancesDistributionInput

type AutoScalingGroupInstancesDistributionInput interface {
	pulumi.Input

	ToAutoScalingGroupInstancesDistributionOutput() AutoScalingGroupInstancesDistributionOutput
	ToAutoScalingGroupInstancesDistributionOutputWithContext(context.Context) AutoScalingGroupInstancesDistributionOutput
}

AutoScalingGroupInstancesDistributionInput is an input type that accepts AutoScalingGroupInstancesDistributionArgs and AutoScalingGroupInstancesDistributionOutput values. You can construct a concrete instance of `AutoScalingGroupInstancesDistributionInput` via:

AutoScalingGroupInstancesDistributionArgs{...}

type AutoScalingGroupInstancesDistributionOutput

type AutoScalingGroupInstancesDistributionOutput struct{ *pulumi.OutputState }

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
 ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

func (AutoScalingGroupInstancesDistributionOutput) ElementType

func (AutoScalingGroupInstancesDistributionOutput) OnDemandAllocationStrategy

The allocation strategy to apply to your On-Demand Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.

The following lists the valid values:
 + lowest-price Uses price to determine which instance types are the highest priority, launching the lowest priced instance types within an Availability Zone first. This is the default value for Auto Scaling groups that specify InstanceRequirements. + prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling launches your highest priority instance types first. If all your On-Demand capacity cannot be fulfilled using your highest priority instance type, then Amazon EC2 Auto Scaling launches the remaining capacity using the second priority instance type, and so on. This is the default value for Auto Scaling groups that don't specify InstanceRequirements and cannot be used for groups that do.

func (AutoScalingGroupInstancesDistributionOutput) OnDemandBaseCapacity

The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances. This base portion is launched first as your group scales.

This number has the same unit of measurement as the group's desired capacity. If you change the default unit of measurement (number of instances) by specifying weighted capacity values in your launch template overrides list, or by changing the default desired capacity type setting of the group, you must specify this number using the same unit of measurement.
Default: 0
 An update to this setting means a gradual replacement of instances to adjust the current On-Demand Instance levels. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.

func (AutoScalingGroupInstancesDistributionOutput) OnDemandPercentageAboveBaseCapacity

func (o AutoScalingGroupInstancesDistributionOutput) OnDemandPercentageAboveBaseCapacity() pulumi.IntPtrOutput

Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond “OnDemandBaseCapacity“. Expressed as a number (for example, 20 specifies 20% On-Demand Instances, 80% Spot Instances). If set to 100, only On-Demand Instances are used.

Default: 100
 An update to this setting means a gradual replacement of instances to adjust the current On-Demand and Spot Instance levels for your additional capacity higher than the base capacity. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.

func (AutoScalingGroupInstancesDistributionOutput) SpotAllocationStrategy

The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.

The following lists the valid values:
 + capacity-optimized Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. + capacity-optimized-prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements. + lowest-price Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity. + price-capacity-optimized (recommended) The price and capacity optimized allocation strategy looks at both price and capacity to select the Spot Instance pools that are the least likely to be interrupted and have the lowest possible price.

func (AutoScalingGroupInstancesDistributionOutput) SpotInstancePools

The number of Spot Instance pools across which to allocate your Spot Instances. The Spot pools are determined from the different instance types in the overrides. Valid only when the “SpotAllocationStrategy“ is “lowest-price“. Value must be in the range of 1–20.

Default: 2

func (AutoScalingGroupInstancesDistributionOutput) SpotMaxPrice

The maximum price per unit hour that you are willing to pay for a Spot Instance. If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string ("") for the value.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.
Valid Range: Minimum value of 0.001

func (AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionOutput

func (o AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionOutput() AutoScalingGroupInstancesDistributionOutput

func (AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionOutputWithContext

func (o AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionOutputWithContext(ctx context.Context) AutoScalingGroupInstancesDistributionOutput

func (AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionPtrOutput

func (o AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionPtrOutput() AutoScalingGroupInstancesDistributionPtrOutput

func (AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext

func (o AutoScalingGroupInstancesDistributionOutput) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstancesDistributionPtrOutput

type AutoScalingGroupInstancesDistributionPtrInput

type AutoScalingGroupInstancesDistributionPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupInstancesDistributionPtrOutput() AutoScalingGroupInstancesDistributionPtrOutput
	ToAutoScalingGroupInstancesDistributionPtrOutputWithContext(context.Context) AutoScalingGroupInstancesDistributionPtrOutput
}

AutoScalingGroupInstancesDistributionPtrInput is an input type that accepts AutoScalingGroupInstancesDistributionArgs, AutoScalingGroupInstancesDistributionPtr and AutoScalingGroupInstancesDistributionPtrOutput values. You can construct a concrete instance of `AutoScalingGroupInstancesDistributionPtrInput` via:

        AutoScalingGroupInstancesDistributionArgs{...}

or:

        nil

type AutoScalingGroupInstancesDistributionPtrOutput

type AutoScalingGroupInstancesDistributionPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupInstancesDistributionPtrOutput) Elem

func (AutoScalingGroupInstancesDistributionPtrOutput) ElementType

func (AutoScalingGroupInstancesDistributionPtrOutput) OnDemandAllocationStrategy

The allocation strategy to apply to your On-Demand Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.

The following lists the valid values:
 + lowest-price Uses price to determine which instance types are the highest priority, launching the lowest priced instance types within an Availability Zone first. This is the default value for Auto Scaling groups that specify InstanceRequirements. + prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling launches your highest priority instance types first. If all your On-Demand capacity cannot be fulfilled using your highest priority instance type, then Amazon EC2 Auto Scaling launches the remaining capacity using the second priority instance type, and so on. This is the default value for Auto Scaling groups that don't specify InstanceRequirements and cannot be used for groups that do.

func (AutoScalingGroupInstancesDistributionPtrOutput) OnDemandBaseCapacity

The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances. This base portion is launched first as your group scales.

This number has the same unit of measurement as the group's desired capacity. If you change the default unit of measurement (number of instances) by specifying weighted capacity values in your launch template overrides list, or by changing the default desired capacity type setting of the group, you must specify this number using the same unit of measurement.
Default: 0
 An update to this setting means a gradual replacement of instances to adjust the current On-Demand Instance levels. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.

func (AutoScalingGroupInstancesDistributionPtrOutput) OnDemandPercentageAboveBaseCapacity

func (o AutoScalingGroupInstancesDistributionPtrOutput) OnDemandPercentageAboveBaseCapacity() pulumi.IntPtrOutput

Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond “OnDemandBaseCapacity“. Expressed as a number (for example, 20 specifies 20% On-Demand Instances, 80% Spot Instances). If set to 100, only On-Demand Instances are used.

Default: 100
 An update to this setting means a gradual replacement of instances to adjust the current On-Demand and Spot Instance levels for your additional capacity higher than the base capacity. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.

func (AutoScalingGroupInstancesDistributionPtrOutput) SpotAllocationStrategy

The allocation strategy to apply to your Spot Instances when they are launched. Possible instance types are determined by the launch template overrides that you specify.

The following lists the valid values:
 + capacity-optimized Requests Spot Instances using pools that are optimally chosen based on the available Spot capacity. This strategy has the lowest risk of interruption. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. + capacity-optimized-prioritized You set the order of instance types for the launch template overrides from highest to lowest priority (from first to last in the list). Amazon EC2 Auto Scaling honors the instance type priorities on a best effort basis but optimizes for capacity first. Note that if the On-Demand allocation strategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity. This is not a valid value for Auto Scaling groups that specify InstanceRequirements. + lowest-price Requests Spot Instances using the lowest priced pools within an Availability Zone, across the number of Spot pools that you specify for the SpotInstancePools property. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. This is the default value, but it might lead to high interruption rates because this strategy only considers instance price and not available capacity. + price-capacity-optimized (recommended) The price and capacity optimized allocation strategy looks at both price and capacity to select the Spot Instance pools that are the least likely to be interrupted and have the lowest possible price.

func (AutoScalingGroupInstancesDistributionPtrOutput) SpotInstancePools

The number of Spot Instance pools across which to allocate your Spot Instances. The Spot pools are determined from the different instance types in the overrides. Valid only when the “SpotAllocationStrategy“ is “lowest-price“. Value must be in the range of 1–20.

Default: 2

func (AutoScalingGroupInstancesDistributionPtrOutput) SpotMaxPrice

The maximum price per unit hour that you are willing to pay for a Spot Instance. If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string ("") for the value.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.
Valid Range: Minimum value of 0.001

func (AutoScalingGroupInstancesDistributionPtrOutput) ToAutoScalingGroupInstancesDistributionPtrOutput

func (o AutoScalingGroupInstancesDistributionPtrOutput) ToAutoScalingGroupInstancesDistributionPtrOutput() AutoScalingGroupInstancesDistributionPtrOutput

func (AutoScalingGroupInstancesDistributionPtrOutput) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext

func (o AutoScalingGroupInstancesDistributionPtrOutput) ToAutoScalingGroupInstancesDistributionPtrOutputWithContext(ctx context.Context) AutoScalingGroupInstancesDistributionPtrOutput

type AutoScalingGroupLaunchTemplate

type AutoScalingGroupLaunchTemplate struct {
	// The launch template.
	LaunchTemplateSpecification AutoScalingGroupLaunchTemplateSpecification `pulumi:"launchTemplateSpecification"`
	// Any properties that you specify override the same properties in the launch template.
	Overrides []AutoScalingGroupLaunchTemplateOverrides `pulumi:"overrides"`
}

Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.

``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

type AutoScalingGroupLaunchTemplateArgs

type AutoScalingGroupLaunchTemplateArgs struct {
	// The launch template.
	LaunchTemplateSpecification AutoScalingGroupLaunchTemplateSpecificationInput `pulumi:"launchTemplateSpecification"`
	// Any properties that you specify override the same properties in the launch template.
	Overrides AutoScalingGroupLaunchTemplateOverridesArrayInput `pulumi:"overrides"`
}

Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.

``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

func (AutoScalingGroupLaunchTemplateArgs) ElementType

func (AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplateOutput

func (i AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplateOutput() AutoScalingGroupLaunchTemplateOutput

func (AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplateOutputWithContext

func (i AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplateOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOutput

func (AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplatePtrOutput

func (i AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplatePtrOutput() AutoScalingGroupLaunchTemplatePtrOutput

func (AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext

func (i AutoScalingGroupLaunchTemplateArgs) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplatePtrOutput

type AutoScalingGroupLaunchTemplateInput

type AutoScalingGroupLaunchTemplateInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplateOutput() AutoScalingGroupLaunchTemplateOutput
	ToAutoScalingGroupLaunchTemplateOutputWithContext(context.Context) AutoScalingGroupLaunchTemplateOutput
}

AutoScalingGroupLaunchTemplateInput is an input type that accepts AutoScalingGroupLaunchTemplateArgs and AutoScalingGroupLaunchTemplateOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplateInput` via:

AutoScalingGroupLaunchTemplateArgs{...}

type AutoScalingGroupLaunchTemplateOutput

type AutoScalingGroupLaunchTemplateOutput struct{ *pulumi.OutputState }

Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.

``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.

func (AutoScalingGroupLaunchTemplateOutput) ElementType

func (AutoScalingGroupLaunchTemplateOutput) LaunchTemplateSpecification

The launch template.

func (AutoScalingGroupLaunchTemplateOutput) Overrides

Any properties that you specify override the same properties in the launch template.

func (AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplateOutput

func (o AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplateOutput() AutoScalingGroupLaunchTemplateOutput

func (AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplateOutputWithContext

func (o AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplateOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOutput

func (AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplatePtrOutput

func (o AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplatePtrOutput() AutoScalingGroupLaunchTemplatePtrOutput

func (AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext

func (o AutoScalingGroupLaunchTemplateOutput) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplatePtrOutput

type AutoScalingGroupLaunchTemplateOverrides

type AutoScalingGroupLaunchTemplateOverrides struct {
	// The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.
	//  You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
	//   If you specify “InstanceRequirements“, you can't specify “InstanceType“.
	InstanceRequirements *AutoScalingGroupInstanceRequirements `pulumi:"instanceRequirements"`
	// The instance type, such as “m3.xlarge“. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon Elastic Compute Cloud User Guide*.
	//  You can specify up to 40 instance types per Auto Scaling group.
	InstanceType *string `pulumi:"instanceType"`
	// Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in the “LaunchTemplate“ definition. For more information, see [Specifying a different launch template for an instance type](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the “LaunchTemplate“ definition count towards this limit.
	LaunchTemplateSpecification *AutoScalingGroupLaunchTemplateSpecification `pulumi:"launchTemplateSpecification"`
	// If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a “WeightedCapacity“ of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see [Configure instance weighting for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html) in the *Amazon EC2 Auto Scaling User Guide*. Value must be in the range of 1-999.
	//  If you specify a value for “WeightedCapacity“ for one instance type, you must specify a value for “WeightedCapacity“ for all of them.
	//   Every Auto Scaling group has three size parameters (“DesiredCapacity“, “MaxSize“, and “MinSize“). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.
	WeightedCapacity *string `pulumi:"weightedCapacity"`
}

Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:

  • Override the instance type that is specified in the launch template.

  • Use multiple instance types.

    Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group. After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used. “LaunchTemplateOverrides“ is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

type AutoScalingGroupLaunchTemplateOverridesArgs

type AutoScalingGroupLaunchTemplateOverridesArgs struct {
	// The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.
	//  You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
	//   If you specify “InstanceRequirements“, you can't specify “InstanceType“.
	InstanceRequirements AutoScalingGroupInstanceRequirementsPtrInput `pulumi:"instanceRequirements"`
	// The instance type, such as “m3.xlarge“. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon Elastic Compute Cloud User Guide*.
	//  You can specify up to 40 instance types per Auto Scaling group.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in the “LaunchTemplate“ definition. For more information, see [Specifying a different launch template for an instance type](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the “LaunchTemplate“ definition count towards this limit.
	LaunchTemplateSpecification AutoScalingGroupLaunchTemplateSpecificationPtrInput `pulumi:"launchTemplateSpecification"`
	// If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a “WeightedCapacity“ of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see [Configure instance weighting for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html) in the *Amazon EC2 Auto Scaling User Guide*. Value must be in the range of 1-999.
	//  If you specify a value for “WeightedCapacity“ for one instance type, you must specify a value for “WeightedCapacity“ for all of them.
	//   Every Auto Scaling group has three size parameters (“DesiredCapacity“, “MaxSize“, and “MinSize“). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.
	WeightedCapacity pulumi.StringPtrInput `pulumi:"weightedCapacity"`
}

Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:

  • Override the instance type that is specified in the launch template.

  • Use multiple instance types.

    Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group. After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used. “LaunchTemplateOverrides“ is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

func (AutoScalingGroupLaunchTemplateOverridesArgs) ElementType

func (AutoScalingGroupLaunchTemplateOverridesArgs) ToAutoScalingGroupLaunchTemplateOverridesOutput

func (i AutoScalingGroupLaunchTemplateOverridesArgs) ToAutoScalingGroupLaunchTemplateOverridesOutput() AutoScalingGroupLaunchTemplateOverridesOutput

func (AutoScalingGroupLaunchTemplateOverridesArgs) ToAutoScalingGroupLaunchTemplateOverridesOutputWithContext

func (i AutoScalingGroupLaunchTemplateOverridesArgs) ToAutoScalingGroupLaunchTemplateOverridesOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOverridesOutput

type AutoScalingGroupLaunchTemplateOverridesArray

type AutoScalingGroupLaunchTemplateOverridesArray []AutoScalingGroupLaunchTemplateOverridesInput

func (AutoScalingGroupLaunchTemplateOverridesArray) ElementType

func (AutoScalingGroupLaunchTemplateOverridesArray) ToAutoScalingGroupLaunchTemplateOverridesArrayOutput

func (i AutoScalingGroupLaunchTemplateOverridesArray) ToAutoScalingGroupLaunchTemplateOverridesArrayOutput() AutoScalingGroupLaunchTemplateOverridesArrayOutput

func (AutoScalingGroupLaunchTemplateOverridesArray) ToAutoScalingGroupLaunchTemplateOverridesArrayOutputWithContext

func (i AutoScalingGroupLaunchTemplateOverridesArray) ToAutoScalingGroupLaunchTemplateOverridesArrayOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOverridesArrayOutput

type AutoScalingGroupLaunchTemplateOverridesArrayInput

type AutoScalingGroupLaunchTemplateOverridesArrayInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplateOverridesArrayOutput() AutoScalingGroupLaunchTemplateOverridesArrayOutput
	ToAutoScalingGroupLaunchTemplateOverridesArrayOutputWithContext(context.Context) AutoScalingGroupLaunchTemplateOverridesArrayOutput
}

AutoScalingGroupLaunchTemplateOverridesArrayInput is an input type that accepts AutoScalingGroupLaunchTemplateOverridesArray and AutoScalingGroupLaunchTemplateOverridesArrayOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplateOverridesArrayInput` via:

AutoScalingGroupLaunchTemplateOverridesArray{ AutoScalingGroupLaunchTemplateOverridesArgs{...} }

type AutoScalingGroupLaunchTemplateOverridesArrayOutput

type AutoScalingGroupLaunchTemplateOverridesArrayOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupLaunchTemplateOverridesArrayOutput) ElementType

func (AutoScalingGroupLaunchTemplateOverridesArrayOutput) Index

func (AutoScalingGroupLaunchTemplateOverridesArrayOutput) ToAutoScalingGroupLaunchTemplateOverridesArrayOutput

func (o AutoScalingGroupLaunchTemplateOverridesArrayOutput) ToAutoScalingGroupLaunchTemplateOverridesArrayOutput() AutoScalingGroupLaunchTemplateOverridesArrayOutput

func (AutoScalingGroupLaunchTemplateOverridesArrayOutput) ToAutoScalingGroupLaunchTemplateOverridesArrayOutputWithContext

func (o AutoScalingGroupLaunchTemplateOverridesArrayOutput) ToAutoScalingGroupLaunchTemplateOverridesArrayOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOverridesArrayOutput

type AutoScalingGroupLaunchTemplateOverridesInput

type AutoScalingGroupLaunchTemplateOverridesInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplateOverridesOutput() AutoScalingGroupLaunchTemplateOverridesOutput
	ToAutoScalingGroupLaunchTemplateOverridesOutputWithContext(context.Context) AutoScalingGroupLaunchTemplateOverridesOutput
}

AutoScalingGroupLaunchTemplateOverridesInput is an input type that accepts AutoScalingGroupLaunchTemplateOverridesArgs and AutoScalingGroupLaunchTemplateOverridesOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplateOverridesInput` via:

AutoScalingGroupLaunchTemplateOverridesArgs{...}

type AutoScalingGroupLaunchTemplateOverridesOutput

type AutoScalingGroupLaunchTemplateOverridesOutput struct{ *pulumi.OutputState }

Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:

  • Override the instance type that is specified in the launch template.

  • Use multiple instance types.

    Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group. After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used. “LaunchTemplateOverrides“ is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.

func (AutoScalingGroupLaunchTemplateOverridesOutput) ElementType

func (AutoScalingGroupLaunchTemplateOverridesOutput) InstanceRequirements added in v0.3.0

The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.

You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
 If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.

func (AutoScalingGroupLaunchTemplateOverridesOutput) InstanceType

The instance type, such as “m3.xlarge“. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon Elastic Compute Cloud User Guide*.

You can specify up to 40 instance types per Auto Scaling group.

func (AutoScalingGroupLaunchTemplateOverridesOutput) LaunchTemplateSpecification

Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in the “LaunchTemplate“ definition. For more information, see [Specifying a different launch template for an instance type](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html) in the *Amazon EC2 Auto Scaling User Guide*.

You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the ``LaunchTemplate`` definition count towards this limit.

func (AutoScalingGroupLaunchTemplateOverridesOutput) ToAutoScalingGroupLaunchTemplateOverridesOutput

func (o AutoScalingGroupLaunchTemplateOverridesOutput) ToAutoScalingGroupLaunchTemplateOverridesOutput() AutoScalingGroupLaunchTemplateOverridesOutput

func (AutoScalingGroupLaunchTemplateOverridesOutput) ToAutoScalingGroupLaunchTemplateOverridesOutputWithContext

func (o AutoScalingGroupLaunchTemplateOverridesOutput) ToAutoScalingGroupLaunchTemplateOverridesOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateOverridesOutput

func (AutoScalingGroupLaunchTemplateOverridesOutput) WeightedCapacity

If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with a “WeightedCapacity“ of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see [Configure instance weighting for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html) in the *Amazon EC2 Auto Scaling User Guide*. Value must be in the range of 1-999.

If you specify a value for ``WeightedCapacity`` for one instance type, you must specify a value for ``WeightedCapacity`` for all of them.
 Every Auto Scaling group has three size parameters (``DesiredCapacity``, ``MaxSize``, and ``MinSize``). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.

type AutoScalingGroupLaunchTemplatePtrInput

type AutoScalingGroupLaunchTemplatePtrInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplatePtrOutput() AutoScalingGroupLaunchTemplatePtrOutput
	ToAutoScalingGroupLaunchTemplatePtrOutputWithContext(context.Context) AutoScalingGroupLaunchTemplatePtrOutput
}

AutoScalingGroupLaunchTemplatePtrInput is an input type that accepts AutoScalingGroupLaunchTemplateArgs, AutoScalingGroupLaunchTemplatePtr and AutoScalingGroupLaunchTemplatePtrOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplatePtrInput` via:

        AutoScalingGroupLaunchTemplateArgs{...}

or:

        nil

type AutoScalingGroupLaunchTemplatePtrOutput

type AutoScalingGroupLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupLaunchTemplatePtrOutput) Elem

func (AutoScalingGroupLaunchTemplatePtrOutput) ElementType

func (AutoScalingGroupLaunchTemplatePtrOutput) LaunchTemplateSpecification

The launch template.

func (AutoScalingGroupLaunchTemplatePtrOutput) Overrides

Any properties that you specify override the same properties in the launch template.

func (AutoScalingGroupLaunchTemplatePtrOutput) ToAutoScalingGroupLaunchTemplatePtrOutput

func (o AutoScalingGroupLaunchTemplatePtrOutput) ToAutoScalingGroupLaunchTemplatePtrOutput() AutoScalingGroupLaunchTemplatePtrOutput

func (AutoScalingGroupLaunchTemplatePtrOutput) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext

func (o AutoScalingGroupLaunchTemplatePtrOutput) ToAutoScalingGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplatePtrOutput

type AutoScalingGroupLaunchTemplateSpecification

type AutoScalingGroupLaunchTemplateSpecification struct {
	// The ID of the launch template.
	//  You must specify the “LaunchTemplateID“ or the “LaunchTemplateName“, but not both.
	LaunchTemplateId *string `pulumi:"launchTemplateId"`
	// The name of the launch template.
	//  You must specify the “LaunchTemplateName“ or the “LaunchTemplateID“, but not both.
	LaunchTemplateName *string `pulumi:"launchTemplateName"`
	// The version number of the launch template.
	//  Specifying “$Latest“ or “$Default“ for the template version number is not supported. However, you can specify “LatestVersionNumber“ or “DefaultVersionNumber“ using the “Fn::GetAtt“ intrinsic function. For more information, see [Fn::GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html).
	//   For an example of using the “Fn::GetAtt“ function, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the “AWS::AutoScaling::AutoScalingGroup“ resource.
	Version string `pulumi:"version"`
}

Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.

You must specify the following:
 +  The ID or the name of the launch template, but not both.
 +  The version of the launch template.

``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.
For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
For examples of launch templates, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html) and the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples) section in the ``AWS::EC2::LaunchTemplate`` resource.

type AutoScalingGroupLaunchTemplateSpecificationArgs

type AutoScalingGroupLaunchTemplateSpecificationArgs struct {
	// The ID of the launch template.
	//  You must specify the “LaunchTemplateID“ or the “LaunchTemplateName“, but not both.
	LaunchTemplateId pulumi.StringPtrInput `pulumi:"launchTemplateId"`
	// The name of the launch template.
	//  You must specify the “LaunchTemplateName“ or the “LaunchTemplateID“, but not both.
	LaunchTemplateName pulumi.StringPtrInput `pulumi:"launchTemplateName"`
	// The version number of the launch template.
	//  Specifying “$Latest“ or “$Default“ for the template version number is not supported. However, you can specify “LatestVersionNumber“ or “DefaultVersionNumber“ using the “Fn::GetAtt“ intrinsic function. For more information, see [Fn::GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html).
	//   For an example of using the “Fn::GetAtt“ function, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the “AWS::AutoScaling::AutoScalingGroup“ resource.
	Version pulumi.StringInput `pulumi:"version"`
}

Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.

You must specify the following:
 +  The ID or the name of the launch template, but not both.
 +  The version of the launch template.

``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.
For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
For examples of launch templates, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html) and the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples) section in the ``AWS::EC2::LaunchTemplate`` resource.

func (AutoScalingGroupLaunchTemplateSpecificationArgs) ElementType

func (AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationOutput

func (i AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationOutput() AutoScalingGroupLaunchTemplateSpecificationOutput

func (AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationOutputWithContext

func (i AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateSpecificationOutput

func (AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (i AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput() AutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext

func (i AutoScalingGroupLaunchTemplateSpecificationArgs) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateSpecificationPtrOutput

type AutoScalingGroupLaunchTemplateSpecificationInput

type AutoScalingGroupLaunchTemplateSpecificationInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplateSpecificationOutput() AutoScalingGroupLaunchTemplateSpecificationOutput
	ToAutoScalingGroupLaunchTemplateSpecificationOutputWithContext(context.Context) AutoScalingGroupLaunchTemplateSpecificationOutput
}

AutoScalingGroupLaunchTemplateSpecificationInput is an input type that accepts AutoScalingGroupLaunchTemplateSpecificationArgs and AutoScalingGroupLaunchTemplateSpecificationOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplateSpecificationInput` via:

AutoScalingGroupLaunchTemplateSpecificationArgs{...}

type AutoScalingGroupLaunchTemplateSpecificationOutput

type AutoScalingGroupLaunchTemplateSpecificationOutput struct{ *pulumi.OutputState }

Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.

You must specify the following:
 +  The ID or the name of the launch template, but not both.
 +  The version of the launch template.

``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.
For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
For examples of launch templates, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html) and the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples) section in the ``AWS::EC2::LaunchTemplate`` resource.

func (AutoScalingGroupLaunchTemplateSpecificationOutput) ElementType

func (AutoScalingGroupLaunchTemplateSpecificationOutput) LaunchTemplateId

The ID of the launch template.

You must specify the ``LaunchTemplateID`` or the ``LaunchTemplateName``, but not both.

func (AutoScalingGroupLaunchTemplateSpecificationOutput) LaunchTemplateName

The name of the launch template.

You must specify the ``LaunchTemplateName`` or the ``LaunchTemplateID``, but not both.

func (AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationOutput

func (o AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationOutput() AutoScalingGroupLaunchTemplateSpecificationOutput

func (AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationOutputWithContext

func (o AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateSpecificationOutput

func (AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (o AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput() AutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext

func (o AutoScalingGroupLaunchTemplateSpecificationOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (AutoScalingGroupLaunchTemplateSpecificationOutput) Version

The version number of the launch template.

Specifying ``$Latest`` or ``$Default`` for the template version number is not supported. However, you can specify ``LatestVersionNumber`` or ``DefaultVersionNumber`` using the ``Fn::GetAtt`` intrinsic function. For more information, see [Fn::GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html).
 For an example of using the ``Fn::GetAtt`` function, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.

type AutoScalingGroupLaunchTemplateSpecificationPtrInput

type AutoScalingGroupLaunchTemplateSpecificationPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput() AutoScalingGroupLaunchTemplateSpecificationPtrOutput
	ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext(context.Context) AutoScalingGroupLaunchTemplateSpecificationPtrOutput
}

AutoScalingGroupLaunchTemplateSpecificationPtrInput is an input type that accepts AutoScalingGroupLaunchTemplateSpecificationArgs, AutoScalingGroupLaunchTemplateSpecificationPtr and AutoScalingGroupLaunchTemplateSpecificationPtrOutput values. You can construct a concrete instance of `AutoScalingGroupLaunchTemplateSpecificationPtrInput` via:

        AutoScalingGroupLaunchTemplateSpecificationArgs{...}

or:

        nil

type AutoScalingGroupLaunchTemplateSpecificationPtrOutput

type AutoScalingGroupLaunchTemplateSpecificationPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) Elem

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) ElementType

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) LaunchTemplateId

The ID of the launch template.

You must specify the ``LaunchTemplateID`` or the ``LaunchTemplateName``, but not both.

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) LaunchTemplateName

The name of the launch template.

You must specify the ``LaunchTemplateName`` or the ``LaunchTemplateID``, but not both.

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext

func (o AutoScalingGroupLaunchTemplateSpecificationPtrOutput) ToAutoScalingGroupLaunchTemplateSpecificationPtrOutputWithContext(ctx context.Context) AutoScalingGroupLaunchTemplateSpecificationPtrOutput

func (AutoScalingGroupLaunchTemplateSpecificationPtrOutput) Version

The version number of the launch template.

Specifying ``$Latest`` or ``$Default`` for the template version number is not supported. However, you can specify ``LatestVersionNumber`` or ``DefaultVersionNumber`` using the ``Fn::GetAtt`` intrinsic function. For more information, see [Fn::GetAtt](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html).
 For an example of using the ``Fn::GetAtt`` function, see the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.

type AutoScalingGroupLifecycleHookSpecification

type AutoScalingGroupLifecycleHookSpecification struct {
	// The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The default value is “ABANDON“.
	//  Valid values: “CONTINUE“ | “ABANDON“
	DefaultResult *string `pulumi:"defaultResult"`
	// The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from “30“ to “7200“ seconds. The default value is “3600“ seconds (1 hour).
	HeartbeatTimeout *int `pulumi:"heartbeatTimeout"`
	// The name of the lifecycle hook.
	LifecycleHookName string `pulumi:"lifecycleHookName"`
	// The lifecycle transition. For Auto Scaling groups, there are two major lifecycle transitions.
	//   +  To create a lifecycle hook for scale-out events, specify “autoscaling:EC2_INSTANCE_LAUNCHING“.
	//   +  To create a lifecycle hook for scale-in events, specify “autoscaling:EC2_INSTANCE_TERMINATING“.
	LifecycleTransition string `pulumi:"lifecycleTransition"`
	// Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
	NotificationMetadata *string `pulumi:"notificationMetadata"`
	// The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook. You can specify an Amazon SNS topic or an Amazon SQS queue.
	NotificationTargetArn *string `pulumi:"notificationTargetArn"`
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target. For information about creating this role, see [Configure a notification target for a lifecycle hook](https://docs.aws.amazon.com/autoscaling/ec2/userguide/prepare-for-lifecycle-notifications.html#lifecycle-hook-notification-target) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Valid only if the notification target is an Amazon SNS topic or an Amazon SQS queue.
	RoleArn *string `pulumi:"roleArn"`
}

“LifecycleHookSpecification“ specifies a lifecycle hook for the “LifecycleHookSpecificationList“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. A lifecycle hook specifies actions to perform when Amazon EC2 Auto Scaling launches or terminates instances.

For more information, see [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#aws-resource-as-lifecyclehook--examples) section of the ``AWS::AutoScaling::LifecycleHook`` resource.

type AutoScalingGroupLifecycleHookSpecificationArgs

type AutoScalingGroupLifecycleHookSpecificationArgs struct {
	// The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The default value is “ABANDON“.
	//  Valid values: “CONTINUE“ | “ABANDON“
	DefaultResult pulumi.StringPtrInput `pulumi:"defaultResult"`
	// The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from “30“ to “7200“ seconds. The default value is “3600“ seconds (1 hour).
	HeartbeatTimeout pulumi.IntPtrInput `pulumi:"heartbeatTimeout"`
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringInput `pulumi:"lifecycleHookName"`
	// The lifecycle transition. For Auto Scaling groups, there are two major lifecycle transitions.
	//   +  To create a lifecycle hook for scale-out events, specify “autoscaling:EC2_INSTANCE_LAUNCHING“.
	//   +  To create a lifecycle hook for scale-in events, specify “autoscaling:EC2_INSTANCE_TERMINATING“.
	LifecycleTransition pulumi.StringInput `pulumi:"lifecycleTransition"`
	// Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput `pulumi:"notificationMetadata"`
	// The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook. You can specify an Amazon SNS topic or an Amazon SQS queue.
	NotificationTargetArn pulumi.StringPtrInput `pulumi:"notificationTargetArn"`
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target. For information about creating this role, see [Configure a notification target for a lifecycle hook](https://docs.aws.amazon.com/autoscaling/ec2/userguide/prepare-for-lifecycle-notifications.html#lifecycle-hook-notification-target) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Valid only if the notification target is an Amazon SNS topic or an Amazon SQS queue.
	RoleArn pulumi.StringPtrInput `pulumi:"roleArn"`
}

“LifecycleHookSpecification“ specifies a lifecycle hook for the “LifecycleHookSpecificationList“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. A lifecycle hook specifies actions to perform when Amazon EC2 Auto Scaling launches or terminates instances.

For more information, see [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#aws-resource-as-lifecyclehook--examples) section of the ``AWS::AutoScaling::LifecycleHook`` resource.

func (AutoScalingGroupLifecycleHookSpecificationArgs) ElementType

func (AutoScalingGroupLifecycleHookSpecificationArgs) ToAutoScalingGroupLifecycleHookSpecificationOutput

func (i AutoScalingGroupLifecycleHookSpecificationArgs) ToAutoScalingGroupLifecycleHookSpecificationOutput() AutoScalingGroupLifecycleHookSpecificationOutput

func (AutoScalingGroupLifecycleHookSpecificationArgs) ToAutoScalingGroupLifecycleHookSpecificationOutputWithContext

func (i AutoScalingGroupLifecycleHookSpecificationArgs) ToAutoScalingGroupLifecycleHookSpecificationOutputWithContext(ctx context.Context) AutoScalingGroupLifecycleHookSpecificationOutput

type AutoScalingGroupLifecycleHookSpecificationArray

type AutoScalingGroupLifecycleHookSpecificationArray []AutoScalingGroupLifecycleHookSpecificationInput

func (AutoScalingGroupLifecycleHookSpecificationArray) ElementType

func (AutoScalingGroupLifecycleHookSpecificationArray) ToAutoScalingGroupLifecycleHookSpecificationArrayOutput

func (i AutoScalingGroupLifecycleHookSpecificationArray) ToAutoScalingGroupLifecycleHookSpecificationArrayOutput() AutoScalingGroupLifecycleHookSpecificationArrayOutput

func (AutoScalingGroupLifecycleHookSpecificationArray) ToAutoScalingGroupLifecycleHookSpecificationArrayOutputWithContext

func (i AutoScalingGroupLifecycleHookSpecificationArray) ToAutoScalingGroupLifecycleHookSpecificationArrayOutputWithContext(ctx context.Context) AutoScalingGroupLifecycleHookSpecificationArrayOutput

type AutoScalingGroupLifecycleHookSpecificationArrayInput

type AutoScalingGroupLifecycleHookSpecificationArrayInput interface {
	pulumi.Input

	ToAutoScalingGroupLifecycleHookSpecificationArrayOutput() AutoScalingGroupLifecycleHookSpecificationArrayOutput
	ToAutoScalingGroupLifecycleHookSpecificationArrayOutputWithContext(context.Context) AutoScalingGroupLifecycleHookSpecificationArrayOutput
}

AutoScalingGroupLifecycleHookSpecificationArrayInput is an input type that accepts AutoScalingGroupLifecycleHookSpecificationArray and AutoScalingGroupLifecycleHookSpecificationArrayOutput values. You can construct a concrete instance of `AutoScalingGroupLifecycleHookSpecificationArrayInput` via:

AutoScalingGroupLifecycleHookSpecificationArray{ AutoScalingGroupLifecycleHookSpecificationArgs{...} }

type AutoScalingGroupLifecycleHookSpecificationArrayOutput

type AutoScalingGroupLifecycleHookSpecificationArrayOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupLifecycleHookSpecificationArrayOutput) ElementType

func (AutoScalingGroupLifecycleHookSpecificationArrayOutput) Index

func (AutoScalingGroupLifecycleHookSpecificationArrayOutput) ToAutoScalingGroupLifecycleHookSpecificationArrayOutput

func (AutoScalingGroupLifecycleHookSpecificationArrayOutput) ToAutoScalingGroupLifecycleHookSpecificationArrayOutputWithContext

func (o AutoScalingGroupLifecycleHookSpecificationArrayOutput) ToAutoScalingGroupLifecycleHookSpecificationArrayOutputWithContext(ctx context.Context) AutoScalingGroupLifecycleHookSpecificationArrayOutput

type AutoScalingGroupLifecycleHookSpecificationInput

type AutoScalingGroupLifecycleHookSpecificationInput interface {
	pulumi.Input

	ToAutoScalingGroupLifecycleHookSpecificationOutput() AutoScalingGroupLifecycleHookSpecificationOutput
	ToAutoScalingGroupLifecycleHookSpecificationOutputWithContext(context.Context) AutoScalingGroupLifecycleHookSpecificationOutput
}

AutoScalingGroupLifecycleHookSpecificationInput is an input type that accepts AutoScalingGroupLifecycleHookSpecificationArgs and AutoScalingGroupLifecycleHookSpecificationOutput values. You can construct a concrete instance of `AutoScalingGroupLifecycleHookSpecificationInput` via:

AutoScalingGroupLifecycleHookSpecificationArgs{...}

type AutoScalingGroupLifecycleHookSpecificationOutput

type AutoScalingGroupLifecycleHookSpecificationOutput struct{ *pulumi.OutputState }

“LifecycleHookSpecification“ specifies a lifecycle hook for the “LifecycleHookSpecificationList“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. A lifecycle hook specifies actions to perform when Amazon EC2 Auto Scaling launches or terminates instances.

For more information, see [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#aws-resource-as-lifecyclehook--examples) section of the ``AWS::AutoScaling::LifecycleHook`` resource.

func (AutoScalingGroupLifecycleHookSpecificationOutput) DefaultResult

The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The default value is “ABANDON“.

Valid values: ``CONTINUE`` | ``ABANDON``

func (AutoScalingGroupLifecycleHookSpecificationOutput) ElementType

func (AutoScalingGroupLifecycleHookSpecificationOutput) HeartbeatTimeout

The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from “30“ to “7200“ seconds. The default value is “3600“ seconds (1 hour).

func (AutoScalingGroupLifecycleHookSpecificationOutput) LifecycleHookName

The name of the lifecycle hook.

func (AutoScalingGroupLifecycleHookSpecificationOutput) LifecycleTransition

The lifecycle transition. For Auto Scaling groups, there are two major lifecycle transitions.

  • To create a lifecycle hook for scale-out events, specify “autoscaling:EC2_INSTANCE_LAUNCHING“.
  • To create a lifecycle hook for scale-in events, specify “autoscaling:EC2_INSTANCE_TERMINATING“.

func (AutoScalingGroupLifecycleHookSpecificationOutput) NotificationMetadata

Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.

func (AutoScalingGroupLifecycleHookSpecificationOutput) NotificationTargetArn added in v0.72.0

The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook. You can specify an Amazon SNS topic or an Amazon SQS queue.

func (AutoScalingGroupLifecycleHookSpecificationOutput) RoleArn added in v0.72.0

The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target. For information about creating this role, see [Configure a notification target for a lifecycle hook](https://docs.aws.amazon.com/autoscaling/ec2/userguide/prepare-for-lifecycle-notifications.html#lifecycle-hook-notification-target) in the *Amazon EC2 Auto Scaling User Guide*.

Valid only if the notification target is an Amazon SNS topic or an Amazon SQS queue.

func (AutoScalingGroupLifecycleHookSpecificationOutput) ToAutoScalingGroupLifecycleHookSpecificationOutput

func (o AutoScalingGroupLifecycleHookSpecificationOutput) ToAutoScalingGroupLifecycleHookSpecificationOutput() AutoScalingGroupLifecycleHookSpecificationOutput

func (AutoScalingGroupLifecycleHookSpecificationOutput) ToAutoScalingGroupLifecycleHookSpecificationOutputWithContext

func (o AutoScalingGroupLifecycleHookSpecificationOutput) ToAutoScalingGroupLifecycleHookSpecificationOutputWithContext(ctx context.Context) AutoScalingGroupLifecycleHookSpecificationOutput

type AutoScalingGroupMemoryGiBPerVCpuRequest added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequest struct {
	// The memory maximum in GiB.
	Max *float64 `pulumi:"max"`
	// The memory minimum in GiB.
	Min *float64 `pulumi:"min"`
}

“MemoryGiBPerVCpuRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum amount of memory per vCPU for an instance type, in GiB.

type AutoScalingGroupMemoryGiBPerVCpuRequestArgs added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequestArgs struct {
	// The memory maximum in GiB.
	Max pulumi.Float64PtrInput `pulumi:"max"`
	// The memory minimum in GiB.
	Min pulumi.Float64PtrInput `pulumi:"min"`
}

“MemoryGiBPerVCpuRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum amount of memory per vCPU for an instance type, in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutput added in v0.3.0

func (i AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutput() AutoScalingGroupMemoryGiBPerVCpuRequestOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutputWithContext(ctx context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput() AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupMemoryGiBPerVCpuRequestArgs) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

type AutoScalingGroupMemoryGiBPerVCpuRequestInput added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupMemoryGiBPerVCpuRequestOutput() AutoScalingGroupMemoryGiBPerVCpuRequestOutput
	ToAutoScalingGroupMemoryGiBPerVCpuRequestOutputWithContext(context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestOutput
}

AutoScalingGroupMemoryGiBPerVCpuRequestInput is an input type that accepts AutoScalingGroupMemoryGiBPerVCpuRequestArgs and AutoScalingGroupMemoryGiBPerVCpuRequestOutput values. You can construct a concrete instance of `AutoScalingGroupMemoryGiBPerVCpuRequestInput` via:

AutoScalingGroupMemoryGiBPerVCpuRequestArgs{...}

type AutoScalingGroupMemoryGiBPerVCpuRequestOutput added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequestOutput struct{ *pulumi.OutputState }

“MemoryGiBPerVCpuRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum amount of memory per vCPU for an instance type, in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) Max added in v0.3.0

The memory maximum in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) Min added in v0.3.0

The memory minimum in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutput added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutput() AutoScalingGroupMemoryGiBPerVCpuRequestOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestOutputWithContext(ctx context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput() AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

type AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput() AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput
	ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext(context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput
}

AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput is an input type that accepts AutoScalingGroupMemoryGiBPerVCpuRequestArgs, AutoScalingGroupMemoryGiBPerVCpuRequestPtr and AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput` via:

        AutoScalingGroupMemoryGiBPerVCpuRequestArgs{...}

or:

        nil

type AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput added in v0.3.0

type AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) Max added in v0.3.0

The memory maximum in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) Min added in v0.3.0

The memory minimum in GiB.

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput() AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

func (AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) ToAutoScalingGroupMemoryGiBPerVCpuRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput

type AutoScalingGroupMemoryMiBRequest added in v0.3.0

type AutoScalingGroupMemoryMiBRequest struct {
	// The memory maximum in MiB.
	Max *int `pulumi:"max"`
	// The memory minimum in MiB.
	Min *int `pulumi:"min"`
}

“MemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum instance memory size for an instance type, in MiB.

type AutoScalingGroupMemoryMiBRequestArgs added in v0.3.0

type AutoScalingGroupMemoryMiBRequestArgs struct {
	// The memory maximum in MiB.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The memory minimum in MiB.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“MemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum instance memory size for an instance type, in MiB.

func (AutoScalingGroupMemoryMiBRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestOutput added in v0.3.0

func (i AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestOutput() AutoScalingGroupMemoryMiBRequestOutput

func (AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestOutputWithContext(ctx context.Context) AutoScalingGroupMemoryMiBRequestOutput

func (AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestPtrOutput() AutoScalingGroupMemoryMiBRequestPtrOutput

func (AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupMemoryMiBRequestArgs) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryMiBRequestPtrOutput

type AutoScalingGroupMemoryMiBRequestInput added in v0.3.0

type AutoScalingGroupMemoryMiBRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupMemoryMiBRequestOutput() AutoScalingGroupMemoryMiBRequestOutput
	ToAutoScalingGroupMemoryMiBRequestOutputWithContext(context.Context) AutoScalingGroupMemoryMiBRequestOutput
}

AutoScalingGroupMemoryMiBRequestInput is an input type that accepts AutoScalingGroupMemoryMiBRequestArgs and AutoScalingGroupMemoryMiBRequestOutput values. You can construct a concrete instance of `AutoScalingGroupMemoryMiBRequestInput` via:

AutoScalingGroupMemoryMiBRequestArgs{...}

type AutoScalingGroupMemoryMiBRequestOutput added in v0.3.0

type AutoScalingGroupMemoryMiBRequestOutput struct{ *pulumi.OutputState }

“MemoryMiBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum instance memory size for an instance type, in MiB.

func (AutoScalingGroupMemoryMiBRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupMemoryMiBRequestOutput) Max added in v0.3.0

The memory maximum in MiB.

func (AutoScalingGroupMemoryMiBRequestOutput) Min added in v0.3.0

The memory minimum in MiB.

func (AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestOutput added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestOutput() AutoScalingGroupMemoryMiBRequestOutput

func (AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestOutputWithContext(ctx context.Context) AutoScalingGroupMemoryMiBRequestOutput

func (AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutput() AutoScalingGroupMemoryMiBRequestPtrOutput

func (AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryMiBRequestPtrOutput

type AutoScalingGroupMemoryMiBRequestPtrInput added in v0.3.0

type AutoScalingGroupMemoryMiBRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupMemoryMiBRequestPtrOutput() AutoScalingGroupMemoryMiBRequestPtrOutput
	ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext(context.Context) AutoScalingGroupMemoryMiBRequestPtrOutput
}

AutoScalingGroupMemoryMiBRequestPtrInput is an input type that accepts AutoScalingGroupMemoryMiBRequestArgs, AutoScalingGroupMemoryMiBRequestPtr and AutoScalingGroupMemoryMiBRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupMemoryMiBRequestPtrInput` via:

        AutoScalingGroupMemoryMiBRequestArgs{...}

or:

        nil

type AutoScalingGroupMemoryMiBRequestPtrOutput added in v0.3.0

type AutoScalingGroupMemoryMiBRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupMemoryMiBRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupMemoryMiBRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupMemoryMiBRequestPtrOutput) Max added in v0.3.0

The memory maximum in MiB.

func (AutoScalingGroupMemoryMiBRequestPtrOutput) Min added in v0.3.0

The memory minimum in MiB.

func (AutoScalingGroupMemoryMiBRequestPtrOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestPtrOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutput() AutoScalingGroupMemoryMiBRequestPtrOutput

func (AutoScalingGroupMemoryMiBRequestPtrOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupMemoryMiBRequestPtrOutput) ToAutoScalingGroupMemoryMiBRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupMemoryMiBRequestPtrOutput

type AutoScalingGroupMetricsCollection

type AutoScalingGroupMetricsCollection struct {
	// The frequency at which Amazon EC2 Auto Scaling sends aggregated data to CloudWatch. The only valid value is “1Minute“.
	Granularity string `pulumi:"granularity"`
	// Identifies the metrics to enable.
	//  You can specify one or more of the following metrics:
	//   +   “GroupMinSize“
	//   +   “GroupMaxSize“
	//   +   “GroupDesiredCapacity“
	//   +   “GroupInServiceInstances“
	//   +   “GroupPendingInstances“
	//   +   “GroupStandbyInstances“
	//   +   “GroupTerminatingInstances“
	//   +   “GroupTotalInstances“
	//   +   “GroupInServiceCapacity“
	//   +   “GroupPendingCapacity“
	//   +   “GroupStandbyCapacity“
	//   +   “GroupTerminatingCapacity“
	//   +   “GroupTotalCapacity“
	//   +   “WarmPoolDesiredCapacity“
	//   +   “WarmPoolWarmedCapacity“
	//   +   “WarmPoolPendingCapacity“
	//   +   “WarmPoolTerminatingCapacity“
	//   +   “WarmPoolTotalCapacity“
	//   +   “GroupAndWarmPoolDesiredCapacity“
	//   +   “GroupAndWarmPoolTotalCapacity“
	//
	//  If you specify “Granularity“ and don't specify any metrics, all metrics are enabled.
	//  For more information, see [Auto Scaling group metrics](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-cloudwatch-monitoring.html#as-group-metrics) in the *Amazon EC2 Auto Scaling User Guide*.
	Metrics []string `pulumi:"metrics"`
}

“MetricsCollection“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource that describes the group metrics that an Amazon EC2 Auto Scaling group sends to Amazon CloudWatch. These metrics describe the group rather than any of its instances.

For more information, see [Monitor CloudWatch metrics for your Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.

type AutoScalingGroupMetricsCollectionArgs

type AutoScalingGroupMetricsCollectionArgs struct {
	// The frequency at which Amazon EC2 Auto Scaling sends aggregated data to CloudWatch. The only valid value is “1Minute“.
	Granularity pulumi.StringInput `pulumi:"granularity"`
	// Identifies the metrics to enable.
	//  You can specify one or more of the following metrics:
	//   +   “GroupMinSize“
	//   +   “GroupMaxSize“
	//   +   “GroupDesiredCapacity“
	//   +   “GroupInServiceInstances“
	//   +   “GroupPendingInstances“
	//   +   “GroupStandbyInstances“
	//   +   “GroupTerminatingInstances“
	//   +   “GroupTotalInstances“
	//   +   “GroupInServiceCapacity“
	//   +   “GroupPendingCapacity“
	//   +   “GroupStandbyCapacity“
	//   +   “GroupTerminatingCapacity“
	//   +   “GroupTotalCapacity“
	//   +   “WarmPoolDesiredCapacity“
	//   +   “WarmPoolWarmedCapacity“
	//   +   “WarmPoolPendingCapacity“
	//   +   “WarmPoolTerminatingCapacity“
	//   +   “WarmPoolTotalCapacity“
	//   +   “GroupAndWarmPoolDesiredCapacity“
	//   +   “GroupAndWarmPoolTotalCapacity“
	//
	//  If you specify “Granularity“ and don't specify any metrics, all metrics are enabled.
	//  For more information, see [Auto Scaling group metrics](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-cloudwatch-monitoring.html#as-group-metrics) in the *Amazon EC2 Auto Scaling User Guide*.
	Metrics pulumi.StringArrayInput `pulumi:"metrics"`
}

“MetricsCollection“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource that describes the group metrics that an Amazon EC2 Auto Scaling group sends to Amazon CloudWatch. These metrics describe the group rather than any of its instances.

For more information, see [Monitor CloudWatch metrics for your Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.

func (AutoScalingGroupMetricsCollectionArgs) ElementType

func (AutoScalingGroupMetricsCollectionArgs) ToAutoScalingGroupMetricsCollectionOutput

func (i AutoScalingGroupMetricsCollectionArgs) ToAutoScalingGroupMetricsCollectionOutput() AutoScalingGroupMetricsCollectionOutput

func (AutoScalingGroupMetricsCollectionArgs) ToAutoScalingGroupMetricsCollectionOutputWithContext

func (i AutoScalingGroupMetricsCollectionArgs) ToAutoScalingGroupMetricsCollectionOutputWithContext(ctx context.Context) AutoScalingGroupMetricsCollectionOutput

type AutoScalingGroupMetricsCollectionArray

type AutoScalingGroupMetricsCollectionArray []AutoScalingGroupMetricsCollectionInput

func (AutoScalingGroupMetricsCollectionArray) ElementType

func (AutoScalingGroupMetricsCollectionArray) ToAutoScalingGroupMetricsCollectionArrayOutput

func (i AutoScalingGroupMetricsCollectionArray) ToAutoScalingGroupMetricsCollectionArrayOutput() AutoScalingGroupMetricsCollectionArrayOutput

func (AutoScalingGroupMetricsCollectionArray) ToAutoScalingGroupMetricsCollectionArrayOutputWithContext

func (i AutoScalingGroupMetricsCollectionArray) ToAutoScalingGroupMetricsCollectionArrayOutputWithContext(ctx context.Context) AutoScalingGroupMetricsCollectionArrayOutput

type AutoScalingGroupMetricsCollectionArrayInput

type AutoScalingGroupMetricsCollectionArrayInput interface {
	pulumi.Input

	ToAutoScalingGroupMetricsCollectionArrayOutput() AutoScalingGroupMetricsCollectionArrayOutput
	ToAutoScalingGroupMetricsCollectionArrayOutputWithContext(context.Context) AutoScalingGroupMetricsCollectionArrayOutput
}

AutoScalingGroupMetricsCollectionArrayInput is an input type that accepts AutoScalingGroupMetricsCollectionArray and AutoScalingGroupMetricsCollectionArrayOutput values. You can construct a concrete instance of `AutoScalingGroupMetricsCollectionArrayInput` via:

AutoScalingGroupMetricsCollectionArray{ AutoScalingGroupMetricsCollectionArgs{...} }

type AutoScalingGroupMetricsCollectionArrayOutput

type AutoScalingGroupMetricsCollectionArrayOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupMetricsCollectionArrayOutput) ElementType

func (AutoScalingGroupMetricsCollectionArrayOutput) Index

func (AutoScalingGroupMetricsCollectionArrayOutput) ToAutoScalingGroupMetricsCollectionArrayOutput

func (o AutoScalingGroupMetricsCollectionArrayOutput) ToAutoScalingGroupMetricsCollectionArrayOutput() AutoScalingGroupMetricsCollectionArrayOutput

func (AutoScalingGroupMetricsCollectionArrayOutput) ToAutoScalingGroupMetricsCollectionArrayOutputWithContext

func (o AutoScalingGroupMetricsCollectionArrayOutput) ToAutoScalingGroupMetricsCollectionArrayOutputWithContext(ctx context.Context) AutoScalingGroupMetricsCollectionArrayOutput

type AutoScalingGroupMetricsCollectionInput

type AutoScalingGroupMetricsCollectionInput interface {
	pulumi.Input

	ToAutoScalingGroupMetricsCollectionOutput() AutoScalingGroupMetricsCollectionOutput
	ToAutoScalingGroupMetricsCollectionOutputWithContext(context.Context) AutoScalingGroupMetricsCollectionOutput
}

AutoScalingGroupMetricsCollectionInput is an input type that accepts AutoScalingGroupMetricsCollectionArgs and AutoScalingGroupMetricsCollectionOutput values. You can construct a concrete instance of `AutoScalingGroupMetricsCollectionInput` via:

AutoScalingGroupMetricsCollectionArgs{...}

type AutoScalingGroupMetricsCollectionOutput

type AutoScalingGroupMetricsCollectionOutput struct{ *pulumi.OutputState }

“MetricsCollection“ is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource that describes the group metrics that an Amazon EC2 Auto Scaling group sends to Amazon CloudWatch. These metrics describe the group rather than any of its instances.

For more information, see [Monitor CloudWatch metrics for your Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.

func (AutoScalingGroupMetricsCollectionOutput) ElementType

func (AutoScalingGroupMetricsCollectionOutput) Granularity

The frequency at which Amazon EC2 Auto Scaling sends aggregated data to CloudWatch. The only valid value is “1Minute“.

func (AutoScalingGroupMetricsCollectionOutput) Metrics

Identifies the metrics to enable.

You can specify one or more of the following metrics:
 +   ``GroupMinSize``
 +   ``GroupMaxSize``
 +   ``GroupDesiredCapacity``
 +   ``GroupInServiceInstances``
 +   ``GroupPendingInstances``
 +   ``GroupStandbyInstances``
 +   ``GroupTerminatingInstances``
 +   ``GroupTotalInstances``
 +   ``GroupInServiceCapacity``
 +   ``GroupPendingCapacity``
 +   ``GroupStandbyCapacity``
 +   ``GroupTerminatingCapacity``
 +   ``GroupTotalCapacity``
 +   ``WarmPoolDesiredCapacity``
 +   ``WarmPoolWarmedCapacity``
 +   ``WarmPoolPendingCapacity``
 +   ``WarmPoolTerminatingCapacity``
 +   ``WarmPoolTotalCapacity``
 +   ``GroupAndWarmPoolDesiredCapacity``
 +   ``GroupAndWarmPoolTotalCapacity``

If you specify ``Granularity`` and don't specify any metrics, all metrics are enabled.
For more information, see [Auto Scaling group metrics](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-cloudwatch-monitoring.html#as-group-metrics) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupMetricsCollectionOutput) ToAutoScalingGroupMetricsCollectionOutput

func (o AutoScalingGroupMetricsCollectionOutput) ToAutoScalingGroupMetricsCollectionOutput() AutoScalingGroupMetricsCollectionOutput

func (AutoScalingGroupMetricsCollectionOutput) ToAutoScalingGroupMetricsCollectionOutputWithContext

func (o AutoScalingGroupMetricsCollectionOutput) ToAutoScalingGroupMetricsCollectionOutputWithContext(ctx context.Context) AutoScalingGroupMetricsCollectionOutput

type AutoScalingGroupMixedInstancesPolicy

type AutoScalingGroupMixedInstancesPolicy struct {
	// The instances distribution.
	InstancesDistribution *AutoScalingGroupInstancesDistribution `pulumi:"instancesDistribution"`
	// One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.
	LaunchTemplate AutoScalingGroupLaunchTemplate `pulumi:"launchTemplate"`
}

Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.

A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.
There are key differences between Spot Instances and On-Demand Instances:
 +  The price for Spot Instances varies based on demand
 +  Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes

When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group.
 ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

type AutoScalingGroupMixedInstancesPolicyArgs

type AutoScalingGroupMixedInstancesPolicyArgs struct {
	// The instances distribution.
	InstancesDistribution AutoScalingGroupInstancesDistributionPtrInput `pulumi:"instancesDistribution"`
	// One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.
	LaunchTemplate AutoScalingGroupLaunchTemplateInput `pulumi:"launchTemplate"`
}

Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.

A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.
There are key differences between Spot Instances and On-Demand Instances:
 +  The price for Spot Instances varies based on demand
 +  Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes

When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group.
 ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

func (AutoScalingGroupMixedInstancesPolicyArgs) ElementType

func (AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyOutput

func (i AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyOutput() AutoScalingGroupMixedInstancesPolicyOutput

func (AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyOutputWithContext

func (i AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyOutputWithContext(ctx context.Context) AutoScalingGroupMixedInstancesPolicyOutput

func (AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyPtrOutput

func (i AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyPtrOutput() AutoScalingGroupMixedInstancesPolicyPtrOutput

func (AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext

func (i AutoScalingGroupMixedInstancesPolicyArgs) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupMixedInstancesPolicyPtrOutput

type AutoScalingGroupMixedInstancesPolicyInput

type AutoScalingGroupMixedInstancesPolicyInput interface {
	pulumi.Input

	ToAutoScalingGroupMixedInstancesPolicyOutput() AutoScalingGroupMixedInstancesPolicyOutput
	ToAutoScalingGroupMixedInstancesPolicyOutputWithContext(context.Context) AutoScalingGroupMixedInstancesPolicyOutput
}

AutoScalingGroupMixedInstancesPolicyInput is an input type that accepts AutoScalingGroupMixedInstancesPolicyArgs and AutoScalingGroupMixedInstancesPolicyOutput values. You can construct a concrete instance of `AutoScalingGroupMixedInstancesPolicyInput` via:

AutoScalingGroupMixedInstancesPolicyArgs{...}

type AutoScalingGroupMixedInstancesPolicyOutput

type AutoScalingGroupMixedInstancesPolicyOutput struct{ *pulumi.OutputState }

Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.

A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.
There are key differences between Spot Instances and On-Demand Instances:
 +  The price for Spot Instances varies based on demand
 +  Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes

When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group.
 ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

func (AutoScalingGroupMixedInstancesPolicyOutput) ElementType

func (AutoScalingGroupMixedInstancesPolicyOutput) InstancesDistribution

The instances distribution.

func (AutoScalingGroupMixedInstancesPolicyOutput) LaunchTemplate

One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.

func (AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyOutput

func (o AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyOutput() AutoScalingGroupMixedInstancesPolicyOutput

func (AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyOutputWithContext

func (o AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyOutputWithContext(ctx context.Context) AutoScalingGroupMixedInstancesPolicyOutput

func (AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutput

func (o AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutput() AutoScalingGroupMixedInstancesPolicyPtrOutput

func (AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext

func (o AutoScalingGroupMixedInstancesPolicyOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupMixedInstancesPolicyPtrOutput

type AutoScalingGroupMixedInstancesPolicyPtrInput

type AutoScalingGroupMixedInstancesPolicyPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupMixedInstancesPolicyPtrOutput() AutoScalingGroupMixedInstancesPolicyPtrOutput
	ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext(context.Context) AutoScalingGroupMixedInstancesPolicyPtrOutput
}

AutoScalingGroupMixedInstancesPolicyPtrInput is an input type that accepts AutoScalingGroupMixedInstancesPolicyArgs, AutoScalingGroupMixedInstancesPolicyPtr and AutoScalingGroupMixedInstancesPolicyPtrOutput values. You can construct a concrete instance of `AutoScalingGroupMixedInstancesPolicyPtrInput` via:

        AutoScalingGroupMixedInstancesPolicyArgs{...}

or:

        nil

type AutoScalingGroupMixedInstancesPolicyPtrOutput

type AutoScalingGroupMixedInstancesPolicyPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) Elem

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) ElementType

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) InstancesDistribution

The instances distribution.

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) LaunchTemplate

One or more launch templates and the instance types (overrides) that are used to launch EC2 instances to fulfill On-Demand and Spot capacities.

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutput

func (o AutoScalingGroupMixedInstancesPolicyPtrOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutput() AutoScalingGroupMixedInstancesPolicyPtrOutput

func (AutoScalingGroupMixedInstancesPolicyPtrOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext

func (o AutoScalingGroupMixedInstancesPolicyPtrOutput) ToAutoScalingGroupMixedInstancesPolicyPtrOutputWithContext(ctx context.Context) AutoScalingGroupMixedInstancesPolicyPtrOutput

type AutoScalingGroupNetworkBandwidthGbpsRequest added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequest struct {
	// The maximum amount of network bandwidth, in gigabits per second (Gbps).
	Max *float64 `pulumi:"max"`
	// The minimum amount of network bandwidth, in gigabits per second (Gbps).
	Min *float64 `pulumi:"min"`
}

“NetworkBandwidthGbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.

type AutoScalingGroupNetworkBandwidthGbpsRequestArgs added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequestArgs struct {
	// The maximum amount of network bandwidth, in gigabits per second (Gbps).
	Max pulumi.Float64PtrInput `pulumi:"max"`
	// The minimum amount of network bandwidth, in gigabits per second (Gbps).
	Min pulumi.Float64PtrInput `pulumi:"min"`
}

“NetworkBandwidthGbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.

func (AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ElementType added in v0.42.0

func (AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutput added in v0.42.0

func (i AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutput() AutoScalingGroupNetworkBandwidthGbpsRequestOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutputWithContext added in v0.42.0

func (i AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutputWithContext(ctx context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput added in v0.42.0

func (i AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput() AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext added in v0.42.0

func (i AutoScalingGroupNetworkBandwidthGbpsRequestArgs) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput

type AutoScalingGroupNetworkBandwidthGbpsRequestInput added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupNetworkBandwidthGbpsRequestOutput() AutoScalingGroupNetworkBandwidthGbpsRequestOutput
	ToAutoScalingGroupNetworkBandwidthGbpsRequestOutputWithContext(context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestOutput
}

AutoScalingGroupNetworkBandwidthGbpsRequestInput is an input type that accepts AutoScalingGroupNetworkBandwidthGbpsRequestArgs and AutoScalingGroupNetworkBandwidthGbpsRequestOutput values. You can construct a concrete instance of `AutoScalingGroupNetworkBandwidthGbpsRequestInput` via:

AutoScalingGroupNetworkBandwidthGbpsRequestArgs{...}

type AutoScalingGroupNetworkBandwidthGbpsRequestOutput added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequestOutput struct{ *pulumi.OutputState }

“NetworkBandwidthGbpsRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum network bandwidth for an instance type, in Gbps.

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see [Available instance bandwidth](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth) in the *Amazon EC2 User Guide for Linux Instances*.

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ElementType added in v0.42.0

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) Max added in v0.42.0

The maximum amount of network bandwidth, in gigabits per second (Gbps).

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) Min added in v0.42.0

The minimum amount of network bandwidth, in gigabits per second (Gbps).

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutput added in v0.42.0

func (o AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutput() AutoScalingGroupNetworkBandwidthGbpsRequestOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutputWithContext added in v0.42.0

func (o AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestOutputWithContext(ctx context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput added in v0.42.0

func (o AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput() AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput

func (AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext added in v0.42.0

func (o AutoScalingGroupNetworkBandwidthGbpsRequestOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput

type AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput() AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput
	ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext(context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput
}

AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput is an input type that accepts AutoScalingGroupNetworkBandwidthGbpsRequestArgs, AutoScalingGroupNetworkBandwidthGbpsRequestPtr and AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput` via:

        AutoScalingGroupNetworkBandwidthGbpsRequestArgs{...}

or:

        nil

type AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput added in v0.42.0

type AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) Elem added in v0.42.0

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) ElementType added in v0.42.0

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) Max added in v0.42.0

The maximum amount of network bandwidth, in gigabits per second (Gbps).

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) Min added in v0.42.0

The minimum amount of network bandwidth, in gigabits per second (Gbps).

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput added in v0.42.0

func (AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext added in v0.42.0

func (o AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput) ToAutoScalingGroupNetworkBandwidthGbpsRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput

type AutoScalingGroupNetworkInterfaceCountRequest added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequest struct {
	// The maximum number of network interfaces.
	Max *int `pulumi:"max"`
	// The minimum number of network interfaces.
	Min *int `pulumi:"min"`
}

“NetworkInterfaceCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of network interfaces for an instance type.

type AutoScalingGroupNetworkInterfaceCountRequestArgs added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequestArgs struct {
	// The maximum number of network interfaces.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The minimum number of network interfaces.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“NetworkInterfaceCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of network interfaces for an instance type.

func (AutoScalingGroupNetworkInterfaceCountRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestOutput added in v0.3.0

func (i AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestOutput() AutoScalingGroupNetworkInterfaceCountRequestOutput

func (AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupNetworkInterfaceCountRequestOutput

func (AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput() AutoScalingGroupNetworkInterfaceCountRequestPtrOutput

func (AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupNetworkInterfaceCountRequestArgs) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkInterfaceCountRequestPtrOutput

type AutoScalingGroupNetworkInterfaceCountRequestInput added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupNetworkInterfaceCountRequestOutput() AutoScalingGroupNetworkInterfaceCountRequestOutput
	ToAutoScalingGroupNetworkInterfaceCountRequestOutputWithContext(context.Context) AutoScalingGroupNetworkInterfaceCountRequestOutput
}

AutoScalingGroupNetworkInterfaceCountRequestInput is an input type that accepts AutoScalingGroupNetworkInterfaceCountRequestArgs and AutoScalingGroupNetworkInterfaceCountRequestOutput values. You can construct a concrete instance of `AutoScalingGroupNetworkInterfaceCountRequestInput` via:

AutoScalingGroupNetworkInterfaceCountRequestArgs{...}

type AutoScalingGroupNetworkInterfaceCountRequestOutput added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequestOutput struct{ *pulumi.OutputState }

“NetworkInterfaceCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of network interfaces for an instance type.

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) Max added in v0.3.0

The maximum number of network interfaces.

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) Min added in v0.3.0

The minimum number of network interfaces.

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestOutput added in v0.3.0

func (o AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestOutput() AutoScalingGroupNetworkInterfaceCountRequestOutput

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupNetworkInterfaceCountRequestOutput

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput() AutoScalingGroupNetworkInterfaceCountRequestPtrOutput

func (AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupNetworkInterfaceCountRequestOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkInterfaceCountRequestPtrOutput

type AutoScalingGroupNetworkInterfaceCountRequestPtrInput added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput() AutoScalingGroupNetworkInterfaceCountRequestPtrOutput
	ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext(context.Context) AutoScalingGroupNetworkInterfaceCountRequestPtrOutput
}

AutoScalingGroupNetworkInterfaceCountRequestPtrInput is an input type that accepts AutoScalingGroupNetworkInterfaceCountRequestArgs, AutoScalingGroupNetworkInterfaceCountRequestPtr and AutoScalingGroupNetworkInterfaceCountRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupNetworkInterfaceCountRequestPtrInput` via:

        AutoScalingGroupNetworkInterfaceCountRequestArgs{...}

or:

        nil

type AutoScalingGroupNetworkInterfaceCountRequestPtrOutput added in v0.3.0

type AutoScalingGroupNetworkInterfaceCountRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) Max added in v0.3.0

The maximum number of network interfaces.

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) Min added in v0.3.0

The minimum number of network interfaces.

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutput added in v0.3.0

func (AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupNetworkInterfaceCountRequestPtrOutput) ToAutoScalingGroupNetworkInterfaceCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupNetworkInterfaceCountRequestPtrOutput

type AutoScalingGroupNotificationConfiguration

type AutoScalingGroupNotificationConfiguration struct {
	// A list of event types that send a notification. Event types can include any of the following types.
	//  *Allowed values*:
	//   +   “autoscaling:EC2_INSTANCE_LAUNCH“
	//   +   “autoscaling:EC2_INSTANCE_LAUNCH_ERROR“
	//   +   “autoscaling:EC2_INSTANCE_TERMINATE“
	//   +   “autoscaling:EC2_INSTANCE_TERMINATE_ERROR“
	//   +   “autoscaling:TEST_NOTIFICATION“
	NotificationTypes []string `pulumi:"notificationTypes"`
	// The Amazon Resource Name (ARN) of the Amazon SNS topic.
	TopicArn []string `pulumi:"topicArn"`
}

A structure that specifies an Amazon SNS notification configuration for the “NotificationConfigurations“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For an example template snippet, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Get Amazon SNS notifications when your Auto Scaling group scales](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html) in the *Amazon EC2 Auto Scaling User Guide*.

type AutoScalingGroupNotificationConfigurationArgs

type AutoScalingGroupNotificationConfigurationArgs struct {
	// A list of event types that send a notification. Event types can include any of the following types.
	//  *Allowed values*:
	//   +   “autoscaling:EC2_INSTANCE_LAUNCH“
	//   +   “autoscaling:EC2_INSTANCE_LAUNCH_ERROR“
	//   +   “autoscaling:EC2_INSTANCE_TERMINATE“
	//   +   “autoscaling:EC2_INSTANCE_TERMINATE_ERROR“
	//   +   “autoscaling:TEST_NOTIFICATION“
	NotificationTypes pulumi.StringArrayInput `pulumi:"notificationTypes"`
	// The Amazon Resource Name (ARN) of the Amazon SNS topic.
	TopicArn pulumi.StringArrayInput `pulumi:"topicArn"`
}

A structure that specifies an Amazon SNS notification configuration for the “NotificationConfigurations“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For an example template snippet, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Get Amazon SNS notifications when your Auto Scaling group scales](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupNotificationConfigurationArgs) ElementType

func (AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationOutput

func (i AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationOutput() AutoScalingGroupNotificationConfigurationOutput

func (AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationOutputWithContext

func (i AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationOutput

func (AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationPtrOutput added in v0.78.0

func (i AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationPtrOutput() AutoScalingGroupNotificationConfigurationPtrOutput

func (AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext added in v0.78.0

func (i AutoScalingGroupNotificationConfigurationArgs) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationPtrOutput

type AutoScalingGroupNotificationConfigurationArray

type AutoScalingGroupNotificationConfigurationArray []AutoScalingGroupNotificationConfigurationInput

func (AutoScalingGroupNotificationConfigurationArray) ElementType

func (AutoScalingGroupNotificationConfigurationArray) ToAutoScalingGroupNotificationConfigurationArrayOutput

func (i AutoScalingGroupNotificationConfigurationArray) ToAutoScalingGroupNotificationConfigurationArrayOutput() AutoScalingGroupNotificationConfigurationArrayOutput

func (AutoScalingGroupNotificationConfigurationArray) ToAutoScalingGroupNotificationConfigurationArrayOutputWithContext

func (i AutoScalingGroupNotificationConfigurationArray) ToAutoScalingGroupNotificationConfigurationArrayOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationArrayOutput

type AutoScalingGroupNotificationConfigurationArrayInput

type AutoScalingGroupNotificationConfigurationArrayInput interface {
	pulumi.Input

	ToAutoScalingGroupNotificationConfigurationArrayOutput() AutoScalingGroupNotificationConfigurationArrayOutput
	ToAutoScalingGroupNotificationConfigurationArrayOutputWithContext(context.Context) AutoScalingGroupNotificationConfigurationArrayOutput
}

AutoScalingGroupNotificationConfigurationArrayInput is an input type that accepts AutoScalingGroupNotificationConfigurationArray and AutoScalingGroupNotificationConfigurationArrayOutput values. You can construct a concrete instance of `AutoScalingGroupNotificationConfigurationArrayInput` via:

AutoScalingGroupNotificationConfigurationArray{ AutoScalingGroupNotificationConfigurationArgs{...} }

type AutoScalingGroupNotificationConfigurationArrayOutput

type AutoScalingGroupNotificationConfigurationArrayOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupNotificationConfigurationArrayOutput) ElementType

func (AutoScalingGroupNotificationConfigurationArrayOutput) Index

func (AutoScalingGroupNotificationConfigurationArrayOutput) ToAutoScalingGroupNotificationConfigurationArrayOutput

func (AutoScalingGroupNotificationConfigurationArrayOutput) ToAutoScalingGroupNotificationConfigurationArrayOutputWithContext

func (o AutoScalingGroupNotificationConfigurationArrayOutput) ToAutoScalingGroupNotificationConfigurationArrayOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationArrayOutput

type AutoScalingGroupNotificationConfigurationInput

type AutoScalingGroupNotificationConfigurationInput interface {
	pulumi.Input

	ToAutoScalingGroupNotificationConfigurationOutput() AutoScalingGroupNotificationConfigurationOutput
	ToAutoScalingGroupNotificationConfigurationOutputWithContext(context.Context) AutoScalingGroupNotificationConfigurationOutput
}

AutoScalingGroupNotificationConfigurationInput is an input type that accepts AutoScalingGroupNotificationConfigurationArgs and AutoScalingGroupNotificationConfigurationOutput values. You can construct a concrete instance of `AutoScalingGroupNotificationConfigurationInput` via:

AutoScalingGroupNotificationConfigurationArgs{...}

type AutoScalingGroupNotificationConfigurationOutput

type AutoScalingGroupNotificationConfigurationOutput struct{ *pulumi.OutputState }

A structure that specifies an Amazon SNS notification configuration for the “NotificationConfigurations“ property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For an example template snippet, see [Auto scaling template snippets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html).
For more information, see [Get Amazon SNS notifications when your Auto Scaling group scales](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupNotificationConfigurationOutput) ElementType

func (AutoScalingGroupNotificationConfigurationOutput) NotificationTypes

A list of event types that send a notification. Event types can include any of the following types.

*Allowed values*:
 +   ``autoscaling:EC2_INSTANCE_LAUNCH``
 +   ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR``
 +   ``autoscaling:EC2_INSTANCE_TERMINATE``
 +   ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR``
 +   ``autoscaling:TEST_NOTIFICATION``

func (AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationOutput

func (o AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationOutput() AutoScalingGroupNotificationConfigurationOutput

func (AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationOutputWithContext

func (o AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationOutput

func (AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationPtrOutput added in v0.78.0

func (o AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationPtrOutput() AutoScalingGroupNotificationConfigurationPtrOutput

func (AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext added in v0.78.0

func (o AutoScalingGroupNotificationConfigurationOutput) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationPtrOutput

func (AutoScalingGroupNotificationConfigurationOutput) TopicArn added in v0.72.0

The Amazon Resource Name (ARN) of the Amazon SNS topic.

type AutoScalingGroupNotificationConfigurationPtrInput added in v0.78.0

type AutoScalingGroupNotificationConfigurationPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupNotificationConfigurationPtrOutput() AutoScalingGroupNotificationConfigurationPtrOutput
	ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext(context.Context) AutoScalingGroupNotificationConfigurationPtrOutput
}

AutoScalingGroupNotificationConfigurationPtrInput is an input type that accepts AutoScalingGroupNotificationConfigurationArgs, AutoScalingGroupNotificationConfigurationPtr and AutoScalingGroupNotificationConfigurationPtrOutput values. You can construct a concrete instance of `AutoScalingGroupNotificationConfigurationPtrInput` via:

        AutoScalingGroupNotificationConfigurationArgs{...}

or:

        nil

type AutoScalingGroupNotificationConfigurationPtrOutput added in v0.78.0

type AutoScalingGroupNotificationConfigurationPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupNotificationConfigurationPtrOutput) Elem added in v0.78.0

func (AutoScalingGroupNotificationConfigurationPtrOutput) ElementType added in v0.78.0

func (AutoScalingGroupNotificationConfigurationPtrOutput) NotificationTypes added in v0.78.0

A list of event types that send a notification. Event types can include any of the following types.

*Allowed values*:
 +   ``autoscaling:EC2_INSTANCE_LAUNCH``
 +   ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR``
 +   ``autoscaling:EC2_INSTANCE_TERMINATE``
 +   ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR``
 +   ``autoscaling:TEST_NOTIFICATION``

func (AutoScalingGroupNotificationConfigurationPtrOutput) ToAutoScalingGroupNotificationConfigurationPtrOutput added in v0.78.0

func (o AutoScalingGroupNotificationConfigurationPtrOutput) ToAutoScalingGroupNotificationConfigurationPtrOutput() AutoScalingGroupNotificationConfigurationPtrOutput

func (AutoScalingGroupNotificationConfigurationPtrOutput) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext added in v0.78.0

func (o AutoScalingGroupNotificationConfigurationPtrOutput) ToAutoScalingGroupNotificationConfigurationPtrOutputWithContext(ctx context.Context) AutoScalingGroupNotificationConfigurationPtrOutput

func (AutoScalingGroupNotificationConfigurationPtrOutput) TopicArn added in v0.78.0

The Amazon Resource Name (ARN) of the Amazon SNS topic.

type AutoScalingGroupOutput

type AutoScalingGroupOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupOutput) AutoScalingGroupName added in v0.17.0

func (o AutoScalingGroupOutput) AutoScalingGroupName() pulumi.StringPtrOutput

The name of the Auto Scaling group. This name must be unique per Region per account.

The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
 You cannot use a colon (:) in the name.

func (AutoScalingGroupOutput) AvailabilityZones added in v0.17.0

func (o AutoScalingGroupOutput) AvailabilityZones() pulumi.StringArrayOutput

A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the “VPCZoneIdentifier“ property, or for attaching a network interface when an existing network interface ID is specified in a launch template.

func (AutoScalingGroupOutput) CapacityRebalance added in v0.17.0

func (o AutoScalingGroupOutput) CapacityRebalance() pulumi.BoolPtrOutput

Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) Context added in v0.17.0

Reserved.

func (AutoScalingGroupOutput) Cooldown added in v0.17.0

*Only needed if you use simple scaling policies.*

The amount of time, in seconds, between one scaling activity ending and another one starting due to simple scaling policies. For more information, see [Scaling cooldowns for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) in the *Amazon EC2 Auto Scaling User Guide*.
Default: ``300`` seconds

func (AutoScalingGroupOutput) DefaultInstanceWarmup added in v0.17.0

func (o AutoScalingGroupOutput) DefaultInstanceWarmup() pulumi.IntPtrOutput

The amount of time, in seconds, until a new instance is considered to have finished initializing and resource consumption to become stable after it enters the “InService“ state.

During an instance refresh, Amazon EC2 Auto Scaling waits for the warm-up period after it replaces an instance before it moves on to replacing the next instance. Amazon EC2 Auto Scaling also waits for the warm-up period before aggregating the metrics for new instances with existing instances in the Amazon CloudWatch metrics that are used for scaling, resulting in more reliable usage data. For more information, see [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html) in the *Amazon EC2 Auto Scaling User Guide*.
 To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify ``-1`` for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of ``0`` or other nominal value.
 Default: None

func (AutoScalingGroupOutput) DesiredCapacity added in v0.17.0

func (o AutoScalingGroupOutput) DesiredCapacity() pulumi.StringPtrOutput

The desired capacity is the initial capacity of the Auto Scaling group at the time of its creation and the capacity it attempts to maintain. It can scale beyond this capacity if you configure automatic scaling.

The number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group. If you do not specify a desired capacity when creating the stack, the default is the minimum size of the group.
CloudFormation marks the Auto Scaling group as successful (by setting its status to CREATE_COMPLETE) when the desired capacity is reached. However, if a maximum Spot price is set in the launch template or launch configuration that you specified, then desired capacity is not used as a criteria for success. Whether your request is fulfilled depends on Spot Instance capacity and your maximum price.

func (AutoScalingGroupOutput) DesiredCapacityType added in v0.17.0

func (o AutoScalingGroupOutput) DesiredCapacityType() pulumi.StringPtrOutput

The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports “DesiredCapacityType“ for attribute-based instance type selection only. For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*.

By default, Amazon EC2 Auto Scaling specifies ``units``, which translates into number of instances.
Valid values: ``units`` | ``vcpu`` | ``memory-mib``

func (AutoScalingGroupOutput) ElementType

func (AutoScalingGroupOutput) ElementType() reflect.Type

func (AutoScalingGroupOutput) HealthCheckGracePeriod added in v0.17.0

func (o AutoScalingGroupOutput) HealthCheckGracePeriod() pulumi.IntPtrOutput

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 and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the “InService“ state. For more information, see [Set the health check grace period for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) in the *Amazon EC2 Auto Scaling User Guide*.

Default: ``0`` seconds

func (AutoScalingGroupOutput) HealthCheckType added in v0.17.0

func (o AutoScalingGroupOutput) HealthCheckType() pulumi.StringPtrOutput

A comma-separated value string of one or more health check types.

The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for Auto Scaling instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the *Amazon EC2 Auto Scaling User Guide*.
Only specify ``EC2`` if you must clear a value that was previously set.

func (AutoScalingGroupOutput) InstanceId added in v0.17.0

The ID of the instance used to base the launch configuration on. For more information, see [Create an Auto Scaling group using an EC2 instance](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-from-instance.html) in the *Amazon EC2 Auto Scaling User Guide*.

If you specify ``LaunchTemplate``, ``MixedInstancesPolicy``, or ``LaunchConfigurationName``, don't specify ``InstanceId``.

func (AutoScalingGroupOutput) InstanceMaintenancePolicy added in v0.77.0

An instance maintenance policy. For more information, see [Set instance maintenance policy](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) LaunchConfigurationName added in v0.17.0

func (o AutoScalingGroupOutput) LaunchConfigurationName() pulumi.StringPtrOutput

The name of the launch configuration to use to launch instances.

Required only if you don't specify ``LaunchTemplate``, ``MixedInstancesPolicy``, or ``InstanceId``.

func (AutoScalingGroupOutput) LaunchTemplate added in v0.17.0

Information used to specify the launch template and version to use to launch instances. You can alternatively associate a launch template to the Auto Scaling group by specifying a “MixedInstancesPolicy“. For more information about creating launch templates, see [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.

If you omit this property, you must specify ``MixedInstancesPolicy``, ``LaunchConfigurationName``, or ``InstanceId``.

func (AutoScalingGroupOutput) LifecycleHookSpecificationList added in v0.17.0

One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.

func (AutoScalingGroupOutput) LoadBalancerNames added in v0.17.0

func (o AutoScalingGroupOutput) LoadBalancerNames() pulumi.StringArrayOutput

A list of Classic Load Balancers associated with this Auto Scaling group. For Application Load Balancers, Network Load Balancers, and Gateway Load Balancers, specify the “TargetGroupARNs“ property instead.

func (AutoScalingGroupOutput) MaxInstanceLifetime added in v0.17.0

func (o AutoScalingGroupOutput) MaxInstanceLifetime() pulumi.IntPtrOutput

The maximum amount of time, in seconds, that an instance can be in service. The default is null. If specified, the value must be either 0 or a number equal to or greater than 86,400 seconds (1 day). For more information, see [Replacing Auto Scaling instances based on maximum instance lifetime](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) MaxSize added in v0.17.0

The maximum size of the group.

With a mixed instances policy that uses instance weighting, Amazon EC2 Auto Scaling may need to go above ``MaxSize`` to meet your capacity requirements. In this event, Amazon EC2 Auto Scaling will never go above ``MaxSize`` by more than your largest instance weight (weights that define how many units each instance contributes to the desired capacity of the group).

func (AutoScalingGroupOutput) MetricsCollection added in v0.17.0

Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.

func (AutoScalingGroupOutput) MinSize added in v0.17.0

The minimum size of the group.

func (AutoScalingGroupOutput) MixedInstancesPolicy added in v0.17.0

An embedded object that specifies a mixed instances policy.

The policy includes properties that not only define the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances (optional), and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacities, but also the properties that specify the instance configuration information—the launch template and instance types. The policy can also include a weight for each instance type and different launch templates for individual instance types.
For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) NewInstancesProtectedFromScaleIn added in v0.17.0

func (o AutoScalingGroupOutput) NewInstancesProtectedFromScaleIn() pulumi.BoolPtrOutput

Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) NotificationConfiguration added in v0.78.0

func (AutoScalingGroupOutput) NotificationConfigurations added in v0.17.0

Configures an Auto Scaling group to send notifications when specified events take place.

func (AutoScalingGroupOutput) PlacementGroup added in v0.17.0

func (o AutoScalingGroupOutput) PlacementGroup() pulumi.StringPtrOutput

The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.

A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.

func (AutoScalingGroupOutput) ServiceLinkedRoleArn added in v0.72.0

func (o AutoScalingGroupOutput) ServiceLinkedRoleArn() pulumi.StringPtrOutput

The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named “AWSServiceRoleForAutoScaling“, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) Tags added in v0.17.0

One or more tags. You can tag your Auto Scaling group and propagate the tags to the Amazon EC2 instances it launches. Tags are not propagated to Amazon EBS volumes. To add tags to Amazon EBS volumes, specify the tags in a launch template but use caution. If the launch template specifies an instance tag with a key that is also specified for the Auto Scaling group, Amazon EC2 Auto Scaling overrides the value of that instance tag with the value specified by the Auto Scaling group. For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) TargetGroupArns added in v0.72.0

func (o AutoScalingGroupOutput) TargetGroupArns() pulumi.StringArrayOutput

The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see [Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (AutoScalingGroupOutput) TerminationPolicies added in v0.17.0

func (o AutoScalingGroupOutput) TerminationPolicies() pulumi.StringArrayOutput

A policy or a list of policies that are used to select the instance to terminate. These policies are executed in the order that you list them. For more information, see [Work with Amazon EC2 Auto Scaling termination policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-termination-policies.html) in the *Amazon EC2 Auto Scaling User Guide*.

Valid values: ``Default`` | ``AllocationStrategy`` | ``ClosestToNextInstanceHour`` | ``NewestInstance`` | ``OldestInstance`` | ``OldestLaunchConfiguration`` | ``OldestLaunchTemplate`` | ``arn:aws:lambda:region:account-id:function:my-function:my-alias``

func (AutoScalingGroupOutput) ToAutoScalingGroupOutput

func (o AutoScalingGroupOutput) ToAutoScalingGroupOutput() AutoScalingGroupOutput

func (AutoScalingGroupOutput) ToAutoScalingGroupOutputWithContext

func (o AutoScalingGroupOutput) ToAutoScalingGroupOutputWithContext(ctx context.Context) AutoScalingGroupOutput

func (AutoScalingGroupOutput) VpcZoneIdentifier added in v0.72.0

func (o AutoScalingGroupOutput) VpcZoneIdentifier() pulumi.StringArrayOutput

A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.

If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
 When you update ``VPCZoneIdentifier``, this retains the same Auto Scaling group and replaces old instances with new ones, according to the specified subnets. You can optionally specify how CloudFormation handles these updates by using an [UpdatePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html).
 Required to launch instances into a nondefault VPC. If you specify ``VPCZoneIdentifier`` with ``AvailabilityZones``, the subnets that you specify for this property must reside in those Availability Zones.

type AutoScalingGroupState

type AutoScalingGroupState struct {
}

func (AutoScalingGroupState) ElementType

func (AutoScalingGroupState) ElementType() reflect.Type

type AutoScalingGroupTagProperty

type AutoScalingGroupTagProperty struct {
	// The tag key.
	Key string `pulumi:"key"`
	// Set to “true“ if you want CloudFormation to copy the tag to EC2 instances that are launched as part of the Auto Scaling group. Set to “false“ if you want the tag attached only to the Auto Scaling group and not copied to any instances launched as part of the Auto Scaling group.
	PropagateAtLaunch bool `pulumi:"propagateAtLaunch"`
	// The tag value.
	Value string `pulumi:"value"`
}

A structure that specifies a tag for the “Tags“ property of [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.
CloudFormation adds the following tags to all Auto Scaling groups and associated instances:
 +  aws:cloudformation:stack-name
 +  aws:cloudformation:stack-id
 +  aws:cloudformation:logical-id

type AutoScalingGroupTagPropertyArgs

type AutoScalingGroupTagPropertyArgs struct {
	// The tag key.
	Key pulumi.StringInput `pulumi:"key"`
	// Set to “true“ if you want CloudFormation to copy the tag to EC2 instances that are launched as part of the Auto Scaling group. Set to “false“ if you want the tag attached only to the Auto Scaling group and not copied to any instances launched as part of the Auto Scaling group.
	PropagateAtLaunch pulumi.BoolInput `pulumi:"propagateAtLaunch"`
	// The tag value.
	Value pulumi.StringInput `pulumi:"value"`
}

A structure that specifies a tag for the “Tags“ property of [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.
CloudFormation adds the following tags to all Auto Scaling groups and associated instances:
 +  aws:cloudformation:stack-name
 +  aws:cloudformation:stack-id
 +  aws:cloudformation:logical-id

func (AutoScalingGroupTagPropertyArgs) ElementType

func (AutoScalingGroupTagPropertyArgs) ToAutoScalingGroupTagPropertyOutput

func (i AutoScalingGroupTagPropertyArgs) ToAutoScalingGroupTagPropertyOutput() AutoScalingGroupTagPropertyOutput

func (AutoScalingGroupTagPropertyArgs) ToAutoScalingGroupTagPropertyOutputWithContext

func (i AutoScalingGroupTagPropertyArgs) ToAutoScalingGroupTagPropertyOutputWithContext(ctx context.Context) AutoScalingGroupTagPropertyOutput

type AutoScalingGroupTagPropertyArray

type AutoScalingGroupTagPropertyArray []AutoScalingGroupTagPropertyInput

func (AutoScalingGroupTagPropertyArray) ElementType

func (AutoScalingGroupTagPropertyArray) ToAutoScalingGroupTagPropertyArrayOutput

func (i AutoScalingGroupTagPropertyArray) ToAutoScalingGroupTagPropertyArrayOutput() AutoScalingGroupTagPropertyArrayOutput

func (AutoScalingGroupTagPropertyArray) ToAutoScalingGroupTagPropertyArrayOutputWithContext

func (i AutoScalingGroupTagPropertyArray) ToAutoScalingGroupTagPropertyArrayOutputWithContext(ctx context.Context) AutoScalingGroupTagPropertyArrayOutput

type AutoScalingGroupTagPropertyArrayInput

type AutoScalingGroupTagPropertyArrayInput interface {
	pulumi.Input

	ToAutoScalingGroupTagPropertyArrayOutput() AutoScalingGroupTagPropertyArrayOutput
	ToAutoScalingGroupTagPropertyArrayOutputWithContext(context.Context) AutoScalingGroupTagPropertyArrayOutput
}

AutoScalingGroupTagPropertyArrayInput is an input type that accepts AutoScalingGroupTagPropertyArray and AutoScalingGroupTagPropertyArrayOutput values. You can construct a concrete instance of `AutoScalingGroupTagPropertyArrayInput` via:

AutoScalingGroupTagPropertyArray{ AutoScalingGroupTagPropertyArgs{...} }

type AutoScalingGroupTagPropertyArrayOutput

type AutoScalingGroupTagPropertyArrayOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupTagPropertyArrayOutput) ElementType

func (AutoScalingGroupTagPropertyArrayOutput) Index

func (AutoScalingGroupTagPropertyArrayOutput) ToAutoScalingGroupTagPropertyArrayOutput

func (o AutoScalingGroupTagPropertyArrayOutput) ToAutoScalingGroupTagPropertyArrayOutput() AutoScalingGroupTagPropertyArrayOutput

func (AutoScalingGroupTagPropertyArrayOutput) ToAutoScalingGroupTagPropertyArrayOutputWithContext

func (o AutoScalingGroupTagPropertyArrayOutput) ToAutoScalingGroupTagPropertyArrayOutputWithContext(ctx context.Context) AutoScalingGroupTagPropertyArrayOutput

type AutoScalingGroupTagPropertyInput

type AutoScalingGroupTagPropertyInput interface {
	pulumi.Input

	ToAutoScalingGroupTagPropertyOutput() AutoScalingGroupTagPropertyOutput
	ToAutoScalingGroupTagPropertyOutputWithContext(context.Context) AutoScalingGroupTagPropertyOutput
}

AutoScalingGroupTagPropertyInput is an input type that accepts AutoScalingGroupTagPropertyArgs and AutoScalingGroupTagPropertyOutput values. You can construct a concrete instance of `AutoScalingGroupTagPropertyInput` via:

AutoScalingGroupTagPropertyArgs{...}

type AutoScalingGroupTagPropertyOutput

type AutoScalingGroupTagPropertyOutput struct{ *pulumi.OutputState }

A structure that specifies a tag for the “Tags“ property of [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.

For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.
CloudFormation adds the following tags to all Auto Scaling groups and associated instances:
 +  aws:cloudformation:stack-name
 +  aws:cloudformation:stack-id
 +  aws:cloudformation:logical-id

func (AutoScalingGroupTagPropertyOutput) ElementType

func (AutoScalingGroupTagPropertyOutput) Key

The tag key.

func (AutoScalingGroupTagPropertyOutput) PropagateAtLaunch

func (o AutoScalingGroupTagPropertyOutput) PropagateAtLaunch() pulumi.BoolOutput

Set to “true“ if you want CloudFormation to copy the tag to EC2 instances that are launched as part of the Auto Scaling group. Set to “false“ if you want the tag attached only to the Auto Scaling group and not copied to any instances launched as part of the Auto Scaling group.

func (AutoScalingGroupTagPropertyOutput) ToAutoScalingGroupTagPropertyOutput

func (o AutoScalingGroupTagPropertyOutput) ToAutoScalingGroupTagPropertyOutput() AutoScalingGroupTagPropertyOutput

func (AutoScalingGroupTagPropertyOutput) ToAutoScalingGroupTagPropertyOutputWithContext

func (o AutoScalingGroupTagPropertyOutput) ToAutoScalingGroupTagPropertyOutputWithContext(ctx context.Context) AutoScalingGroupTagPropertyOutput

func (AutoScalingGroupTagPropertyOutput) Value

The tag value.

type AutoScalingGroupTotalLocalStorageGbRequest added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequest struct {
	// The storage maximum in GB.
	Max *float64 `pulumi:"max"`
	// The storage minimum in GB.
	Min *float64 `pulumi:"min"`
}

“TotalLocalStorageGBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total local storage size for an instance type, in GB.

type AutoScalingGroupTotalLocalStorageGbRequestArgs added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequestArgs struct {
	// The storage maximum in GB.
	Max pulumi.Float64PtrInput `pulumi:"max"`
	// The storage minimum in GB.
	Min pulumi.Float64PtrInput `pulumi:"min"`
}

“TotalLocalStorageGBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total local storage size for an instance type, in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestArgs) ElementType added in v0.72.0

func (AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestOutput added in v0.72.0

func (i AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestOutput() AutoScalingGroupTotalLocalStorageGbRequestOutput

func (AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestOutputWithContext added in v0.72.0

func (i AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestOutputWithContext(ctx context.Context) AutoScalingGroupTotalLocalStorageGbRequestOutput

func (AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput added in v0.72.0

func (i AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput() AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

func (AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext added in v0.72.0

func (i AutoScalingGroupTotalLocalStorageGbRequestArgs) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

type AutoScalingGroupTotalLocalStorageGbRequestInput added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupTotalLocalStorageGbRequestOutput() AutoScalingGroupTotalLocalStorageGbRequestOutput
	ToAutoScalingGroupTotalLocalStorageGbRequestOutputWithContext(context.Context) AutoScalingGroupTotalLocalStorageGbRequestOutput
}

AutoScalingGroupTotalLocalStorageGbRequestInput is an input type that accepts AutoScalingGroupTotalLocalStorageGbRequestArgs and AutoScalingGroupTotalLocalStorageGbRequestOutput values. You can construct a concrete instance of `AutoScalingGroupTotalLocalStorageGbRequestInput` via:

AutoScalingGroupTotalLocalStorageGbRequestArgs{...}

type AutoScalingGroupTotalLocalStorageGbRequestOutput added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequestOutput struct{ *pulumi.OutputState }

“TotalLocalStorageGBRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum total local storage size for an instance type, in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) ElementType added in v0.72.0

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) Max added in v0.72.0

The storage maximum in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) Min added in v0.72.0

The storage minimum in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestOutput added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestOutput() AutoScalingGroupTotalLocalStorageGbRequestOutput

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestOutputWithContext added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestOutputWithContext(ctx context.Context) AutoScalingGroupTotalLocalStorageGbRequestOutput

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput() AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

func (AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

type AutoScalingGroupTotalLocalStorageGbRequestPtrInput added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput() AutoScalingGroupTotalLocalStorageGbRequestPtrOutput
	ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext(context.Context) AutoScalingGroupTotalLocalStorageGbRequestPtrOutput
}

AutoScalingGroupTotalLocalStorageGbRequestPtrInput is an input type that accepts AutoScalingGroupTotalLocalStorageGbRequestArgs, AutoScalingGroupTotalLocalStorageGbRequestPtr and AutoScalingGroupTotalLocalStorageGbRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupTotalLocalStorageGbRequestPtrInput` via:

        AutoScalingGroupTotalLocalStorageGbRequestArgs{...}

or:

        nil

type AutoScalingGroupTotalLocalStorageGbRequestPtrOutput added in v0.72.0

type AutoScalingGroupTotalLocalStorageGbRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) Elem added in v0.72.0

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) ElementType added in v0.72.0

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) Max added in v0.72.0

The storage maximum in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) Min added in v0.72.0

The storage minimum in GB.

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutput() AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

func (AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext added in v0.72.0

func (o AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) ToAutoScalingGroupTotalLocalStorageGbRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupTotalLocalStorageGbRequestPtrOutput

type AutoScalingGroupVCpuCountRequest added in v0.3.0

type AutoScalingGroupVCpuCountRequest struct {
	// The maximum number of vCPUs.
	Max *int `pulumi:"max"`
	// The minimum number of vCPUs.
	Min *int `pulumi:"min"`
}

“VCpuCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.

type AutoScalingGroupVCpuCountRequestArgs added in v0.3.0

type AutoScalingGroupVCpuCountRequestArgs struct {
	// The maximum number of vCPUs.
	Max pulumi.IntPtrInput `pulumi:"max"`
	// The minimum number of vCPUs.
	Min pulumi.IntPtrInput `pulumi:"min"`
}

“VCpuCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.

func (AutoScalingGroupVCpuCountRequestArgs) ElementType added in v0.3.0

func (AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestOutput added in v0.3.0

func (i AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestOutput() AutoScalingGroupVCpuCountRequestOutput

func (AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestOutputWithContext added in v0.3.0

func (i AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupVCpuCountRequestOutput

func (AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestPtrOutput added in v0.3.0

func (i AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestPtrOutput() AutoScalingGroupVCpuCountRequestPtrOutput

func (AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext added in v0.3.0

func (i AutoScalingGroupVCpuCountRequestArgs) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupVCpuCountRequestPtrOutput

type AutoScalingGroupVCpuCountRequestInput added in v0.3.0

type AutoScalingGroupVCpuCountRequestInput interface {
	pulumi.Input

	ToAutoScalingGroupVCpuCountRequestOutput() AutoScalingGroupVCpuCountRequestOutput
	ToAutoScalingGroupVCpuCountRequestOutputWithContext(context.Context) AutoScalingGroupVCpuCountRequestOutput
}

AutoScalingGroupVCpuCountRequestInput is an input type that accepts AutoScalingGroupVCpuCountRequestArgs and AutoScalingGroupVCpuCountRequestOutput values. You can construct a concrete instance of `AutoScalingGroupVCpuCountRequestInput` via:

AutoScalingGroupVCpuCountRequestArgs{...}

type AutoScalingGroupVCpuCountRequestOutput added in v0.3.0

type AutoScalingGroupVCpuCountRequestOutput struct{ *pulumi.OutputState }

“VCpuCountRequest“ is a property of the “InstanceRequirements“ property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of vCPUs for an instance type.

func (AutoScalingGroupVCpuCountRequestOutput) ElementType added in v0.3.0

func (AutoScalingGroupVCpuCountRequestOutput) Max added in v0.3.0

The maximum number of vCPUs.

func (AutoScalingGroupVCpuCountRequestOutput) Min added in v0.3.0

The minimum number of vCPUs.

func (AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestOutput added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestOutput() AutoScalingGroupVCpuCountRequestOutput

func (AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestOutputWithContext added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestOutputWithContext(ctx context.Context) AutoScalingGroupVCpuCountRequestOutput

func (AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestPtrOutput() AutoScalingGroupVCpuCountRequestPtrOutput

func (AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestOutput) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupVCpuCountRequestPtrOutput

type AutoScalingGroupVCpuCountRequestPtrInput added in v0.3.0

type AutoScalingGroupVCpuCountRequestPtrInput interface {
	pulumi.Input

	ToAutoScalingGroupVCpuCountRequestPtrOutput() AutoScalingGroupVCpuCountRequestPtrOutput
	ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext(context.Context) AutoScalingGroupVCpuCountRequestPtrOutput
}

AutoScalingGroupVCpuCountRequestPtrInput is an input type that accepts AutoScalingGroupVCpuCountRequestArgs, AutoScalingGroupVCpuCountRequestPtr and AutoScalingGroupVCpuCountRequestPtrOutput values. You can construct a concrete instance of `AutoScalingGroupVCpuCountRequestPtrInput` via:

        AutoScalingGroupVCpuCountRequestArgs{...}

or:

        nil

type AutoScalingGroupVCpuCountRequestPtrOutput added in v0.3.0

type AutoScalingGroupVCpuCountRequestPtrOutput struct{ *pulumi.OutputState }

func (AutoScalingGroupVCpuCountRequestPtrOutput) Elem added in v0.3.0

func (AutoScalingGroupVCpuCountRequestPtrOutput) ElementType added in v0.3.0

func (AutoScalingGroupVCpuCountRequestPtrOutput) Max added in v0.3.0

The maximum number of vCPUs.

func (AutoScalingGroupVCpuCountRequestPtrOutput) Min added in v0.3.0

The minimum number of vCPUs.

func (AutoScalingGroupVCpuCountRequestPtrOutput) ToAutoScalingGroupVCpuCountRequestPtrOutput added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestPtrOutput) ToAutoScalingGroupVCpuCountRequestPtrOutput() AutoScalingGroupVCpuCountRequestPtrOutput

func (AutoScalingGroupVCpuCountRequestPtrOutput) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext added in v0.3.0

func (o AutoScalingGroupVCpuCountRequestPtrOutput) ToAutoScalingGroupVCpuCountRequestPtrOutputWithContext(ctx context.Context) AutoScalingGroupVCpuCountRequestPtrOutput

type LaunchConfiguration

type LaunchConfiguration struct {
	pulumi.CustomResourceState

	// For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
	AssociatePublicIpAddress pulumi.BoolPtrOutput `pulumi:"associatePublicIpAddress"`
	// Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
	BlockDeviceMappings LaunchConfigurationBlockDeviceMappingArrayOutput `pulumi:"blockDeviceMappings"`
	// The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
	ClassicLinkVpcId pulumi.StringPtrOutput `pulumi:"classicLinkVpcId"`
	// The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
	ClassicLinkVpcSecurityGroups pulumi.StringArrayOutput `pulumi:"classicLinkVpcSecurityGroups"`
	// Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
	EbsOptimized pulumi.BoolPtrOutput `pulumi:"ebsOptimized"`
	// Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
	IamInstanceProfile pulumi.StringPtrOutput `pulumi:"iamInstanceProfile"`
	// Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
	ImageId pulumi.StringOutput `pulumi:"imageId"`
	// The ID of the Amazon EC2 instance you want to use to create the launch configuration.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
	InstanceMonitoring pulumi.BoolPtrOutput `pulumi:"instanceMonitoring"`
	// Specifies the instance type of the EC2 instance.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Provides the ID of the kernel associated with the EC2 AMI.
	KernelId pulumi.StringPtrOutput `pulumi:"kernelId"`
	// Provides the name of the EC2 key pair.
	KeyName pulumi.StringPtrOutput `pulumi:"keyName"`
	// The name of the launch configuration. This name must be unique per Region per account.
	LaunchConfigurationName pulumi.StringPtrOutput `pulumi:"launchConfigurationName"`
	// The metadata options for the instances.
	MetadataOptions LaunchConfigurationMetadataOptionsPtrOutput `pulumi:"metadataOptions"`
	// The tenancy of the instance, either default or dedicated.
	PlacementTenancy pulumi.StringPtrOutput `pulumi:"placementTenancy"`
	// The ID of the RAM disk to select.
	RamDiskId pulumi.StringPtrOutput `pulumi:"ramDiskId"`
	// A list that contains the security groups to assign to the instances in the Auto Scaling group.
	SecurityGroups pulumi.StringArrayOutput `pulumi:"securityGroups"`
	// The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
	SpotPrice pulumi.StringPtrOutput `pulumi:"spotPrice"`
	// The Base64-encoded user data to make available to the launched EC2 instances.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
}

The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances.

func GetLaunchConfiguration

func GetLaunchConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LaunchConfigurationState, opts ...pulumi.ResourceOption) (*LaunchConfiguration, error)

GetLaunchConfiguration gets an existing LaunchConfiguration 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 NewLaunchConfiguration

func NewLaunchConfiguration(ctx *pulumi.Context,
	name string, args *LaunchConfigurationArgs, opts ...pulumi.ResourceOption) (*LaunchConfiguration, error)

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

func (*LaunchConfiguration) ElementType

func (*LaunchConfiguration) ElementType() reflect.Type

func (*LaunchConfiguration) ToLaunchConfigurationOutput

func (i *LaunchConfiguration) ToLaunchConfigurationOutput() LaunchConfigurationOutput

func (*LaunchConfiguration) ToLaunchConfigurationOutputWithContext

func (i *LaunchConfiguration) ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput

type LaunchConfigurationArgs

type LaunchConfigurationArgs struct {
	// For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.
	AssociatePublicIpAddress pulumi.BoolPtrInput
	// Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
	BlockDeviceMappings LaunchConfigurationBlockDeviceMappingArrayInput
	// The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.
	ClassicLinkVpcId pulumi.StringPtrInput
	// The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.
	ClassicLinkVpcSecurityGroups pulumi.StringArrayInput
	// Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).
	EbsOptimized pulumi.BoolPtrInput
	// Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.
	IamInstanceProfile pulumi.StringPtrInput
	// Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.
	ImageId pulumi.StringInput
	// The ID of the Amazon EC2 instance you want to use to create the launch configuration.
	InstanceId pulumi.StringPtrInput
	// Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.
	InstanceMonitoring pulumi.BoolPtrInput
	// Specifies the instance type of the EC2 instance.
	InstanceType pulumi.StringInput
	// Provides the ID of the kernel associated with the EC2 AMI.
	KernelId pulumi.StringPtrInput
	// Provides the name of the EC2 key pair.
	KeyName pulumi.StringPtrInput
	// The name of the launch configuration. This name must be unique per Region per account.
	LaunchConfigurationName pulumi.StringPtrInput
	// The metadata options for the instances.
	MetadataOptions LaunchConfigurationMetadataOptionsPtrInput
	// The tenancy of the instance, either default or dedicated.
	PlacementTenancy pulumi.StringPtrInput
	// The ID of the RAM disk to select.
	RamDiskId pulumi.StringPtrInput
	// A list that contains the security groups to assign to the instances in the Auto Scaling group.
	SecurityGroups pulumi.StringArrayInput
	// The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.
	SpotPrice pulumi.StringPtrInput
	// The Base64-encoded user data to make available to the launched EC2 instances.
	UserData pulumi.StringPtrInput
}

The set of arguments for constructing a LaunchConfiguration resource.

func (LaunchConfigurationArgs) ElementType

func (LaunchConfigurationArgs) ElementType() reflect.Type

type LaunchConfigurationBlockDevice

type LaunchConfigurationBlockDevice struct {
	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool `pulumi:"deleteOnTermination"`
	// Specifies whether the volume should be encrypted.
	Encrypted *bool `pulumi:"encrypted"`
	// The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
	Iops *int `pulumi:"iops"`
	// The snapshot ID of the volume to use.
	SnapshotId *string `pulumi:"snapshotId"`
	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput *int `pulumi:"throughput"`
	// The volume size, in GiBs.
	VolumeSize *int `pulumi:"volumeSize"`
	// The volume type.
	VolumeType *string `pulumi:"volumeType"`
}

BlockDevice is a subproperty of BlockDeviceMapping that describes an Amazon EBS volume.

type LaunchConfigurationBlockDeviceArgs

type LaunchConfigurationBlockDeviceArgs struct {
	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination pulumi.BoolPtrInput `pulumi:"deleteOnTermination"`
	// Specifies whether the volume should be encrypted.
	Encrypted pulumi.BoolPtrInput `pulumi:"encrypted"`
	// The number of input/output (I/O) operations per second (IOPS) to provision for the volume.
	Iops pulumi.IntPtrInput `pulumi:"iops"`
	// The snapshot ID of the volume to use.
	SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"`
	// The throughput (MiBps) to provision for a gp3 volume.
	Throughput pulumi.IntPtrInput `pulumi:"throughput"`
	// The volume size, in GiBs.
	VolumeSize pulumi.IntPtrInput `pulumi:"volumeSize"`
	// The volume type.
	VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}

BlockDevice is a subproperty of BlockDeviceMapping that describes an Amazon EBS volume.

func (LaunchConfigurationBlockDeviceArgs) ElementType

func (LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDeviceOutput

func (i LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDeviceOutput() LaunchConfigurationBlockDeviceOutput

func (LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDeviceOutputWithContext

func (i LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceOutput

func (LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDevicePtrOutput

func (i LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDevicePtrOutput() LaunchConfigurationBlockDevicePtrOutput

func (LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDevicePtrOutputWithContext

func (i LaunchConfigurationBlockDeviceArgs) ToLaunchConfigurationBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationBlockDevicePtrOutput

type LaunchConfigurationBlockDeviceInput

type LaunchConfigurationBlockDeviceInput interface {
	pulumi.Input

	ToLaunchConfigurationBlockDeviceOutput() LaunchConfigurationBlockDeviceOutput
	ToLaunchConfigurationBlockDeviceOutputWithContext(context.Context) LaunchConfigurationBlockDeviceOutput
}

LaunchConfigurationBlockDeviceInput is an input type that accepts LaunchConfigurationBlockDeviceArgs and LaunchConfigurationBlockDeviceOutput values. You can construct a concrete instance of `LaunchConfigurationBlockDeviceInput` via:

LaunchConfigurationBlockDeviceArgs{...}

type LaunchConfigurationBlockDeviceMapping

type LaunchConfigurationBlockDeviceMapping struct {
	// The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
	DeviceName string `pulumi:"deviceName"`
	// Parameters used to automatically set up EBS volumes when an instance is launched.
	Ebs *LaunchConfigurationBlockDevice `pulumi:"ebs"`
	// Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
	NoDevice *bool `pulumi:"noDevice"`
	// The name of the virtual device.
	VirtualName *string `pulumi:"virtualName"`
}

BlockDeviceMapping is a property of AWS::AutoScaling::LaunchConfiguration that describes a block device mapping for an Auto Scaling group.

type LaunchConfigurationBlockDeviceMappingArgs

type LaunchConfigurationBlockDeviceMappingArgs struct {
	// The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).
	DeviceName pulumi.StringInput `pulumi:"deviceName"`
	// Parameters used to automatically set up EBS volumes when an instance is launched.
	Ebs LaunchConfigurationBlockDevicePtrInput `pulumi:"ebs"`
	// Setting this value to true suppresses the specified device included in the block device mapping of the AMI.
	NoDevice pulumi.BoolPtrInput `pulumi:"noDevice"`
	// The name of the virtual device.
	VirtualName pulumi.StringPtrInput `pulumi:"virtualName"`
}

BlockDeviceMapping is a property of AWS::AutoScaling::LaunchConfiguration that describes a block device mapping for an Auto Scaling group.

func (LaunchConfigurationBlockDeviceMappingArgs) ElementType

func (LaunchConfigurationBlockDeviceMappingArgs) ToLaunchConfigurationBlockDeviceMappingOutput

func (i LaunchConfigurationBlockDeviceMappingArgs) ToLaunchConfigurationBlockDeviceMappingOutput() LaunchConfigurationBlockDeviceMappingOutput

func (LaunchConfigurationBlockDeviceMappingArgs) ToLaunchConfigurationBlockDeviceMappingOutputWithContext

func (i LaunchConfigurationBlockDeviceMappingArgs) ToLaunchConfigurationBlockDeviceMappingOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceMappingOutput

type LaunchConfigurationBlockDeviceMappingArray

type LaunchConfigurationBlockDeviceMappingArray []LaunchConfigurationBlockDeviceMappingInput

func (LaunchConfigurationBlockDeviceMappingArray) ElementType

func (LaunchConfigurationBlockDeviceMappingArray) ToLaunchConfigurationBlockDeviceMappingArrayOutput

func (i LaunchConfigurationBlockDeviceMappingArray) ToLaunchConfigurationBlockDeviceMappingArrayOutput() LaunchConfigurationBlockDeviceMappingArrayOutput

func (LaunchConfigurationBlockDeviceMappingArray) ToLaunchConfigurationBlockDeviceMappingArrayOutputWithContext

func (i LaunchConfigurationBlockDeviceMappingArray) ToLaunchConfigurationBlockDeviceMappingArrayOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceMappingArrayOutput

type LaunchConfigurationBlockDeviceMappingArrayInput

type LaunchConfigurationBlockDeviceMappingArrayInput interface {
	pulumi.Input

	ToLaunchConfigurationBlockDeviceMappingArrayOutput() LaunchConfigurationBlockDeviceMappingArrayOutput
	ToLaunchConfigurationBlockDeviceMappingArrayOutputWithContext(context.Context) LaunchConfigurationBlockDeviceMappingArrayOutput
}

LaunchConfigurationBlockDeviceMappingArrayInput is an input type that accepts LaunchConfigurationBlockDeviceMappingArray and LaunchConfigurationBlockDeviceMappingArrayOutput values. You can construct a concrete instance of `LaunchConfigurationBlockDeviceMappingArrayInput` via:

LaunchConfigurationBlockDeviceMappingArray{ LaunchConfigurationBlockDeviceMappingArgs{...} }

type LaunchConfigurationBlockDeviceMappingArrayOutput

type LaunchConfigurationBlockDeviceMappingArrayOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationBlockDeviceMappingArrayOutput) ElementType

func (LaunchConfigurationBlockDeviceMappingArrayOutput) Index

func (LaunchConfigurationBlockDeviceMappingArrayOutput) ToLaunchConfigurationBlockDeviceMappingArrayOutput

func (o LaunchConfigurationBlockDeviceMappingArrayOutput) ToLaunchConfigurationBlockDeviceMappingArrayOutput() LaunchConfigurationBlockDeviceMappingArrayOutput

func (LaunchConfigurationBlockDeviceMappingArrayOutput) ToLaunchConfigurationBlockDeviceMappingArrayOutputWithContext

func (o LaunchConfigurationBlockDeviceMappingArrayOutput) ToLaunchConfigurationBlockDeviceMappingArrayOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceMappingArrayOutput

type LaunchConfigurationBlockDeviceMappingInput

type LaunchConfigurationBlockDeviceMappingInput interface {
	pulumi.Input

	ToLaunchConfigurationBlockDeviceMappingOutput() LaunchConfigurationBlockDeviceMappingOutput
	ToLaunchConfigurationBlockDeviceMappingOutputWithContext(context.Context) LaunchConfigurationBlockDeviceMappingOutput
}

LaunchConfigurationBlockDeviceMappingInput is an input type that accepts LaunchConfigurationBlockDeviceMappingArgs and LaunchConfigurationBlockDeviceMappingOutput values. You can construct a concrete instance of `LaunchConfigurationBlockDeviceMappingInput` via:

LaunchConfigurationBlockDeviceMappingArgs{...}

type LaunchConfigurationBlockDeviceMappingOutput

type LaunchConfigurationBlockDeviceMappingOutput struct{ *pulumi.OutputState }

BlockDeviceMapping is a property of AWS::AutoScaling::LaunchConfiguration that describes a block device mapping for an Auto Scaling group.

func (LaunchConfigurationBlockDeviceMappingOutput) DeviceName

The device name exposed to the EC2 instance (for example, /dev/sdh or xvdh).

func (LaunchConfigurationBlockDeviceMappingOutput) Ebs

Parameters used to automatically set up EBS volumes when an instance is launched.

func (LaunchConfigurationBlockDeviceMappingOutput) ElementType

func (LaunchConfigurationBlockDeviceMappingOutput) NoDevice

Setting this value to true suppresses the specified device included in the block device mapping of the AMI.

func (LaunchConfigurationBlockDeviceMappingOutput) ToLaunchConfigurationBlockDeviceMappingOutput

func (o LaunchConfigurationBlockDeviceMappingOutput) ToLaunchConfigurationBlockDeviceMappingOutput() LaunchConfigurationBlockDeviceMappingOutput

func (LaunchConfigurationBlockDeviceMappingOutput) ToLaunchConfigurationBlockDeviceMappingOutputWithContext

func (o LaunchConfigurationBlockDeviceMappingOutput) ToLaunchConfigurationBlockDeviceMappingOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceMappingOutput

func (LaunchConfigurationBlockDeviceMappingOutput) VirtualName

The name of the virtual device.

type LaunchConfigurationBlockDeviceOutput

type LaunchConfigurationBlockDeviceOutput struct{ *pulumi.OutputState }

BlockDevice is a subproperty of BlockDeviceMapping that describes an Amazon EBS volume.

func (LaunchConfigurationBlockDeviceOutput) DeleteOnTermination

Indicates whether the volume is deleted on instance termination.

func (LaunchConfigurationBlockDeviceOutput) ElementType

func (LaunchConfigurationBlockDeviceOutput) Encrypted

Specifies whether the volume should be encrypted.

func (LaunchConfigurationBlockDeviceOutput) Iops

The number of input/output (I/O) operations per second (IOPS) to provision for the volume.

func (LaunchConfigurationBlockDeviceOutput) SnapshotId

The snapshot ID of the volume to use.

func (LaunchConfigurationBlockDeviceOutput) Throughput

The throughput (MiBps) to provision for a gp3 volume.

func (LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDeviceOutput

func (o LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDeviceOutput() LaunchConfigurationBlockDeviceOutput

func (LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDeviceOutputWithContext

func (o LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDeviceOutputWithContext(ctx context.Context) LaunchConfigurationBlockDeviceOutput

func (LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDevicePtrOutput

func (o LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDevicePtrOutput() LaunchConfigurationBlockDevicePtrOutput

func (LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDevicePtrOutputWithContext

func (o LaunchConfigurationBlockDeviceOutput) ToLaunchConfigurationBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationBlockDevicePtrOutput

func (LaunchConfigurationBlockDeviceOutput) VolumeSize

The volume size, in GiBs.

func (LaunchConfigurationBlockDeviceOutput) VolumeType

The volume type.

type LaunchConfigurationBlockDevicePtrInput

type LaunchConfigurationBlockDevicePtrInput interface {
	pulumi.Input

	ToLaunchConfigurationBlockDevicePtrOutput() LaunchConfigurationBlockDevicePtrOutput
	ToLaunchConfigurationBlockDevicePtrOutputWithContext(context.Context) LaunchConfigurationBlockDevicePtrOutput
}

LaunchConfigurationBlockDevicePtrInput is an input type that accepts LaunchConfigurationBlockDeviceArgs, LaunchConfigurationBlockDevicePtr and LaunchConfigurationBlockDevicePtrOutput values. You can construct a concrete instance of `LaunchConfigurationBlockDevicePtrInput` via:

        LaunchConfigurationBlockDeviceArgs{...}

or:

        nil

type LaunchConfigurationBlockDevicePtrOutput

type LaunchConfigurationBlockDevicePtrOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationBlockDevicePtrOutput) DeleteOnTermination

Indicates whether the volume is deleted on instance termination.

func (LaunchConfigurationBlockDevicePtrOutput) Elem

func (LaunchConfigurationBlockDevicePtrOutput) ElementType

func (LaunchConfigurationBlockDevicePtrOutput) Encrypted

Specifies whether the volume should be encrypted.

func (LaunchConfigurationBlockDevicePtrOutput) Iops

The number of input/output (I/O) operations per second (IOPS) to provision for the volume.

func (LaunchConfigurationBlockDevicePtrOutput) SnapshotId

The snapshot ID of the volume to use.

func (LaunchConfigurationBlockDevicePtrOutput) Throughput

The throughput (MiBps) to provision for a gp3 volume.

func (LaunchConfigurationBlockDevicePtrOutput) ToLaunchConfigurationBlockDevicePtrOutput

func (o LaunchConfigurationBlockDevicePtrOutput) ToLaunchConfigurationBlockDevicePtrOutput() LaunchConfigurationBlockDevicePtrOutput

func (LaunchConfigurationBlockDevicePtrOutput) ToLaunchConfigurationBlockDevicePtrOutputWithContext

func (o LaunchConfigurationBlockDevicePtrOutput) ToLaunchConfigurationBlockDevicePtrOutputWithContext(ctx context.Context) LaunchConfigurationBlockDevicePtrOutput

func (LaunchConfigurationBlockDevicePtrOutput) VolumeSize

The volume size, in GiBs.

func (LaunchConfigurationBlockDevicePtrOutput) VolumeType

The volume type.

type LaunchConfigurationInput

type LaunchConfigurationInput interface {
	pulumi.Input

	ToLaunchConfigurationOutput() LaunchConfigurationOutput
	ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput
}

type LaunchConfigurationMetadataOptions

type LaunchConfigurationMetadataOptions struct {
	// This parameter enables or disables the HTTP metadata endpoint on your instances.
	HttpEndpoint *string `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit *int `pulumi:"httpPutResponseHopLimit"`
	// The state of token usage for your instance metadata requests.
	HttpTokens *string `pulumi:"httpTokens"`
}

MetadataOptions is a property of AWS::AutoScaling::LaunchConfiguration that describes metadata options for the instances.

type LaunchConfigurationMetadataOptionsArgs

type LaunchConfigurationMetadataOptionsArgs struct {
	// This parameter enables or disables the HTTP metadata endpoint on your instances.
	HttpEndpoint pulumi.StringPtrInput `pulumi:"httpEndpoint"`
	// The desired HTTP PUT response hop limit for instance metadata requests.
	HttpPutResponseHopLimit pulumi.IntPtrInput `pulumi:"httpPutResponseHopLimit"`
	// The state of token usage for your instance metadata requests.
	HttpTokens pulumi.StringPtrInput `pulumi:"httpTokens"`
}

MetadataOptions is a property of AWS::AutoScaling::LaunchConfiguration that describes metadata options for the instances.

func (LaunchConfigurationMetadataOptionsArgs) ElementType

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutput

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutputWithContext

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutput

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (i LaunchConfigurationMetadataOptionsArgs) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsInput

type LaunchConfigurationMetadataOptionsInput interface {
	pulumi.Input

	ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput
	ToLaunchConfigurationMetadataOptionsOutputWithContext(context.Context) LaunchConfigurationMetadataOptionsOutput
}

LaunchConfigurationMetadataOptionsInput is an input type that accepts LaunchConfigurationMetadataOptionsArgs and LaunchConfigurationMetadataOptionsOutput values. You can construct a concrete instance of `LaunchConfigurationMetadataOptionsInput` via:

LaunchConfigurationMetadataOptionsArgs{...}

type LaunchConfigurationMetadataOptionsOutput

type LaunchConfigurationMetadataOptionsOutput struct{ *pulumi.OutputState }

MetadataOptions is a property of AWS::AutoScaling::LaunchConfiguration that describes metadata options for the instances.

func (LaunchConfigurationMetadataOptionsOutput) ElementType

func (LaunchConfigurationMetadataOptionsOutput) HttpEndpoint

This parameter enables or disables the HTTP metadata endpoint on your instances.

func (LaunchConfigurationMetadataOptionsOutput) HttpPutResponseHopLimit

func (o LaunchConfigurationMetadataOptionsOutput) HttpPutResponseHopLimit() pulumi.IntPtrOutput

The desired HTTP PUT response hop limit for instance metadata requests.

func (LaunchConfigurationMetadataOptionsOutput) HttpTokens

The state of token usage for your instance metadata requests.

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutput

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutput() LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutputWithContext

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutput

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (o LaunchConfigurationMetadataOptionsOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsPtrInput

type LaunchConfigurationMetadataOptionsPtrInput interface {
	pulumi.Input

	ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput
	ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(context.Context) LaunchConfigurationMetadataOptionsPtrOutput
}

LaunchConfigurationMetadataOptionsPtrInput is an input type that accepts LaunchConfigurationMetadataOptionsArgs, LaunchConfigurationMetadataOptionsPtr and LaunchConfigurationMetadataOptionsPtrOutput values. You can construct a concrete instance of `LaunchConfigurationMetadataOptionsPtrInput` via:

        LaunchConfigurationMetadataOptionsArgs{...}

or:

        nil

type LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationMetadataOptionsPtrOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationMetadataOptionsPtrOutput) Elem

func (LaunchConfigurationMetadataOptionsPtrOutput) ElementType

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpEndpoint

This parameter enables or disables the HTTP metadata endpoint on your instances.

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpPutResponseHopLimit

The desired HTTP PUT response hop limit for instance metadata requests.

func (LaunchConfigurationMetadataOptionsPtrOutput) HttpTokens

The state of token usage for your instance metadata requests.

func (LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutput

func (o LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutput() LaunchConfigurationMetadataOptionsPtrOutput

func (LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext

func (o LaunchConfigurationMetadataOptionsPtrOutput) ToLaunchConfigurationMetadataOptionsPtrOutputWithContext(ctx context.Context) LaunchConfigurationMetadataOptionsPtrOutput

type LaunchConfigurationOutput

type LaunchConfigurationOutput struct{ *pulumi.OutputState }

func (LaunchConfigurationOutput) AssociatePublicIpAddress added in v0.17.0

func (o LaunchConfigurationOutput) AssociatePublicIpAddress() pulumi.BoolPtrOutput

For Auto Scaling groups that are running in a virtual private cloud (VPC), specifies whether to assign a public IP address to the group's instances.

func (LaunchConfigurationOutput) BlockDeviceMappings added in v0.17.0

Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.

func (LaunchConfigurationOutput) ClassicLinkVpcId added in v0.72.0

func (o LaunchConfigurationOutput) ClassicLinkVpcId() pulumi.StringPtrOutput

The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to.

func (LaunchConfigurationOutput) ClassicLinkVpcSecurityGroups added in v0.72.0

func (o LaunchConfigurationOutput) ClassicLinkVpcSecurityGroups() pulumi.StringArrayOutput

The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property.

func (LaunchConfigurationOutput) EbsOptimized added in v0.17.0

Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false).

func (LaunchConfigurationOutput) ElementType

func (LaunchConfigurationOutput) ElementType() reflect.Type

func (LaunchConfigurationOutput) IamInstanceProfile added in v0.17.0

func (o LaunchConfigurationOutput) IamInstanceProfile() pulumi.StringPtrOutput

Provides the name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instance. The instance profile contains the IAM role.

func (LaunchConfigurationOutput) ImageId added in v0.17.0

Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration.

func (LaunchConfigurationOutput) InstanceId added in v0.17.0

The ID of the Amazon EC2 instance you want to use to create the launch configuration.

func (LaunchConfigurationOutput) InstanceMonitoring added in v0.17.0

func (o LaunchConfigurationOutput) InstanceMonitoring() pulumi.BoolPtrOutput

Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring.

func (LaunchConfigurationOutput) InstanceType added in v0.17.0

Specifies the instance type of the EC2 instance.

func (LaunchConfigurationOutput) KernelId added in v0.17.0

Provides the ID of the kernel associated with the EC2 AMI.

func (LaunchConfigurationOutput) KeyName added in v0.17.0

Provides the name of the EC2 key pair.

func (LaunchConfigurationOutput) LaunchConfigurationName added in v0.17.0

func (o LaunchConfigurationOutput) LaunchConfigurationName() pulumi.StringPtrOutput

The name of the launch configuration. This name must be unique per Region per account.

func (LaunchConfigurationOutput) MetadataOptions added in v0.17.0

The metadata options for the instances.

func (LaunchConfigurationOutput) PlacementTenancy added in v0.17.0

func (o LaunchConfigurationOutput) PlacementTenancy() pulumi.StringPtrOutput

The tenancy of the instance, either default or dedicated.

func (LaunchConfigurationOutput) RamDiskId added in v0.17.0

The ID of the RAM disk to select.

func (LaunchConfigurationOutput) SecurityGroups added in v0.17.0

A list that contains the security groups to assign to the instances in the Auto Scaling group.

func (LaunchConfigurationOutput) SpotPrice added in v0.17.0

The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request.

func (LaunchConfigurationOutput) ToLaunchConfigurationOutput

func (o LaunchConfigurationOutput) ToLaunchConfigurationOutput() LaunchConfigurationOutput

func (LaunchConfigurationOutput) ToLaunchConfigurationOutputWithContext

func (o LaunchConfigurationOutput) ToLaunchConfigurationOutputWithContext(ctx context.Context) LaunchConfigurationOutput

func (LaunchConfigurationOutput) UserData added in v0.17.0

The Base64-encoded user data to make available to the launched EC2 instances.

type LaunchConfigurationState

type LaunchConfigurationState struct {
}

func (LaunchConfigurationState) ElementType

func (LaunchConfigurationState) ElementType() reflect.Type

type LifecycleHook

type LifecycleHook struct {
	pulumi.CustomResourceState

	// The name of the Auto Scaling group for the lifecycle hook.
	AutoScalingGroupName pulumi.StringOutput `pulumi:"autoScalingGroupName"`
	// The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON (default).
	DefaultResult pulumi.StringPtrOutput `pulumi:"defaultResult"`
	// The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from 30 to 7200 seconds. The default value is 3600 seconds (1 hour). If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the action that you specified in the DefaultResult property.
	HeartbeatTimeout pulumi.IntPtrOutput `pulumi:"heartbeatTimeout"`
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringPtrOutput `pulumi:"lifecycleHookName"`
	// The instance state to which you want to attach the lifecycle hook.
	LifecycleTransition pulumi.StringOutput `pulumi:"lifecycleTransition"`
	// Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrOutput `pulumi:"notificationMetadata"`
	// The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS topic. The notification message includes the following information: lifecycle action token, user account ID, Auto Scaling group name, lifecycle hook name, instance ID, lifecycle transition, and notification metadata.
	NotificationTargetArn pulumi.StringPtrOutput `pulumi:"notificationTargetArn"`
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target, for example, an Amazon SNS topic or an Amazon SQS queue.
	RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"`
}

Resource Type definition for AWS::AutoScaling::LifecycleHook

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.

func (*LifecycleHook) ElementType

func (*LifecycleHook) ElementType() reflect.Type

func (*LifecycleHook) ToLifecycleHookOutput

func (i *LifecycleHook) ToLifecycleHookOutput() LifecycleHookOutput

func (*LifecycleHook) ToLifecycleHookOutputWithContext

func (i *LifecycleHook) ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput

type LifecycleHookArgs

type LifecycleHookArgs struct {
	// The name of the Auto Scaling group for the lifecycle hook.
	AutoScalingGroupName pulumi.StringInput
	// The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON (default).
	DefaultResult pulumi.StringPtrInput
	// The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from 30 to 7200 seconds. The default value is 3600 seconds (1 hour). If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the action that you specified in the DefaultResult property.
	HeartbeatTimeout pulumi.IntPtrInput
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringPtrInput
	// The instance state to which you want to attach the lifecycle hook.
	LifecycleTransition pulumi.StringInput
	// Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.
	NotificationMetadata pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS topic. The notification message includes the following information: lifecycle action token, user account ID, Auto Scaling group name, lifecycle hook name, instance ID, lifecycle transition, and notification metadata.
	NotificationTargetArn pulumi.StringPtrInput
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target, for example, an Amazon SNS topic or an Amazon SQS queue.
	RoleArn pulumi.StringPtrInput
}

The set of arguments for constructing a LifecycleHook resource.

func (LifecycleHookArgs) ElementType

func (LifecycleHookArgs) ElementType() reflect.Type

type LifecycleHookInput

type LifecycleHookInput interface {
	pulumi.Input

	ToLifecycleHookOutput() LifecycleHookOutput
	ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput
}

type LifecycleHookOutput

type LifecycleHookOutput struct{ *pulumi.OutputState }

func (LifecycleHookOutput) AutoScalingGroupName added in v0.17.0

func (o LifecycleHookOutput) AutoScalingGroupName() pulumi.StringOutput

The name of the Auto Scaling group for the lifecycle hook.

func (LifecycleHookOutput) DefaultResult added in v0.17.0

func (o LifecycleHookOutput) DefaultResult() pulumi.StringPtrOutput

The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON (default).

func (LifecycleHookOutput) ElementType

func (LifecycleHookOutput) ElementType() reflect.Type

func (LifecycleHookOutput) HeartbeatTimeout added in v0.17.0

func (o LifecycleHookOutput) HeartbeatTimeout() pulumi.IntPtrOutput

The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from 30 to 7200 seconds. The default value is 3600 seconds (1 hour). If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the action that you specified in the DefaultResult property.

func (LifecycleHookOutput) LifecycleHookName added in v0.17.0

func (o LifecycleHookOutput) LifecycleHookName() pulumi.StringPtrOutput

The name of the lifecycle hook.

func (LifecycleHookOutput) LifecycleTransition added in v0.17.0

func (o LifecycleHookOutput) LifecycleTransition() pulumi.StringOutput

The instance state to which you want to attach the lifecycle hook.

func (LifecycleHookOutput) NotificationMetadata added in v0.17.0

func (o LifecycleHookOutput) NotificationMetadata() pulumi.StringPtrOutput

Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.

func (LifecycleHookOutput) NotificationTargetArn added in v0.72.0

func (o LifecycleHookOutput) NotificationTargetArn() pulumi.StringPtrOutput

The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS topic. The notification message includes the following information: lifecycle action token, user account ID, Auto Scaling group name, lifecycle hook name, instance ID, lifecycle transition, and notification metadata.

func (LifecycleHookOutput) RoleArn added in v0.72.0

The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target, for example, an Amazon SNS topic or an Amazon SQS queue.

func (LifecycleHookOutput) ToLifecycleHookOutput

func (o LifecycleHookOutput) ToLifecycleHookOutput() LifecycleHookOutput

func (LifecycleHookOutput) ToLifecycleHookOutputWithContext

func (o LifecycleHookOutput) ToLifecycleHookOutputWithContext(ctx context.Context) LifecycleHookOutput

type LifecycleHookState

type LifecycleHookState struct {
}

func (LifecycleHookState) ElementType

func (LifecycleHookState) ElementType() reflect.Type

type LookupAutoScalingGroupArgs added in v0.12.0

type LookupAutoScalingGroupArgs struct {
	// The name of the Auto Scaling group. This name must be unique per Region per account.
	//  The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
	//   You cannot use a colon (:) in the name.
	AutoScalingGroupName string `pulumi:"autoScalingGroupName"`
}

type LookupAutoScalingGroupOutputArgs added in v0.12.0

type LookupAutoScalingGroupOutputArgs struct {
	// The name of the Auto Scaling group. This name must be unique per Region per account.
	//  The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.
	//   You cannot use a colon (:) in the name.
	AutoScalingGroupName pulumi.StringInput `pulumi:"autoScalingGroupName"`
}

func (LookupAutoScalingGroupOutputArgs) ElementType added in v0.12.0

type LookupAutoScalingGroupResult added in v0.12.0

type LookupAutoScalingGroupResult struct {
	// A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the “VPCZoneIdentifier“ property, or for attaching a network interface when an existing network interface ID is specified in a launch template.
	AvailabilityZones []string `pulumi:"availabilityZones"`
	// Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*.
	CapacityRebalance *bool `pulumi:"capacityRebalance"`
	// Reserved.
	Context *string `pulumi:"context"`
	// *Only needed if you use simple scaling policies.*
	//  The amount of time, in seconds, between one scaling activity ending and another one starting due to simple scaling policies. For more information, see [Scaling cooldowns for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “300“ seconds
	Cooldown *string `pulumi:"cooldown"`
	// The amount of time, in seconds, until a new instance is considered to have finished initializing and resource consumption to become stable after it enters the “InService“ state.
	//  During an instance refresh, Amazon EC2 Auto Scaling waits for the warm-up period after it replaces an instance before it moves on to replacing the next instance. Amazon EC2 Auto Scaling also waits for the warm-up period before aggregating the metrics for new instances with existing instances in the Amazon CloudWatch metrics that are used for scaling, resulting in more reliable usage data. For more information, see [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//   To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify “-1“ for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of “0“ or other nominal value.
	//   Default: None
	DefaultInstanceWarmup *int `pulumi:"defaultInstanceWarmup"`
	// The desired capacity is the initial capacity of the Auto Scaling group at the time of its creation and the capacity it attempts to maintain. It can scale beyond this capacity if you configure automatic scaling.
	//  The number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group. If you do not specify a desired capacity when creating the stack, the default is the minimum size of the group.
	//  CloudFormation marks the Auto Scaling group as successful (by setting its status to CREATE_COMPLETE) when the desired capacity is reached. However, if a maximum Spot price is set in the launch template or launch configuration that you specified, then desired capacity is not used as a criteria for success. Whether your request is fulfilled depends on Spot Instance capacity and your maximum price.
	DesiredCapacity *string `pulumi:"desiredCapacity"`
	// The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports “DesiredCapacityType“ for attribute-based instance type selection only. For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  By default, Amazon EC2 Auto Scaling specifies “units“, which translates into number of instances.
	//  Valid values: “units“ | “vcpu“ | “memory-mib“
	DesiredCapacityType *string `pulumi:"desiredCapacityType"`
	// 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 and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the “InService“ state. For more information, see [Set the health check grace period for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Default: “0“ seconds
	HealthCheckGracePeriod *int `pulumi:"healthCheckGracePeriod"`
	// A comma-separated value string of one or more health check types.
	//  The valid values are “EC2“, “ELB“, and “VPC_LATTICE“. “EC2“ is the default health check and cannot be disabled. For more information, see [Health checks for Auto Scaling instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Only specify “EC2“ if you must clear a value that was previously set.
	HealthCheckType *string `pulumi:"healthCheckType"`
	// An instance maintenance policy. For more information, see [Set instance maintenance policy](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.
	InstanceMaintenancePolicy *AutoScalingGroupInstanceMaintenancePolicy `pulumi:"instanceMaintenancePolicy"`
	// The name of the launch configuration to use to launch instances.
	//  Required only if you don't specify “LaunchTemplate“, “MixedInstancesPolicy“, or “InstanceId“.
	LaunchConfigurationName *string `pulumi:"launchConfigurationName"`
	// Information used to specify the launch template and version to use to launch instances. You can alternatively associate a launch template to the Auto Scaling group by specifying a “MixedInstancesPolicy“. For more information about creating launch templates, see [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  If you omit this property, you must specify “MixedInstancesPolicy“, “LaunchConfigurationName“, or “InstanceId“.
	LaunchTemplate *AutoScalingGroupLaunchTemplateSpecification `pulumi:"launchTemplate"`
	// One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.
	LifecycleHookSpecificationList []AutoScalingGroupLifecycleHookSpecification `pulumi:"lifecycleHookSpecificationList"`
	// A list of Classic Load Balancers associated with this Auto Scaling group. For Application Load Balancers, Network Load Balancers, and Gateway Load Balancers, specify the “TargetGroupARNs“ property instead.
	LoadBalancerNames []string `pulumi:"loadBalancerNames"`
	// The maximum amount of time, in seconds, that an instance can be in service. The default is null. If specified, the value must be either 0 or a number equal to or greater than 86,400 seconds (1 day). For more information, see [Replacing Auto Scaling instances based on maximum instance lifetime](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MaxInstanceLifetime *int `pulumi:"maxInstanceLifetime"`
	// The maximum size of the group.
	//   With a mixed instances policy that uses instance weighting, Amazon EC2 Auto Scaling may need to go above “MaxSize“ to meet your capacity requirements. In this event, Amazon EC2 Auto Scaling will never go above “MaxSize“ by more than your largest instance weight (weights that define how many units each instance contributes to the desired capacity of the group).
	MaxSize *string `pulumi:"maxSize"`
	// Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.
	MetricsCollection []AutoScalingGroupMetricsCollection `pulumi:"metricsCollection"`
	// The minimum size of the group.
	MinSize *string `pulumi:"minSize"`
	// An embedded object that specifies a mixed instances policy.
	//  The policy includes properties that not only define the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances (optional), and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacities, but also the properties that specify the instance configuration information—the launch template and instance types. The policy can also include a weight for each instance type and different launch templates for individual instance types.
	//  For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.
	MixedInstancesPolicy *AutoScalingGroupMixedInstancesPolicy `pulumi:"mixedInstancesPolicy"`
	// Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.
	NewInstancesProtectedFromScaleIn *bool                                      `pulumi:"newInstancesProtectedFromScaleIn"`
	NotificationConfiguration        *AutoScalingGroupNotificationConfiguration `pulumi:"notificationConfiguration"`
	// Configures an Auto Scaling group to send notifications when specified events take place.
	NotificationConfigurations []AutoScalingGroupNotificationConfiguration `pulumi:"notificationConfigurations"`
	// The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.
	//   A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.
	PlacementGroup *string `pulumi:"placementGroup"`
	// The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named “AWSServiceRoleForAutoScaling“, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.
	ServiceLinkedRoleArn *string `pulumi:"serviceLinkedRoleArn"`
	// One or more tags. You can tag your Auto Scaling group and propagate the tags to the Amazon EC2 instances it launches. Tags are not propagated to Amazon EBS volumes. To add tags to Amazon EBS volumes, specify the tags in a launch template but use caution. If the launch template specifies an instance tag with a key that is also specified for the Auto Scaling group, Amazon EC2 Auto Scaling overrides the value of that instance tag with the value specified by the Auto Scaling group. For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*.
	Tags []AutoScalingGroupTagProperty `pulumi:"tags"`
	// The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see [Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) in the *Amazon EC2 Auto Scaling User Guide*.
	TargetGroupArns []string `pulumi:"targetGroupArns"`
	// A policy or a list of policies that are used to select the instance to terminate. These policies are executed in the order that you list them. For more information, see [Work with Amazon EC2 Auto Scaling termination policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-termination-policies.html) in the *Amazon EC2 Auto Scaling User Guide*.
	//  Valid values: “Default“ | “AllocationStrategy“ | “ClosestToNextInstanceHour“ | “NewestInstance“ | “OldestInstance“ | “OldestLaunchConfiguration“ | “OldestLaunchTemplate“ | “arn:aws:lambda:region:account-id:function:my-function:my-alias“
	TerminationPolicies []string `pulumi:"terminationPolicies"`
	// A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.
	//  If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
	//   When you update “VPCZoneIdentifier“, this retains the same Auto Scaling group and replaces old instances with new ones, according to the specified subnets. You can optionally specify how CloudFormation handles these updates by using an [UpdatePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html).
	//   Required to launch instances into a nondefault VPC. If you specify “VPCZoneIdentifier“ with “AvailabilityZones“, the subnets that you specify for this property must reside in those Availability Zones.
	VpcZoneIdentifier []string `pulumi:"vpcZoneIdentifier"`
}

func LookupAutoScalingGroup added in v0.12.0

func LookupAutoScalingGroup(ctx *pulumi.Context, args *LookupAutoScalingGroupArgs, opts ...pulumi.InvokeOption) (*LookupAutoScalingGroupResult, error)

The “AWS::AutoScaling::AutoScalingGroup“ resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management.

For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html).
 Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. They do not provide full functionality for Amazon EC2 Auto Scaling or Amazon EC2. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) and [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*.

type LookupAutoScalingGroupResultOutput added in v0.12.0

type LookupAutoScalingGroupResultOutput struct{ *pulumi.OutputState }

func LookupAutoScalingGroupOutput added in v0.12.0

func (LookupAutoScalingGroupResultOutput) AvailabilityZones added in v0.12.0

A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the “VPCZoneIdentifier“ property, or for attaching a network interface when an existing network interface ID is specified in a launch template.

func (LookupAutoScalingGroupResultOutput) CapacityRebalance added in v0.12.0

Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) Context added in v0.12.0

Reserved.

func (LookupAutoScalingGroupResultOutput) Cooldown added in v0.12.0

*Only needed if you use simple scaling policies.*

The amount of time, in seconds, between one scaling activity ending and another one starting due to simple scaling policies. For more information, see [Scaling cooldowns for Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html) in the *Amazon EC2 Auto Scaling User Guide*.
Default: ``300`` seconds

func (LookupAutoScalingGroupResultOutput) DefaultInstanceWarmup added in v0.17.0

func (o LookupAutoScalingGroupResultOutput) DefaultInstanceWarmup() pulumi.IntPtrOutput

The amount of time, in seconds, until a new instance is considered to have finished initializing and resource consumption to become stable after it enters the “InService“ state.

During an instance refresh, Amazon EC2 Auto Scaling waits for the warm-up period after it replaces an instance before it moves on to replacing the next instance. Amazon EC2 Auto Scaling also waits for the warm-up period before aggregating the metrics for new instances with existing instances in the Amazon CloudWatch metrics that are used for scaling, resulting in more reliable usage data. For more information, see [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html) in the *Amazon EC2 Auto Scaling User Guide*.
 To manage various warm-up settings at the group level, we recommend that you set the default instance warmup, *even if it is set to 0 seconds*. To remove a value that you previously set, include the property but specify ``-1`` for the value. However, we strongly recommend keeping the default instance warmup enabled by specifying a value of ``0`` or other nominal value.
 Default: None

func (LookupAutoScalingGroupResultOutput) DesiredCapacity added in v0.12.0

The desired capacity is the initial capacity of the Auto Scaling group at the time of its creation and the capacity it attempts to maintain. It can scale beyond this capacity if you configure automatic scaling.

The number must be greater than or equal to the minimum size of the group and less than or equal to the maximum size of the group. If you do not specify a desired capacity when creating the stack, the default is the minimum size of the group.
CloudFormation marks the Auto Scaling group as successful (by setting its status to CREATE_COMPLETE) when the desired capacity is reached. However, if a maximum Spot price is set in the launch template or launch configuration that you specified, then desired capacity is not used as a criteria for success. Whether your request is fulfilled depends on Spot Instance capacity and your maximum price.

func (LookupAutoScalingGroupResultOutput) DesiredCapacityType added in v0.12.0

The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports “DesiredCapacityType“ for attribute-based instance type selection only. For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*.

By default, Amazon EC2 Auto Scaling specifies ``units``, which translates into number of instances.
Valid values: ``units`` | ``vcpu`` | ``memory-mib``

func (LookupAutoScalingGroupResultOutput) ElementType added in v0.12.0

func (LookupAutoScalingGroupResultOutput) HealthCheckGracePeriod added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) HealthCheckGracePeriod() pulumi.IntPtrOutput

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 and marking it unhealthy due to a failed health check. This is useful if your instances do not immediately pass their health checks after they enter the “InService“ state. For more information, see [Set the health check grace period for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/health-check-grace-period.html) in the *Amazon EC2 Auto Scaling User Guide*.

Default: ``0`` seconds

func (LookupAutoScalingGroupResultOutput) HealthCheckType added in v0.12.0

A comma-separated value string of one or more health check types.

The valid values are ``EC2``, ``ELB``, and ``VPC_LATTICE``. ``EC2`` is the default health check and cannot be disabled. For more information, see [Health checks for Auto Scaling instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html) in the *Amazon EC2 Auto Scaling User Guide*.
Only specify ``EC2`` if you must clear a value that was previously set.

func (LookupAutoScalingGroupResultOutput) InstanceMaintenancePolicy added in v0.77.0

An instance maintenance policy. For more information, see [Set instance maintenance policy](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-maintenance-policy.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) LaunchConfigurationName added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) LaunchConfigurationName() pulumi.StringPtrOutput

The name of the launch configuration to use to launch instances.

Required only if you don't specify ``LaunchTemplate``, ``MixedInstancesPolicy``, or ``InstanceId``.

func (LookupAutoScalingGroupResultOutput) LaunchTemplate added in v0.12.0

Information used to specify the launch template and version to use to launch instances. You can alternatively associate a launch template to the Auto Scaling group by specifying a “MixedInstancesPolicy“. For more information about creating launch templates, see [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.

If you omit this property, you must specify ``MixedInstancesPolicy``, ``LaunchConfigurationName``, or ``InstanceId``.

func (LookupAutoScalingGroupResultOutput) LifecycleHookSpecificationList added in v0.12.0

One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.

func (LookupAutoScalingGroupResultOutput) LoadBalancerNames added in v0.12.0

A list of Classic Load Balancers associated with this Auto Scaling group. For Application Load Balancers, Network Load Balancers, and Gateway Load Balancers, specify the “TargetGroupARNs“ property instead.

func (LookupAutoScalingGroupResultOutput) MaxInstanceLifetime added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) MaxInstanceLifetime() pulumi.IntPtrOutput

The maximum amount of time, in seconds, that an instance can be in service. The default is null. If specified, the value must be either 0 or a number equal to or greater than 86,400 seconds (1 day). For more information, see [Replacing Auto Scaling instances based on maximum instance lifetime](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-max-instance-lifetime.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) MaxSize added in v0.12.0

The maximum size of the group.

With a mixed instances policy that uses instance weighting, Amazon EC2 Auto Scaling may need to go above ``MaxSize`` to meet your capacity requirements. In this event, Amazon EC2 Auto Scaling will never go above ``MaxSize`` by more than your largest instance weight (weights that define how many units each instance contributes to the desired capacity of the group).

func (LookupAutoScalingGroupResultOutput) MetricsCollection added in v0.12.0

Enables the monitoring of group metrics of an Auto Scaling group. By default, these metrics are disabled.

func (LookupAutoScalingGroupResultOutput) MinSize added in v0.12.0

The minimum size of the group.

func (LookupAutoScalingGroupResultOutput) MixedInstancesPolicy added in v0.12.0

An embedded object that specifies a mixed instances policy.

The policy includes properties that not only define the distribution of On-Demand Instances and Spot Instances, the maximum price to pay for Spot Instances (optional), and how the Auto Scaling group allocates instance types to fulfill On-Demand and Spot capacities, but also the properties that specify the instance configuration information—the launch template and instance types. The policy can also include a weight for each instance type and different launch templates for individual instance types.
For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) NewInstancesProtectedFromScaleIn added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) NewInstancesProtectedFromScaleIn() pulumi.BoolPtrOutput

Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) NotificationConfiguration added in v0.78.0

func (LookupAutoScalingGroupResultOutput) NotificationConfigurations added in v0.12.0

Configures an Auto Scaling group to send notifications when specified events take place.

func (LookupAutoScalingGroupResultOutput) PlacementGroup added in v0.12.0

The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.

A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.

func (LookupAutoScalingGroupResultOutput) ServiceLinkedRoleArn added in v0.72.0

The Amazon Resource Name (ARN) of the service-linked role that the Auto Scaling group uses to call other AWS service on your behalf. By default, Amazon EC2 Auto Scaling uses a service-linked role named “AWSServiceRoleForAutoScaling“, which it creates if it does not exist. For more information, see [Service-linked roles](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-service-linked-role.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) Tags added in v0.12.0

One or more tags. You can tag your Auto Scaling group and propagate the tags to the Amazon EC2 instances it launches. Tags are not propagated to Amazon EBS volumes. To add tags to Amazon EBS volumes, specify the tags in a launch template but use caution. If the launch template specifies an instance tag with a key that is also specified for the Auto Scaling group, Amazon EC2 Auto Scaling overrides the value of that instance tag with the value specified by the Auto Scaling group. For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) TargetGroupArns added in v0.72.0

The Amazon Resource Names (ARN) of the Elastic Load Balancing target groups to associate with the Auto Scaling group. Instances are registered as targets with the target groups. The target groups receive incoming traffic and route requests to one or more registered targets. For more information, see [Use Elastic Load Balancing to distribute traffic across the instances in your Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) in the *Amazon EC2 Auto Scaling User Guide*.

func (LookupAutoScalingGroupResultOutput) TerminationPolicies added in v0.12.0

A policy or a list of policies that are used to select the instance to terminate. These policies are executed in the order that you list them. For more information, see [Work with Amazon EC2 Auto Scaling termination policies](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-termination-policies.html) in the *Amazon EC2 Auto Scaling User Guide*.

Valid values: ``Default`` | ``AllocationStrategy`` | ``ClosestToNextInstanceHour`` | ``NewestInstance`` | ``OldestInstance`` | ``OldestLaunchConfiguration`` | ``OldestLaunchTemplate`` | ``arn:aws:lambda:region:account-id:function:my-function:my-alias``

func (LookupAutoScalingGroupResultOutput) ToLookupAutoScalingGroupResultOutput added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) ToLookupAutoScalingGroupResultOutput() LookupAutoScalingGroupResultOutput

func (LookupAutoScalingGroupResultOutput) ToLookupAutoScalingGroupResultOutputWithContext added in v0.12.0

func (o LookupAutoScalingGroupResultOutput) ToLookupAutoScalingGroupResultOutputWithContext(ctx context.Context) LookupAutoScalingGroupResultOutput

func (LookupAutoScalingGroupResultOutput) VpcZoneIdentifier added in v0.72.0

A list of subnet IDs for a virtual private cloud (VPC) where instances in the Auto Scaling group can be created.

If this resource specifies public subnets and is also in a VPC that is defined in the same stack template, you must use the [DependsOn attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) to declare a dependency on the [VPC-gateway attachment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html).
 When you update ``VPCZoneIdentifier``, this retains the same Auto Scaling group and replaces old instances with new ones, according to the specified subnets. You can optionally specify how CloudFormation handles these updates by using an [UpdatePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html).
 Required to launch instances into a nondefault VPC. If you specify ``VPCZoneIdentifier`` with ``AvailabilityZones``, the subnets that you specify for this property must reside in those Availability Zones.

type LookupLifecycleHookArgs added in v0.12.0

type LookupLifecycleHookArgs struct {
	// The name of the Auto Scaling group for the lifecycle hook.
	AutoScalingGroupName string `pulumi:"autoScalingGroupName"`
	// The name of the lifecycle hook.
	LifecycleHookName string `pulumi:"lifecycleHookName"`
}

type LookupLifecycleHookOutputArgs added in v0.12.0

type LookupLifecycleHookOutputArgs struct {
	// The name of the Auto Scaling group for the lifecycle hook.
	AutoScalingGroupName pulumi.StringInput `pulumi:"autoScalingGroupName"`
	// The name of the lifecycle hook.
	LifecycleHookName pulumi.StringInput `pulumi:"lifecycleHookName"`
}

func (LookupLifecycleHookOutputArgs) ElementType added in v0.12.0

type LookupLifecycleHookResult added in v0.12.0

type LookupLifecycleHookResult struct {
	// The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON (default).
	DefaultResult *string `pulumi:"defaultResult"`
	// The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from 30 to 7200 seconds. The default value is 3600 seconds (1 hour). If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the action that you specified in the DefaultResult property.
	HeartbeatTimeout *int `pulumi:"heartbeatTimeout"`
	// The instance state to which you want to attach the lifecycle hook.
	LifecycleTransition *string `pulumi:"lifecycleTransition"`
	// Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.
	NotificationMetadata *string `pulumi:"notificationMetadata"`
	// The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS topic. The notification message includes the following information: lifecycle action token, user account ID, Auto Scaling group name, lifecycle hook name, instance ID, lifecycle transition, and notification metadata.
	NotificationTargetArn *string `pulumi:"notificationTargetArn"`
	// The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target, for example, an Amazon SNS topic or an Amazon SQS queue.
	RoleArn *string `pulumi:"roleArn"`
}

func LookupLifecycleHook added in v0.12.0

func LookupLifecycleHook(ctx *pulumi.Context, args *LookupLifecycleHookArgs, opts ...pulumi.InvokeOption) (*LookupLifecycleHookResult, error)

Resource Type definition for AWS::AutoScaling::LifecycleHook

type LookupLifecycleHookResultOutput added in v0.12.0

type LookupLifecycleHookResultOutput struct{ *pulumi.OutputState }

func LookupLifecycleHookOutput added in v0.12.0

func (LookupLifecycleHookResultOutput) DefaultResult added in v0.12.0

The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs. The valid values are CONTINUE and ABANDON (default).

func (LookupLifecycleHookResultOutput) ElementType added in v0.12.0

func (LookupLifecycleHookResultOutput) HeartbeatTimeout added in v0.12.0

The maximum time, in seconds, that can elapse before the lifecycle hook times out. The range is from 30 to 7200 seconds. The default value is 3600 seconds (1 hour). If the lifecycle hook times out, Amazon EC2 Auto Scaling performs the action that you specified in the DefaultResult property.

func (LookupLifecycleHookResultOutput) LifecycleTransition added in v0.12.0

func (o LookupLifecycleHookResultOutput) LifecycleTransition() pulumi.StringPtrOutput

The instance state to which you want to attach the lifecycle hook.

func (LookupLifecycleHookResultOutput) NotificationMetadata added in v0.12.0

func (o LookupLifecycleHookResultOutput) NotificationMetadata() pulumi.StringPtrOutput

Additional information that is included any time Amazon EC2 Auto Scaling sends a message to the notification target.

func (LookupLifecycleHookResultOutput) NotificationTargetArn added in v0.72.0

func (o LookupLifecycleHookResultOutput) NotificationTargetArn() pulumi.StringPtrOutput

The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling uses to notify you when an instance is in the transition state for the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS topic. The notification message includes the following information: lifecycle action token, user account ID, Auto Scaling group name, lifecycle hook name, instance ID, lifecycle transition, and notification metadata.

func (LookupLifecycleHookResultOutput) RoleArn added in v0.72.0

The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target, for example, an Amazon SNS topic or an Amazon SQS queue.

func (LookupLifecycleHookResultOutput) ToLookupLifecycleHookResultOutput added in v0.12.0

func (o LookupLifecycleHookResultOutput) ToLookupLifecycleHookResultOutput() LookupLifecycleHookResultOutput

func (LookupLifecycleHookResultOutput) ToLookupLifecycleHookResultOutputWithContext added in v0.12.0

func (o LookupLifecycleHookResultOutput) ToLookupLifecycleHookResultOutputWithContext(ctx context.Context) LookupLifecycleHookResultOutput

type LookupScalingPolicyArgs added in v0.12.0

type LookupScalingPolicyArgs struct {
	// The ARN of the AutoScaling scaling policy
	Arn string `pulumi:"arn"`
}

type LookupScalingPolicyOutputArgs added in v0.12.0

type LookupScalingPolicyOutputArgs struct {
	// The ARN of the AutoScaling scaling policy
	Arn pulumi.StringInput `pulumi:"arn"`
}

func (LookupScalingPolicyOutputArgs) ElementType added in v0.12.0

type LookupScalingPolicyResult added in v0.12.0

type LookupScalingPolicyResult struct {
	// Specifies how the scaling adjustment is interpreted. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	AdjustmentType *string `pulumi:"adjustmentType"`
	// The ARN of the AutoScaling scaling policy
	Arn *string `pulumi:"arn"`
	// The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.
	Cooldown *string `pulumi:"cooldown"`
	// The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group. Valid only if the policy type is TargetTrackingScaling or StepScaling.
	EstimatedInstanceWarmup *int `pulumi:"estimatedInstanceWarmup"`
	// The aggregation type for the CloudWatch metrics. The valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average. Valid only if the policy type is StepScaling.
	MetricAggregationType *string `pulumi:"metricAggregationType"`
	// The minimum value to scale by when the adjustment type is PercentChangeInCapacity. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.
	MinAdjustmentMagnitude *int    `pulumi:"minAdjustmentMagnitude"`
	PolicyName             *string `pulumi:"policyName"`
	// One of the following policy types: TargetTrackingScaling, StepScaling, SimpleScaling (default), PredictiveScaling
	PolicyType *string `pulumi:"policyType"`
	// A predictive scaling policy. Includes support for predefined metrics only.
	PredictiveScalingConfiguration *ScalingPolicyPredictiveScalingConfiguration `pulumi:"predictiveScalingConfiguration"`
	// The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value. Required if the policy type is SimpleScaling. (Not used with any other policy type.)
	ScalingAdjustment *int `pulumi:"scalingAdjustment"`
	// A set of adjustments that enable you to scale based on the size of the alarm breach. Required if the policy type is StepScaling. (Not used with any other policy type.)
	StepAdjustments []ScalingPolicyStepAdjustment `pulumi:"stepAdjustments"`
	// A target tracking scaling policy. Includes support for predefined or customized metrics.
	TargetTrackingConfiguration *ScalingPolicyTargetTrackingConfiguration `pulumi:"targetTrackingConfiguration"`
}

func LookupScalingPolicy added in v0.12.0

func LookupScalingPolicy(ctx *pulumi.Context, args *LookupScalingPolicyArgs, opts ...pulumi.InvokeOption) (*LookupScalingPolicyResult, error)

The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application.

type LookupScalingPolicyResultOutput added in v0.12.0

type LookupScalingPolicyResultOutput struct{ *pulumi.OutputState }

func LookupScalingPolicyOutput added in v0.12.0

func (LookupScalingPolicyResultOutput) AdjustmentType added in v0.12.0

Specifies how the scaling adjustment is interpreted. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.

func (LookupScalingPolicyResultOutput) Arn added in v0.21.0

The ARN of the AutoScaling scaling policy

func (LookupScalingPolicyResultOutput) Cooldown added in v0.12.0

The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.

func (LookupScalingPolicyResultOutput) ElementType added in v0.12.0

func (LookupScalingPolicyResultOutput) EstimatedInstanceWarmup added in v0.12.0

func (o LookupScalingPolicyResultOutput) EstimatedInstanceWarmup() pulumi.IntPtrOutput

The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group. Valid only if the policy type is TargetTrackingScaling or StepScaling.

func (LookupScalingPolicyResultOutput) MetricAggregationType added in v0.12.0

func (o LookupScalingPolicyResultOutput) MetricAggregationType() pulumi.StringPtrOutput

The aggregation type for the CloudWatch metrics. The valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average. Valid only if the policy type is StepScaling.

func (LookupScalingPolicyResultOutput) MinAdjustmentMagnitude added in v0.12.0

func (o LookupScalingPolicyResultOutput) MinAdjustmentMagnitude() pulumi.IntPtrOutput

The minimum value to scale by when the adjustment type is PercentChangeInCapacity. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.

func (LookupScalingPolicyResultOutput) PolicyName added in v0.21.0

func (LookupScalingPolicyResultOutput) PolicyType added in v0.12.0

One of the following policy types: TargetTrackingScaling, StepScaling, SimpleScaling (default), PredictiveScaling

func (LookupScalingPolicyResultOutput) PredictiveScalingConfiguration added in v0.12.0

A predictive scaling policy. Includes support for predefined metrics only.

func (LookupScalingPolicyResultOutput) ScalingAdjustment added in v0.12.0

func (o LookupScalingPolicyResultOutput) ScalingAdjustment() pulumi.IntPtrOutput

The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value. Required if the policy type is SimpleScaling. (Not used with any other policy type.)

func (LookupScalingPolicyResultOutput) StepAdjustments added in v0.12.0

A set of adjustments that enable you to scale based on the size of the alarm breach. Required if the policy type is StepScaling. (Not used with any other policy type.)

func (LookupScalingPolicyResultOutput) TargetTrackingConfiguration added in v0.12.0

A target tracking scaling policy. Includes support for predefined or customized metrics.

func (LookupScalingPolicyResultOutput) ToLookupScalingPolicyResultOutput added in v0.12.0

func (o LookupScalingPolicyResultOutput) ToLookupScalingPolicyResultOutput() LookupScalingPolicyResultOutput

func (LookupScalingPolicyResultOutput) ToLookupScalingPolicyResultOutputWithContext added in v0.12.0

func (o LookupScalingPolicyResultOutput) ToLookupScalingPolicyResultOutputWithContext(ctx context.Context) LookupScalingPolicyResultOutput

type LookupScheduledActionArgs added in v0.12.0

type LookupScheduledActionArgs struct {
	// The name of the Auto Scaling group.
	AutoScalingGroupName string `pulumi:"autoScalingGroupName"`
	// Auto-generated unique identifier
	ScheduledActionName string `pulumi:"scheduledActionName"`
}

type LookupScheduledActionOutputArgs added in v0.12.0

type LookupScheduledActionOutputArgs struct {
	// The name of the Auto Scaling group.
	AutoScalingGroupName pulumi.StringInput `pulumi:"autoScalingGroupName"`
	// Auto-generated unique identifier
	ScheduledActionName pulumi.StringInput `pulumi:"scheduledActionName"`
}

func (LookupScheduledActionOutputArgs) ElementType added in v0.12.0

type LookupScheduledActionResult added in v0.12.0

type LookupScheduledActionResult struct {
	// The desired capacity is the initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain.
	DesiredCapacity *int `pulumi:"desiredCapacity"`
	// The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	EndTime *string `pulumi:"endTime"`
	// The minimum size of the Auto Scaling group.
	MaxSize *int `pulumi:"maxSize"`
	// The minimum size of the Auto Scaling group.
	MinSize *int `pulumi:"minSize"`
	// The recurring schedule for the action, in Unix cron syntax format. When StartTime and EndTime are specified with Recurrence , they form the boundaries of when the recurring action starts and stops.
	Recurrence *string `pulumi:"recurrence"`
	// Auto-generated unique identifier
	ScheduledActionName *string `pulumi:"scheduledActionName"`
	// The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	StartTime *string `pulumi:"startTime"`
	// The time zone for the cron expression.
	TimeZone *string `pulumi:"timeZone"`
}

func LookupScheduledAction added in v0.12.0

func LookupScheduledAction(ctx *pulumi.Context, args *LookupScheduledActionArgs, opts ...pulumi.InvokeOption) (*LookupScheduledActionResult, error)

The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes.

type LookupScheduledActionResultOutput added in v0.12.0

type LookupScheduledActionResultOutput struct{ *pulumi.OutputState }

func LookupScheduledActionOutput added in v0.12.0

func (LookupScheduledActionResultOutput) DesiredCapacity added in v0.12.0

The desired capacity is the initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain.

func (LookupScheduledActionResultOutput) ElementType added in v0.12.0

func (LookupScheduledActionResultOutput) EndTime added in v0.12.0

The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

func (LookupScheduledActionResultOutput) MaxSize added in v0.12.0

The minimum size of the Auto Scaling group.

func (LookupScheduledActionResultOutput) MinSize added in v0.12.0

The minimum size of the Auto Scaling group.

func (LookupScheduledActionResultOutput) Recurrence added in v0.12.0

The recurring schedule for the action, in Unix cron syntax format. When StartTime and EndTime are specified with Recurrence , they form the boundaries of when the recurring action starts and stops.

func (LookupScheduledActionResultOutput) ScheduledActionName added in v0.39.0

Auto-generated unique identifier

func (LookupScheduledActionResultOutput) StartTime added in v0.12.0

The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

func (LookupScheduledActionResultOutput) TimeZone added in v0.12.0

The time zone for the cron expression.

func (LookupScheduledActionResultOutput) ToLookupScheduledActionResultOutput added in v0.12.0

func (o LookupScheduledActionResultOutput) ToLookupScheduledActionResultOutput() LookupScheduledActionResultOutput

func (LookupScheduledActionResultOutput) ToLookupScheduledActionResultOutputWithContext added in v0.12.0

func (o LookupScheduledActionResultOutput) ToLookupScheduledActionResultOutputWithContext(ctx context.Context) LookupScheduledActionResultOutput

type LookupWarmPoolArgs added in v0.12.0

type LookupWarmPoolArgs struct {
	AutoScalingGroupName string `pulumi:"autoScalingGroupName"`
}

type LookupWarmPoolOutputArgs added in v0.12.0

type LookupWarmPoolOutputArgs struct {
	AutoScalingGroupName pulumi.StringInput `pulumi:"autoScalingGroupName"`
}

func (LookupWarmPoolOutputArgs) ElementType added in v0.12.0

func (LookupWarmPoolOutputArgs) ElementType() reflect.Type

type LookupWarmPoolResult added in v0.12.0

type LookupWarmPoolResult struct {
	InstanceReusePolicy      *WarmPoolInstanceReusePolicy `pulumi:"instanceReusePolicy"`
	MaxGroupPreparedCapacity *int                         `pulumi:"maxGroupPreparedCapacity"`
	MinSize                  *int                         `pulumi:"minSize"`
	PoolState                *string                      `pulumi:"poolState"`
}

func LookupWarmPool added in v0.12.0

func LookupWarmPool(ctx *pulumi.Context, args *LookupWarmPoolArgs, opts ...pulumi.InvokeOption) (*LookupWarmPoolResult, error)

Resource schema for AWS::AutoScaling::WarmPool.

type LookupWarmPoolResultOutput added in v0.12.0

type LookupWarmPoolResultOutput struct{ *pulumi.OutputState }

func LookupWarmPoolOutput added in v0.12.0

func LookupWarmPoolOutput(ctx *pulumi.Context, args LookupWarmPoolOutputArgs, opts ...pulumi.InvokeOption) LookupWarmPoolResultOutput

func (LookupWarmPoolResultOutput) ElementType added in v0.12.0

func (LookupWarmPoolResultOutput) ElementType() reflect.Type

func (LookupWarmPoolResultOutput) InstanceReusePolicy added in v0.12.0

func (LookupWarmPoolResultOutput) MaxGroupPreparedCapacity added in v0.12.0

func (o LookupWarmPoolResultOutput) MaxGroupPreparedCapacity() pulumi.IntPtrOutput

func (LookupWarmPoolResultOutput) MinSize added in v0.12.0

func (LookupWarmPoolResultOutput) PoolState added in v0.12.0

func (LookupWarmPoolResultOutput) ToLookupWarmPoolResultOutput added in v0.12.0

func (o LookupWarmPoolResultOutput) ToLookupWarmPoolResultOutput() LookupWarmPoolResultOutput

func (LookupWarmPoolResultOutput) ToLookupWarmPoolResultOutputWithContext added in v0.12.0

func (o LookupWarmPoolResultOutput) ToLookupWarmPoolResultOutputWithContext(ctx context.Context) LookupWarmPoolResultOutput

type ScalingPolicy

type ScalingPolicy struct {
	pulumi.CustomResourceState

	// Specifies how the scaling adjustment is interpreted. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	AdjustmentType pulumi.StringPtrOutput `pulumi:"adjustmentType"`
	// The ARN of the AutoScaling scaling policy
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the Auto Scaling group.
	AutoScalingGroupName pulumi.StringOutput `pulumi:"autoScalingGroupName"`
	// The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.
	Cooldown pulumi.StringPtrOutput `pulumi:"cooldown"`
	// The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group. Valid only if the policy type is TargetTrackingScaling or StepScaling.
	EstimatedInstanceWarmup pulumi.IntPtrOutput `pulumi:"estimatedInstanceWarmup"`
	// The aggregation type for the CloudWatch metrics. The valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average. Valid only if the policy type is StepScaling.
	MetricAggregationType pulumi.StringPtrOutput `pulumi:"metricAggregationType"`
	// The minimum value to scale by when the adjustment type is PercentChangeInCapacity. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.
	MinAdjustmentMagnitude pulumi.IntPtrOutput `pulumi:"minAdjustmentMagnitude"`
	PolicyName             pulumi.StringOutput `pulumi:"policyName"`
	// One of the following policy types: TargetTrackingScaling, StepScaling, SimpleScaling (default), PredictiveScaling
	PolicyType pulumi.StringPtrOutput `pulumi:"policyType"`
	// A predictive scaling policy. Includes support for predefined metrics only.
	PredictiveScalingConfiguration ScalingPolicyPredictiveScalingConfigurationPtrOutput `pulumi:"predictiveScalingConfiguration"`
	// The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value. Required if the policy type is SimpleScaling. (Not used with any other policy type.)
	ScalingAdjustment pulumi.IntPtrOutput `pulumi:"scalingAdjustment"`
	// A set of adjustments that enable you to scale based on the size of the alarm breach. Required if the policy type is StepScaling. (Not used with any other policy type.)
	StepAdjustments ScalingPolicyStepAdjustmentArrayOutput `pulumi:"stepAdjustments"`
	// A target tracking scaling policy. Includes support for predefined or customized metrics.
	TargetTrackingConfiguration ScalingPolicyTargetTrackingConfigurationPtrOutput `pulumi:"targetTrackingConfiguration"`
}

The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application.

func GetScalingPolicy

func GetScalingPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ScalingPolicyState, opts ...pulumi.ResourceOption) (*ScalingPolicy, error)

GetScalingPolicy gets an existing ScalingPolicy 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 NewScalingPolicy

func NewScalingPolicy(ctx *pulumi.Context,
	name string, args *ScalingPolicyArgs, opts ...pulumi.ResourceOption) (*ScalingPolicy, error)

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

func (*ScalingPolicy) ElementType

func (*ScalingPolicy) ElementType() reflect.Type

func (*ScalingPolicy) ToScalingPolicyOutput

func (i *ScalingPolicy) ToScalingPolicyOutput() ScalingPolicyOutput

func (*ScalingPolicy) ToScalingPolicyOutputWithContext

func (i *ScalingPolicy) ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput

type ScalingPolicyArgs

type ScalingPolicyArgs struct {
	// Specifies how the scaling adjustment is interpreted. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
	AdjustmentType pulumi.StringPtrInput
	// The name of the Auto Scaling group.
	AutoScalingGroupName pulumi.StringInput
	// The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.
	Cooldown pulumi.StringPtrInput
	// The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group. Valid only if the policy type is TargetTrackingScaling or StepScaling.
	EstimatedInstanceWarmup pulumi.IntPtrInput
	// The aggregation type for the CloudWatch metrics. The valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average. Valid only if the policy type is StepScaling.
	MetricAggregationType pulumi.StringPtrInput
	// The minimum value to scale by when the adjustment type is PercentChangeInCapacity. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.
	MinAdjustmentMagnitude pulumi.IntPtrInput
	// One of the following policy types: TargetTrackingScaling, StepScaling, SimpleScaling (default), PredictiveScaling
	PolicyType pulumi.StringPtrInput
	// A predictive scaling policy. Includes support for predefined metrics only.
	PredictiveScalingConfiguration ScalingPolicyPredictiveScalingConfigurationPtrInput
	// The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value. Required if the policy type is SimpleScaling. (Not used with any other policy type.)
	ScalingAdjustment pulumi.IntPtrInput
	// A set of adjustments that enable you to scale based on the size of the alarm breach. Required if the policy type is StepScaling. (Not used with any other policy type.)
	StepAdjustments ScalingPolicyStepAdjustmentArrayInput
	// A target tracking scaling policy. Includes support for predefined or customized metrics.
	TargetTrackingConfiguration ScalingPolicyTargetTrackingConfigurationPtrInput
}

The set of arguments for constructing a ScalingPolicy resource.

func (ScalingPolicyArgs) ElementType

func (ScalingPolicyArgs) ElementType() reflect.Type

type ScalingPolicyCustomizedMetricSpecification

type ScalingPolicyCustomizedMetricSpecification struct {
	Dimensions []ScalingPolicyMetricDimension `pulumi:"dimensions"`
	MetricName string                         `pulumi:"metricName"`
	Namespace  string                         `pulumi:"namespace"`
	Statistic  string                         `pulumi:"statistic"`
	Unit       *string                        `pulumi:"unit"`
}

type ScalingPolicyCustomizedMetricSpecificationArgs

type ScalingPolicyCustomizedMetricSpecificationArgs struct {
	Dimensions ScalingPolicyMetricDimensionArrayInput `pulumi:"dimensions"`
	MetricName pulumi.StringInput                     `pulumi:"metricName"`
	Namespace  pulumi.StringInput                     `pulumi:"namespace"`
	Statistic  pulumi.StringInput                     `pulumi:"statistic"`
	Unit       pulumi.StringPtrInput                  `pulumi:"unit"`
}

func (ScalingPolicyCustomizedMetricSpecificationArgs) ElementType

func (ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationOutput

func (i ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationOutput() ScalingPolicyCustomizedMetricSpecificationOutput

func (ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationOutputWithContext

func (i ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyCustomizedMetricSpecificationOutput

func (ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationPtrOutput

func (i ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationPtrOutput() ScalingPolicyCustomizedMetricSpecificationPtrOutput

func (ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext

func (i ScalingPolicyCustomizedMetricSpecificationArgs) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyCustomizedMetricSpecificationPtrOutput

type ScalingPolicyCustomizedMetricSpecificationInput

type ScalingPolicyCustomizedMetricSpecificationInput interface {
	pulumi.Input

	ToScalingPolicyCustomizedMetricSpecificationOutput() ScalingPolicyCustomizedMetricSpecificationOutput
	ToScalingPolicyCustomizedMetricSpecificationOutputWithContext(context.Context) ScalingPolicyCustomizedMetricSpecificationOutput
}

ScalingPolicyCustomizedMetricSpecificationInput is an input type that accepts ScalingPolicyCustomizedMetricSpecificationArgs and ScalingPolicyCustomizedMetricSpecificationOutput values. You can construct a concrete instance of `ScalingPolicyCustomizedMetricSpecificationInput` via:

ScalingPolicyCustomizedMetricSpecificationArgs{...}

type ScalingPolicyCustomizedMetricSpecificationOutput

type ScalingPolicyCustomizedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (ScalingPolicyCustomizedMetricSpecificationOutput) Dimensions

func (ScalingPolicyCustomizedMetricSpecificationOutput) ElementType

func (ScalingPolicyCustomizedMetricSpecificationOutput) MetricName

func (ScalingPolicyCustomizedMetricSpecificationOutput) Namespace

func (ScalingPolicyCustomizedMetricSpecificationOutput) Statistic

func (ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationOutput

func (o ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationOutput() ScalingPolicyCustomizedMetricSpecificationOutput

func (ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationOutputWithContext

func (o ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyCustomizedMetricSpecificationOutput

func (ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutput

func (o ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutput() ScalingPolicyCustomizedMetricSpecificationPtrOutput

func (ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext

func (o ScalingPolicyCustomizedMetricSpecificationOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyCustomizedMetricSpecificationPtrOutput

func (ScalingPolicyCustomizedMetricSpecificationOutput) Unit

type ScalingPolicyCustomizedMetricSpecificationPtrInput

type ScalingPolicyCustomizedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToScalingPolicyCustomizedMetricSpecificationPtrOutput() ScalingPolicyCustomizedMetricSpecificationPtrOutput
	ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext(context.Context) ScalingPolicyCustomizedMetricSpecificationPtrOutput
}

ScalingPolicyCustomizedMetricSpecificationPtrInput is an input type that accepts ScalingPolicyCustomizedMetricSpecificationArgs, ScalingPolicyCustomizedMetricSpecificationPtr and ScalingPolicyCustomizedMetricSpecificationPtrOutput values. You can construct a concrete instance of `ScalingPolicyCustomizedMetricSpecificationPtrInput` via:

        ScalingPolicyCustomizedMetricSpecificationArgs{...}

or:

        nil

type ScalingPolicyCustomizedMetricSpecificationPtrOutput

type ScalingPolicyCustomizedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) Dimensions

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) Elem

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) ElementType

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) MetricName

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) Namespace

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) Statistic

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutput

func (o ScalingPolicyCustomizedMetricSpecificationPtrOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutput() ScalingPolicyCustomizedMetricSpecificationPtrOutput

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext

func (o ScalingPolicyCustomizedMetricSpecificationPtrOutput) ToScalingPolicyCustomizedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyCustomizedMetricSpecificationPtrOutput

func (ScalingPolicyCustomizedMetricSpecificationPtrOutput) Unit

type ScalingPolicyInput

type ScalingPolicyInput interface {
	pulumi.Input

	ToScalingPolicyOutput() ScalingPolicyOutput
	ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput
}

type ScalingPolicyMetric added in v0.14.0

type ScalingPolicyMetric struct {
	Dimensions []ScalingPolicyMetricDimension `pulumi:"dimensions"`
	MetricName string                         `pulumi:"metricName"`
	Namespace  string                         `pulumi:"namespace"`
}

type ScalingPolicyMetricArgs added in v0.14.0

type ScalingPolicyMetricArgs struct {
	Dimensions ScalingPolicyMetricDimensionArrayInput `pulumi:"dimensions"`
	MetricName pulumi.StringInput                     `pulumi:"metricName"`
	Namespace  pulumi.StringInput                     `pulumi:"namespace"`
}

func (ScalingPolicyMetricArgs) ElementType added in v0.14.0

func (ScalingPolicyMetricArgs) ElementType() reflect.Type

func (ScalingPolicyMetricArgs) ToScalingPolicyMetricOutput added in v0.14.0

func (i ScalingPolicyMetricArgs) ToScalingPolicyMetricOutput() ScalingPolicyMetricOutput

func (ScalingPolicyMetricArgs) ToScalingPolicyMetricOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricArgs) ToScalingPolicyMetricOutputWithContext(ctx context.Context) ScalingPolicyMetricOutput

func (ScalingPolicyMetricArgs) ToScalingPolicyMetricPtrOutput added in v0.14.0

func (i ScalingPolicyMetricArgs) ToScalingPolicyMetricPtrOutput() ScalingPolicyMetricPtrOutput

func (ScalingPolicyMetricArgs) ToScalingPolicyMetricPtrOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricArgs) ToScalingPolicyMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricPtrOutput

type ScalingPolicyMetricDataQuery added in v0.14.0

type ScalingPolicyMetricDataQuery struct {
	Expression *string                  `pulumi:"expression"`
	Id         string                   `pulumi:"id"`
	Label      *string                  `pulumi:"label"`
	MetricStat *ScalingPolicyMetricStat `pulumi:"metricStat"`
	ReturnData *bool                    `pulumi:"returnData"`
}

type ScalingPolicyMetricDataQueryArgs added in v0.14.0

type ScalingPolicyMetricDataQueryArgs struct {
	Expression pulumi.StringPtrInput           `pulumi:"expression"`
	Id         pulumi.StringInput              `pulumi:"id"`
	Label      pulumi.StringPtrInput           `pulumi:"label"`
	MetricStat ScalingPolicyMetricStatPtrInput `pulumi:"metricStat"`
	ReturnData pulumi.BoolPtrInput             `pulumi:"returnData"`
}

func (ScalingPolicyMetricDataQueryArgs) ElementType added in v0.14.0

func (ScalingPolicyMetricDataQueryArgs) ToScalingPolicyMetricDataQueryOutput added in v0.14.0

func (i ScalingPolicyMetricDataQueryArgs) ToScalingPolicyMetricDataQueryOutput() ScalingPolicyMetricDataQueryOutput

func (ScalingPolicyMetricDataQueryArgs) ToScalingPolicyMetricDataQueryOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricDataQueryArgs) ToScalingPolicyMetricDataQueryOutputWithContext(ctx context.Context) ScalingPolicyMetricDataQueryOutput

type ScalingPolicyMetricDataQueryArray added in v0.14.0

type ScalingPolicyMetricDataQueryArray []ScalingPolicyMetricDataQueryInput

func (ScalingPolicyMetricDataQueryArray) ElementType added in v0.14.0

func (ScalingPolicyMetricDataQueryArray) ToScalingPolicyMetricDataQueryArrayOutput added in v0.14.0

func (i ScalingPolicyMetricDataQueryArray) ToScalingPolicyMetricDataQueryArrayOutput() ScalingPolicyMetricDataQueryArrayOutput

func (ScalingPolicyMetricDataQueryArray) ToScalingPolicyMetricDataQueryArrayOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricDataQueryArray) ToScalingPolicyMetricDataQueryArrayOutputWithContext(ctx context.Context) ScalingPolicyMetricDataQueryArrayOutput

type ScalingPolicyMetricDataQueryArrayInput added in v0.14.0

type ScalingPolicyMetricDataQueryArrayInput interface {
	pulumi.Input

	ToScalingPolicyMetricDataQueryArrayOutput() ScalingPolicyMetricDataQueryArrayOutput
	ToScalingPolicyMetricDataQueryArrayOutputWithContext(context.Context) ScalingPolicyMetricDataQueryArrayOutput
}

ScalingPolicyMetricDataQueryArrayInput is an input type that accepts ScalingPolicyMetricDataQueryArray and ScalingPolicyMetricDataQueryArrayOutput values. You can construct a concrete instance of `ScalingPolicyMetricDataQueryArrayInput` via:

ScalingPolicyMetricDataQueryArray{ ScalingPolicyMetricDataQueryArgs{...} }

type ScalingPolicyMetricDataQueryArrayOutput added in v0.14.0

type ScalingPolicyMetricDataQueryArrayOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricDataQueryArrayOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricDataQueryArrayOutput) Index added in v0.14.0

func (ScalingPolicyMetricDataQueryArrayOutput) ToScalingPolicyMetricDataQueryArrayOutput added in v0.14.0

func (o ScalingPolicyMetricDataQueryArrayOutput) ToScalingPolicyMetricDataQueryArrayOutput() ScalingPolicyMetricDataQueryArrayOutput

func (ScalingPolicyMetricDataQueryArrayOutput) ToScalingPolicyMetricDataQueryArrayOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricDataQueryArrayOutput) ToScalingPolicyMetricDataQueryArrayOutputWithContext(ctx context.Context) ScalingPolicyMetricDataQueryArrayOutput

type ScalingPolicyMetricDataQueryInput added in v0.14.0

type ScalingPolicyMetricDataQueryInput interface {
	pulumi.Input

	ToScalingPolicyMetricDataQueryOutput() ScalingPolicyMetricDataQueryOutput
	ToScalingPolicyMetricDataQueryOutputWithContext(context.Context) ScalingPolicyMetricDataQueryOutput
}

ScalingPolicyMetricDataQueryInput is an input type that accepts ScalingPolicyMetricDataQueryArgs and ScalingPolicyMetricDataQueryOutput values. You can construct a concrete instance of `ScalingPolicyMetricDataQueryInput` via:

ScalingPolicyMetricDataQueryArgs{...}

type ScalingPolicyMetricDataQueryOutput added in v0.14.0

type ScalingPolicyMetricDataQueryOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricDataQueryOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) Expression added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) Id added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) Label added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) MetricStat added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) ReturnData added in v0.14.0

func (ScalingPolicyMetricDataQueryOutput) ToScalingPolicyMetricDataQueryOutput added in v0.14.0

func (o ScalingPolicyMetricDataQueryOutput) ToScalingPolicyMetricDataQueryOutput() ScalingPolicyMetricDataQueryOutput

func (ScalingPolicyMetricDataQueryOutput) ToScalingPolicyMetricDataQueryOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricDataQueryOutput) ToScalingPolicyMetricDataQueryOutputWithContext(ctx context.Context) ScalingPolicyMetricDataQueryOutput

type ScalingPolicyMetricDimension

type ScalingPolicyMetricDimension struct {
	Name  string `pulumi:"name"`
	Value string `pulumi:"value"`
}

type ScalingPolicyMetricDimensionArgs

type ScalingPolicyMetricDimensionArgs struct {
	Name  pulumi.StringInput `pulumi:"name"`
	Value pulumi.StringInput `pulumi:"value"`
}

func (ScalingPolicyMetricDimensionArgs) ElementType

func (ScalingPolicyMetricDimensionArgs) ToScalingPolicyMetricDimensionOutput

func (i ScalingPolicyMetricDimensionArgs) ToScalingPolicyMetricDimensionOutput() ScalingPolicyMetricDimensionOutput

func (ScalingPolicyMetricDimensionArgs) ToScalingPolicyMetricDimensionOutputWithContext

func (i ScalingPolicyMetricDimensionArgs) ToScalingPolicyMetricDimensionOutputWithContext(ctx context.Context) ScalingPolicyMetricDimensionOutput

type ScalingPolicyMetricDimensionArray

type ScalingPolicyMetricDimensionArray []ScalingPolicyMetricDimensionInput

func (ScalingPolicyMetricDimensionArray) ElementType

func (ScalingPolicyMetricDimensionArray) ToScalingPolicyMetricDimensionArrayOutput

func (i ScalingPolicyMetricDimensionArray) ToScalingPolicyMetricDimensionArrayOutput() ScalingPolicyMetricDimensionArrayOutput

func (ScalingPolicyMetricDimensionArray) ToScalingPolicyMetricDimensionArrayOutputWithContext

func (i ScalingPolicyMetricDimensionArray) ToScalingPolicyMetricDimensionArrayOutputWithContext(ctx context.Context) ScalingPolicyMetricDimensionArrayOutput

type ScalingPolicyMetricDimensionArrayInput

type ScalingPolicyMetricDimensionArrayInput interface {
	pulumi.Input

	ToScalingPolicyMetricDimensionArrayOutput() ScalingPolicyMetricDimensionArrayOutput
	ToScalingPolicyMetricDimensionArrayOutputWithContext(context.Context) ScalingPolicyMetricDimensionArrayOutput
}

ScalingPolicyMetricDimensionArrayInput is an input type that accepts ScalingPolicyMetricDimensionArray and ScalingPolicyMetricDimensionArrayOutput values. You can construct a concrete instance of `ScalingPolicyMetricDimensionArrayInput` via:

ScalingPolicyMetricDimensionArray{ ScalingPolicyMetricDimensionArgs{...} }

type ScalingPolicyMetricDimensionArrayOutput

type ScalingPolicyMetricDimensionArrayOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricDimensionArrayOutput) ElementType

func (ScalingPolicyMetricDimensionArrayOutput) Index

func (ScalingPolicyMetricDimensionArrayOutput) ToScalingPolicyMetricDimensionArrayOutput

func (o ScalingPolicyMetricDimensionArrayOutput) ToScalingPolicyMetricDimensionArrayOutput() ScalingPolicyMetricDimensionArrayOutput

func (ScalingPolicyMetricDimensionArrayOutput) ToScalingPolicyMetricDimensionArrayOutputWithContext

func (o ScalingPolicyMetricDimensionArrayOutput) ToScalingPolicyMetricDimensionArrayOutputWithContext(ctx context.Context) ScalingPolicyMetricDimensionArrayOutput

type ScalingPolicyMetricDimensionInput

type ScalingPolicyMetricDimensionInput interface {
	pulumi.Input

	ToScalingPolicyMetricDimensionOutput() ScalingPolicyMetricDimensionOutput
	ToScalingPolicyMetricDimensionOutputWithContext(context.Context) ScalingPolicyMetricDimensionOutput
}

ScalingPolicyMetricDimensionInput is an input type that accepts ScalingPolicyMetricDimensionArgs and ScalingPolicyMetricDimensionOutput values. You can construct a concrete instance of `ScalingPolicyMetricDimensionInput` via:

ScalingPolicyMetricDimensionArgs{...}

type ScalingPolicyMetricDimensionOutput

type ScalingPolicyMetricDimensionOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricDimensionOutput) ElementType

func (ScalingPolicyMetricDimensionOutput) Name

func (ScalingPolicyMetricDimensionOutput) ToScalingPolicyMetricDimensionOutput

func (o ScalingPolicyMetricDimensionOutput) ToScalingPolicyMetricDimensionOutput() ScalingPolicyMetricDimensionOutput

func (ScalingPolicyMetricDimensionOutput) ToScalingPolicyMetricDimensionOutputWithContext

func (o ScalingPolicyMetricDimensionOutput) ToScalingPolicyMetricDimensionOutputWithContext(ctx context.Context) ScalingPolicyMetricDimensionOutput

func (ScalingPolicyMetricDimensionOutput) Value

type ScalingPolicyMetricInput added in v0.14.0

type ScalingPolicyMetricInput interface {
	pulumi.Input

	ToScalingPolicyMetricOutput() ScalingPolicyMetricOutput
	ToScalingPolicyMetricOutputWithContext(context.Context) ScalingPolicyMetricOutput
}

ScalingPolicyMetricInput is an input type that accepts ScalingPolicyMetricArgs and ScalingPolicyMetricOutput values. You can construct a concrete instance of `ScalingPolicyMetricInput` via:

ScalingPolicyMetricArgs{...}

type ScalingPolicyMetricOutput added in v0.14.0

type ScalingPolicyMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricOutput) Dimensions added in v0.14.0

func (ScalingPolicyMetricOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricOutput) ElementType() reflect.Type

func (ScalingPolicyMetricOutput) MetricName added in v0.14.0

func (ScalingPolicyMetricOutput) Namespace added in v0.14.0

func (ScalingPolicyMetricOutput) ToScalingPolicyMetricOutput added in v0.14.0

func (o ScalingPolicyMetricOutput) ToScalingPolicyMetricOutput() ScalingPolicyMetricOutput

func (ScalingPolicyMetricOutput) ToScalingPolicyMetricOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricOutput) ToScalingPolicyMetricOutputWithContext(ctx context.Context) ScalingPolicyMetricOutput

func (ScalingPolicyMetricOutput) ToScalingPolicyMetricPtrOutput added in v0.14.0

func (o ScalingPolicyMetricOutput) ToScalingPolicyMetricPtrOutput() ScalingPolicyMetricPtrOutput

func (ScalingPolicyMetricOutput) ToScalingPolicyMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricOutput) ToScalingPolicyMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricPtrOutput

type ScalingPolicyMetricPtrInput added in v0.14.0

type ScalingPolicyMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyMetricPtrOutput() ScalingPolicyMetricPtrOutput
	ToScalingPolicyMetricPtrOutputWithContext(context.Context) ScalingPolicyMetricPtrOutput
}

ScalingPolicyMetricPtrInput is an input type that accepts ScalingPolicyMetricArgs, ScalingPolicyMetricPtr and ScalingPolicyMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyMetricPtrInput` via:

        ScalingPolicyMetricArgs{...}

or:

        nil

func ScalingPolicyMetricPtr added in v0.14.0

func ScalingPolicyMetricPtr(v *ScalingPolicyMetricArgs) ScalingPolicyMetricPtrInput

type ScalingPolicyMetricPtrOutput added in v0.14.0

type ScalingPolicyMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricPtrOutput) Dimensions added in v0.14.0

func (ScalingPolicyMetricPtrOutput) Elem added in v0.14.0

func (ScalingPolicyMetricPtrOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricPtrOutput) MetricName added in v0.14.0

func (ScalingPolicyMetricPtrOutput) Namespace added in v0.14.0

func (ScalingPolicyMetricPtrOutput) ToScalingPolicyMetricPtrOutput added in v0.14.0

func (o ScalingPolicyMetricPtrOutput) ToScalingPolicyMetricPtrOutput() ScalingPolicyMetricPtrOutput

func (ScalingPolicyMetricPtrOutput) ToScalingPolicyMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricPtrOutput) ToScalingPolicyMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricPtrOutput

type ScalingPolicyMetricStat added in v0.14.0

type ScalingPolicyMetricStat struct {
	Metric ScalingPolicyMetric `pulumi:"metric"`
	Stat   string              `pulumi:"stat"`
	Unit   *string             `pulumi:"unit"`
}

type ScalingPolicyMetricStatArgs added in v0.14.0

type ScalingPolicyMetricStatArgs struct {
	Metric ScalingPolicyMetricInput `pulumi:"metric"`
	Stat   pulumi.StringInput       `pulumi:"stat"`
	Unit   pulumi.StringPtrInput    `pulumi:"unit"`
}

func (ScalingPolicyMetricStatArgs) ElementType added in v0.14.0

func (ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatOutput added in v0.14.0

func (i ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatOutput() ScalingPolicyMetricStatOutput

func (ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatOutputWithContext(ctx context.Context) ScalingPolicyMetricStatOutput

func (ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatPtrOutput added in v0.14.0

func (i ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatPtrOutput() ScalingPolicyMetricStatPtrOutput

func (ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatPtrOutputWithContext added in v0.14.0

func (i ScalingPolicyMetricStatArgs) ToScalingPolicyMetricStatPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricStatPtrOutput

type ScalingPolicyMetricStatInput added in v0.14.0

type ScalingPolicyMetricStatInput interface {
	pulumi.Input

	ToScalingPolicyMetricStatOutput() ScalingPolicyMetricStatOutput
	ToScalingPolicyMetricStatOutputWithContext(context.Context) ScalingPolicyMetricStatOutput
}

ScalingPolicyMetricStatInput is an input type that accepts ScalingPolicyMetricStatArgs and ScalingPolicyMetricStatOutput values. You can construct a concrete instance of `ScalingPolicyMetricStatInput` via:

ScalingPolicyMetricStatArgs{...}

type ScalingPolicyMetricStatOutput added in v0.14.0

type ScalingPolicyMetricStatOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricStatOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricStatOutput) Metric added in v0.14.0

func (ScalingPolicyMetricStatOutput) Stat added in v0.14.0

func (ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatOutput added in v0.14.0

func (o ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatOutput() ScalingPolicyMetricStatOutput

func (ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatOutputWithContext(ctx context.Context) ScalingPolicyMetricStatOutput

func (ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatPtrOutput added in v0.14.0

func (o ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatPtrOutput() ScalingPolicyMetricStatPtrOutput

func (ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricStatOutput) ToScalingPolicyMetricStatPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricStatPtrOutput

func (ScalingPolicyMetricStatOutput) Unit added in v0.14.0

type ScalingPolicyMetricStatPtrInput added in v0.14.0

type ScalingPolicyMetricStatPtrInput interface {
	pulumi.Input

	ToScalingPolicyMetricStatPtrOutput() ScalingPolicyMetricStatPtrOutput
	ToScalingPolicyMetricStatPtrOutputWithContext(context.Context) ScalingPolicyMetricStatPtrOutput
}

ScalingPolicyMetricStatPtrInput is an input type that accepts ScalingPolicyMetricStatArgs, ScalingPolicyMetricStatPtr and ScalingPolicyMetricStatPtrOutput values. You can construct a concrete instance of `ScalingPolicyMetricStatPtrInput` via:

        ScalingPolicyMetricStatArgs{...}

or:

        nil

func ScalingPolicyMetricStatPtr added in v0.14.0

func ScalingPolicyMetricStatPtr(v *ScalingPolicyMetricStatArgs) ScalingPolicyMetricStatPtrInput

type ScalingPolicyMetricStatPtrOutput added in v0.14.0

type ScalingPolicyMetricStatPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyMetricStatPtrOutput) Elem added in v0.14.0

func (ScalingPolicyMetricStatPtrOutput) ElementType added in v0.14.0

func (ScalingPolicyMetricStatPtrOutput) Metric added in v0.14.0

func (ScalingPolicyMetricStatPtrOutput) Stat added in v0.14.0

func (ScalingPolicyMetricStatPtrOutput) ToScalingPolicyMetricStatPtrOutput added in v0.14.0

func (o ScalingPolicyMetricStatPtrOutput) ToScalingPolicyMetricStatPtrOutput() ScalingPolicyMetricStatPtrOutput

func (ScalingPolicyMetricStatPtrOutput) ToScalingPolicyMetricStatPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyMetricStatPtrOutput) ToScalingPolicyMetricStatPtrOutputWithContext(ctx context.Context) ScalingPolicyMetricStatPtrOutput

func (ScalingPolicyMetricStatPtrOutput) Unit added in v0.14.0

type ScalingPolicyOutput

type ScalingPolicyOutput struct{ *pulumi.OutputState }

func (ScalingPolicyOutput) AdjustmentType added in v0.17.0

func (o ScalingPolicyOutput) AdjustmentType() pulumi.StringPtrOutput

Specifies how the scaling adjustment is interpreted. The valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.

func (ScalingPolicyOutput) Arn added in v0.21.0

The ARN of the AutoScaling scaling policy

func (ScalingPolicyOutput) AutoScalingGroupName added in v0.17.0

func (o ScalingPolicyOutput) AutoScalingGroupName() pulumi.StringOutput

The name of the Auto Scaling group.

func (ScalingPolicyOutput) Cooldown added in v0.17.0

The duration of the policy's cooldown period, in seconds. When a cooldown period is specified here, it overrides the default cooldown period defined for the Auto Scaling group.

func (ScalingPolicyOutput) ElementType

func (ScalingPolicyOutput) ElementType() reflect.Type

func (ScalingPolicyOutput) EstimatedInstanceWarmup added in v0.17.0

func (o ScalingPolicyOutput) EstimatedInstanceWarmup() pulumi.IntPtrOutput

The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. If not provided, the default is to use the value from the default cooldown period for the Auto Scaling group. Valid only if the policy type is TargetTrackingScaling or StepScaling.

func (ScalingPolicyOutput) MetricAggregationType added in v0.17.0

func (o ScalingPolicyOutput) MetricAggregationType() pulumi.StringPtrOutput

The aggregation type for the CloudWatch metrics. The valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average. Valid only if the policy type is StepScaling.

func (ScalingPolicyOutput) MinAdjustmentMagnitude added in v0.17.0

func (o ScalingPolicyOutput) MinAdjustmentMagnitude() pulumi.IntPtrOutput

The minimum value to scale by when the adjustment type is PercentChangeInCapacity. For example, suppose that you create a step scaling policy to scale out an Auto Scaling group by 25 percent and you specify a MinAdjustmentMagnitude of 2. If the group has 4 instances and the scaling policy is performed, 25 percent of 4 is 1. However, because you specified a MinAdjustmentMagnitude of 2, Amazon EC2 Auto Scaling scales out the group by 2 instances.

func (ScalingPolicyOutput) PolicyName added in v0.21.0

func (o ScalingPolicyOutput) PolicyName() pulumi.StringOutput

func (ScalingPolicyOutput) PolicyType added in v0.17.0

One of the following policy types: TargetTrackingScaling, StepScaling, SimpleScaling (default), PredictiveScaling

func (ScalingPolicyOutput) PredictiveScalingConfiguration added in v0.17.0

A predictive scaling policy. Includes support for predefined metrics only.

func (ScalingPolicyOutput) ScalingAdjustment added in v0.17.0

func (o ScalingPolicyOutput) ScalingAdjustment() pulumi.IntPtrOutput

The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value. Required if the policy type is SimpleScaling. (Not used with any other policy type.)

func (ScalingPolicyOutput) StepAdjustments added in v0.17.0

A set of adjustments that enable you to scale based on the size of the alarm breach. Required if the policy type is StepScaling. (Not used with any other policy type.)

func (ScalingPolicyOutput) TargetTrackingConfiguration added in v0.17.0

A target tracking scaling policy. Includes support for predefined or customized metrics.

func (ScalingPolicyOutput) ToScalingPolicyOutput

func (o ScalingPolicyOutput) ToScalingPolicyOutput() ScalingPolicyOutput

func (ScalingPolicyOutput) ToScalingPolicyOutputWithContext

func (o ScalingPolicyOutput) ToScalingPolicyOutputWithContext(ctx context.Context) ScalingPolicyOutput

type ScalingPolicyPredefinedMetricSpecification

type ScalingPolicyPredefinedMetricSpecification struct {
	PredefinedMetricType string  `pulumi:"predefinedMetricType"`
	ResourceLabel        *string `pulumi:"resourceLabel"`
}

type ScalingPolicyPredefinedMetricSpecificationArgs

type ScalingPolicyPredefinedMetricSpecificationArgs struct {
	PredefinedMetricType pulumi.StringInput    `pulumi:"predefinedMetricType"`
	ResourceLabel        pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (ScalingPolicyPredefinedMetricSpecificationArgs) ElementType

func (ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationOutput

func (i ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationOutput() ScalingPolicyPredefinedMetricSpecificationOutput

func (ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationOutputWithContext

func (i ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyPredefinedMetricSpecificationOutput

func (ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationPtrOutput

func (i ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationPtrOutput() ScalingPolicyPredefinedMetricSpecificationPtrOutput

func (ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext

func (i ScalingPolicyPredefinedMetricSpecificationArgs) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredefinedMetricSpecificationPtrOutput

type ScalingPolicyPredefinedMetricSpecificationInput

type ScalingPolicyPredefinedMetricSpecificationInput interface {
	pulumi.Input

	ToScalingPolicyPredefinedMetricSpecificationOutput() ScalingPolicyPredefinedMetricSpecificationOutput
	ToScalingPolicyPredefinedMetricSpecificationOutputWithContext(context.Context) ScalingPolicyPredefinedMetricSpecificationOutput
}

ScalingPolicyPredefinedMetricSpecificationInput is an input type that accepts ScalingPolicyPredefinedMetricSpecificationArgs and ScalingPolicyPredefinedMetricSpecificationOutput values. You can construct a concrete instance of `ScalingPolicyPredefinedMetricSpecificationInput` via:

ScalingPolicyPredefinedMetricSpecificationArgs{...}

type ScalingPolicyPredefinedMetricSpecificationOutput

type ScalingPolicyPredefinedMetricSpecificationOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredefinedMetricSpecificationOutput) ElementType

func (ScalingPolicyPredefinedMetricSpecificationOutput) PredefinedMetricType

func (ScalingPolicyPredefinedMetricSpecificationOutput) ResourceLabel

func (ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationOutput

func (o ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationOutput() ScalingPolicyPredefinedMetricSpecificationOutput

func (ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationOutputWithContext

func (o ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyPredefinedMetricSpecificationOutput

func (ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutput

func (o ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutput() ScalingPolicyPredefinedMetricSpecificationPtrOutput

func (ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext

func (o ScalingPolicyPredefinedMetricSpecificationOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredefinedMetricSpecificationPtrOutput

type ScalingPolicyPredefinedMetricSpecificationPtrInput

type ScalingPolicyPredefinedMetricSpecificationPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredefinedMetricSpecificationPtrOutput() ScalingPolicyPredefinedMetricSpecificationPtrOutput
	ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext(context.Context) ScalingPolicyPredefinedMetricSpecificationPtrOutput
}

ScalingPolicyPredefinedMetricSpecificationPtrInput is an input type that accepts ScalingPolicyPredefinedMetricSpecificationArgs, ScalingPolicyPredefinedMetricSpecificationPtr and ScalingPolicyPredefinedMetricSpecificationPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredefinedMetricSpecificationPtrInput` via:

        ScalingPolicyPredefinedMetricSpecificationArgs{...}

or:

        nil

type ScalingPolicyPredefinedMetricSpecificationPtrOutput

type ScalingPolicyPredefinedMetricSpecificationPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) Elem

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) ElementType

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) PredefinedMetricType

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) ResourceLabel

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutput

func (o ScalingPolicyPredefinedMetricSpecificationPtrOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutput() ScalingPolicyPredefinedMetricSpecificationPtrOutput

func (ScalingPolicyPredefinedMetricSpecificationPtrOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext

func (o ScalingPolicyPredefinedMetricSpecificationPtrOutput) ToScalingPolicyPredefinedMetricSpecificationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredefinedMetricSpecificationPtrOutput

type ScalingPolicyPredictiveScalingConfiguration

type ScalingPolicyPredictiveScalingConfiguration struct {
	MaxCapacityBreachBehavior *string                                             `pulumi:"maxCapacityBreachBehavior"`
	MaxCapacityBuffer         *int                                                `pulumi:"maxCapacityBuffer"`
	MetricSpecifications      []ScalingPolicyPredictiveScalingMetricSpecification `pulumi:"metricSpecifications"`
	Mode                      *string                                             `pulumi:"mode"`
	SchedulingBufferTime      *int                                                `pulumi:"schedulingBufferTime"`
}

type ScalingPolicyPredictiveScalingConfigurationArgs

type ScalingPolicyPredictiveScalingConfigurationArgs struct {
	MaxCapacityBreachBehavior pulumi.StringPtrInput                                       `pulumi:"maxCapacityBreachBehavior"`
	MaxCapacityBuffer         pulumi.IntPtrInput                                          `pulumi:"maxCapacityBuffer"`
	MetricSpecifications      ScalingPolicyPredictiveScalingMetricSpecificationArrayInput `pulumi:"metricSpecifications"`
	Mode                      pulumi.StringPtrInput                                       `pulumi:"mode"`
	SchedulingBufferTime      pulumi.IntPtrInput                                          `pulumi:"schedulingBufferTime"`
}

func (ScalingPolicyPredictiveScalingConfigurationArgs) ElementType

func (ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationOutput

func (i ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationOutput() ScalingPolicyPredictiveScalingConfigurationOutput

func (ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationOutputWithContext

func (i ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingConfigurationOutput

func (ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationPtrOutput

func (i ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationPtrOutput() ScalingPolicyPredictiveScalingConfigurationPtrOutput

func (ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext

func (i ScalingPolicyPredictiveScalingConfigurationArgs) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingConfigurationPtrOutput

type ScalingPolicyPredictiveScalingConfigurationInput

type ScalingPolicyPredictiveScalingConfigurationInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingConfigurationOutput() ScalingPolicyPredictiveScalingConfigurationOutput
	ToScalingPolicyPredictiveScalingConfigurationOutputWithContext(context.Context) ScalingPolicyPredictiveScalingConfigurationOutput
}

ScalingPolicyPredictiveScalingConfigurationInput is an input type that accepts ScalingPolicyPredictiveScalingConfigurationArgs and ScalingPolicyPredictiveScalingConfigurationOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingConfigurationInput` via:

ScalingPolicyPredictiveScalingConfigurationArgs{...}

type ScalingPolicyPredictiveScalingConfigurationOutput

type ScalingPolicyPredictiveScalingConfigurationOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingConfigurationOutput) ElementType

func (ScalingPolicyPredictiveScalingConfigurationOutput) MaxCapacityBreachBehavior

func (ScalingPolicyPredictiveScalingConfigurationOutput) MaxCapacityBuffer

func (ScalingPolicyPredictiveScalingConfigurationOutput) MetricSpecifications

func (ScalingPolicyPredictiveScalingConfigurationOutput) Mode

func (ScalingPolicyPredictiveScalingConfigurationOutput) SchedulingBufferTime

func (ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationOutput

func (o ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationOutput() ScalingPolicyPredictiveScalingConfigurationOutput

func (ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationOutputWithContext

func (o ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingConfigurationOutput

func (ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutput

func (o ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutput() ScalingPolicyPredictiveScalingConfigurationPtrOutput

func (ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingConfigurationOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingConfigurationPtrOutput

type ScalingPolicyPredictiveScalingConfigurationPtrInput

type ScalingPolicyPredictiveScalingConfigurationPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingConfigurationPtrOutput() ScalingPolicyPredictiveScalingConfigurationPtrOutput
	ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingConfigurationPtrOutput
}

ScalingPolicyPredictiveScalingConfigurationPtrInput is an input type that accepts ScalingPolicyPredictiveScalingConfigurationArgs, ScalingPolicyPredictiveScalingConfigurationPtr and ScalingPolicyPredictiveScalingConfigurationPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingConfigurationPtrInput` via:

        ScalingPolicyPredictiveScalingConfigurationArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingConfigurationPtrOutput

type ScalingPolicyPredictiveScalingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) Elem

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) ElementType

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) MaxCapacityBreachBehavior

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) MaxCapacityBuffer

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) MetricSpecifications

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) Mode

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) SchedulingBufferTime

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutput

func (ScalingPolicyPredictiveScalingConfigurationPtrOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingConfigurationPtrOutput) ToScalingPolicyPredictiveScalingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingConfigurationPtrOutput

type ScalingPolicyPredictiveScalingCustomizedCapacityMetric added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetric struct {
	MetricDataQueries []ScalingPolicyMetricDataQuery `pulumi:"metricDataQueries"`
}

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs struct {
	MetricDataQueries ScalingPolicyMetricDataQueryArrayInput `pulumi:"metricDataQueries"`
}

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput() ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput
	ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput
}

ScalingPolicyPredictiveScalingCustomizedCapacityMetricInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs and ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedCapacityMetricInput` via:

ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs{...}

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedCapacityMetricOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput() ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput
	ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput
}

ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs, ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtr and ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrInput` via:

        ScalingPolicyPredictiveScalingCustomizedCapacityMetricArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) Elem added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedLoadMetric added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetric struct {
	MetricDataQueries []ScalingPolicyMetricDataQuery `pulumi:"metricDataQueries"`
}

type ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs struct {
	MetricDataQueries ScalingPolicyMetricDataQueryArrayInput `pulumi:"metricDataQueries"`
}

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput() ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedLoadMetricInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetricInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutput() ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput
	ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput
}

ScalingPolicyPredictiveScalingCustomizedLoadMetricInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs and ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedLoadMetricInput` via:

ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs{...}

type ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedLoadMetricOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput() ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput
	ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput
}

ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs, ScalingPolicyPredictiveScalingCustomizedLoadMetricPtr and ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrInput` via:

        ScalingPolicyPredictiveScalingCustomizedLoadMetricArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) Elem added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedScalingMetric added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetric struct {
	MetricDataQueries []ScalingPolicyMetricDataQuery `pulumi:"metricDataQueries"`
}

type ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs struct {
	MetricDataQueries ScalingPolicyMetricDataQueryArrayInput `pulumi:"metricDataQueries"`
}

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext added in v0.14.0

func (i ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedScalingMetricInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetricInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutput() ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput
	ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput
}

ScalingPolicyPredictiveScalingCustomizedScalingMetricInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs and ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedScalingMetricInput` via:

ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs{...}

type ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedScalingMetricOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrInput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput() ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput
	ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput
}

ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrInput is an input type that accepts ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs, ScalingPolicyPredictiveScalingCustomizedScalingMetricPtr and ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrInput` via:

        ScalingPolicyPredictiveScalingCustomizedScalingMetricArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput added in v0.14.0

type ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) Elem added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) ElementType added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) MetricDataQueries added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput added in v0.14.0

func (ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext added in v0.14.0

func (o ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingMetricSpecification

type ScalingPolicyPredictiveScalingMetricSpecification struct {
	CustomizedCapacityMetricSpecification *ScalingPolicyPredictiveScalingCustomizedCapacityMetric `pulumi:"customizedCapacityMetricSpecification"`
	CustomizedLoadMetricSpecification     *ScalingPolicyPredictiveScalingCustomizedLoadMetric     `pulumi:"customizedLoadMetricSpecification"`
	CustomizedScalingMetricSpecification  *ScalingPolicyPredictiveScalingCustomizedScalingMetric  `pulumi:"customizedScalingMetricSpecification"`
	PredefinedLoadMetricSpecification     *ScalingPolicyPredictiveScalingPredefinedLoadMetric     `pulumi:"predefinedLoadMetricSpecification"`
	PredefinedMetricPairSpecification     *ScalingPolicyPredictiveScalingPredefinedMetricPair     `pulumi:"predefinedMetricPairSpecification"`
	PredefinedScalingMetricSpecification  *ScalingPolicyPredictiveScalingPredefinedScalingMetric  `pulumi:"predefinedScalingMetricSpecification"`
	TargetValue                           float64                                                 `pulumi:"targetValue"`
}

type ScalingPolicyPredictiveScalingMetricSpecificationArgs

type ScalingPolicyPredictiveScalingMetricSpecificationArgs struct {
	CustomizedCapacityMetricSpecification ScalingPolicyPredictiveScalingCustomizedCapacityMetricPtrInput `pulumi:"customizedCapacityMetricSpecification"`
	CustomizedLoadMetricSpecification     ScalingPolicyPredictiveScalingCustomizedLoadMetricPtrInput     `pulumi:"customizedLoadMetricSpecification"`
	CustomizedScalingMetricSpecification  ScalingPolicyPredictiveScalingCustomizedScalingMetricPtrInput  `pulumi:"customizedScalingMetricSpecification"`
	PredefinedLoadMetricSpecification     ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrInput     `pulumi:"predefinedLoadMetricSpecification"`
	PredefinedMetricPairSpecification     ScalingPolicyPredictiveScalingPredefinedMetricPairPtrInput     `pulumi:"predefinedMetricPairSpecification"`
	PredefinedScalingMetricSpecification  ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrInput  `pulumi:"predefinedScalingMetricSpecification"`
	TargetValue                           pulumi.Float64Input                                            `pulumi:"targetValue"`
}

func (ScalingPolicyPredictiveScalingMetricSpecificationArgs) ElementType

func (ScalingPolicyPredictiveScalingMetricSpecificationArgs) ToScalingPolicyPredictiveScalingMetricSpecificationOutput

func (i ScalingPolicyPredictiveScalingMetricSpecificationArgs) ToScalingPolicyPredictiveScalingMetricSpecificationOutput() ScalingPolicyPredictiveScalingMetricSpecificationOutput

func (ScalingPolicyPredictiveScalingMetricSpecificationArgs) ToScalingPolicyPredictiveScalingMetricSpecificationOutputWithContext

func (i ScalingPolicyPredictiveScalingMetricSpecificationArgs) ToScalingPolicyPredictiveScalingMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingMetricSpecificationOutput

type ScalingPolicyPredictiveScalingMetricSpecificationArray

type ScalingPolicyPredictiveScalingMetricSpecificationArray []ScalingPolicyPredictiveScalingMetricSpecificationInput

func (ScalingPolicyPredictiveScalingMetricSpecificationArray) ElementType

func (ScalingPolicyPredictiveScalingMetricSpecificationArray) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

func (i ScalingPolicyPredictiveScalingMetricSpecificationArray) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutput() ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

func (ScalingPolicyPredictiveScalingMetricSpecificationArray) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutputWithContext

func (i ScalingPolicyPredictiveScalingMetricSpecificationArray) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

type ScalingPolicyPredictiveScalingMetricSpecificationArrayInput

type ScalingPolicyPredictiveScalingMetricSpecificationArrayInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutput() ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput
	ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutputWithContext(context.Context) ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput
}

ScalingPolicyPredictiveScalingMetricSpecificationArrayInput is an input type that accepts ScalingPolicyPredictiveScalingMetricSpecificationArray and ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingMetricSpecificationArrayInput` via:

ScalingPolicyPredictiveScalingMetricSpecificationArray{ ScalingPolicyPredictiveScalingMetricSpecificationArgs{...} }

type ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

type ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput) ElementType

func (ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput) Index

func (ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

func (ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutputWithContext

func (o ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput) ToScalingPolicyPredictiveScalingMetricSpecificationArrayOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingMetricSpecificationArrayOutput

type ScalingPolicyPredictiveScalingMetricSpecificationInput

type ScalingPolicyPredictiveScalingMetricSpecificationInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingMetricSpecificationOutput() ScalingPolicyPredictiveScalingMetricSpecificationOutput
	ToScalingPolicyPredictiveScalingMetricSpecificationOutputWithContext(context.Context) ScalingPolicyPredictiveScalingMetricSpecificationOutput
}

ScalingPolicyPredictiveScalingMetricSpecificationInput is an input type that accepts ScalingPolicyPredictiveScalingMetricSpecificationArgs and ScalingPolicyPredictiveScalingMetricSpecificationOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingMetricSpecificationInput` via:

ScalingPolicyPredictiveScalingMetricSpecificationArgs{...}

type ScalingPolicyPredictiveScalingMetricSpecificationOutput

type ScalingPolicyPredictiveScalingMetricSpecificationOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) CustomizedCapacityMetricSpecification added in v0.14.0

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) CustomizedLoadMetricSpecification added in v0.14.0

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) CustomizedScalingMetricSpecification added in v0.14.0

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) ElementType

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) PredefinedLoadMetricSpecification

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) PredefinedMetricPairSpecification

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) PredefinedScalingMetricSpecification

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) TargetValue

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) ToScalingPolicyPredictiveScalingMetricSpecificationOutput

func (ScalingPolicyPredictiveScalingMetricSpecificationOutput) ToScalingPolicyPredictiveScalingMetricSpecificationOutputWithContext

func (o ScalingPolicyPredictiveScalingMetricSpecificationOutput) ToScalingPolicyPredictiveScalingMetricSpecificationOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingMetricSpecificationOutput

type ScalingPolicyPredictiveScalingPredefinedLoadMetric

type ScalingPolicyPredictiveScalingPredefinedLoadMetric struct {
	PredefinedMetricType string  `pulumi:"predefinedMetricType"`
	ResourceLabel        *string `pulumi:"resourceLabel"`
}

type ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs

type ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs struct {
	PredefinedMetricType pulumi.StringInput    `pulumi:"predefinedMetricType"`
	ResourceLabel        pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ElementType

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

func (i ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput() ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricInput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutput() ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput
	ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput
}

ScalingPolicyPredictiveScalingPredefinedLoadMetricInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs and ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedLoadMetricInput` via:

ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs{...}

type ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedLoadMetricOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrInput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput() ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput
	ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput
}

ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs, ScalingPolicyPredictiveScalingPredefinedLoadMetricPtr and ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrInput` via:

        ScalingPolicyPredictiveScalingPredefinedLoadMetricArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) Elem

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedLoadMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedMetricPair

type ScalingPolicyPredictiveScalingPredefinedMetricPair struct {
	PredefinedMetricType string  `pulumi:"predefinedMetricType"`
	ResourceLabel        *string `pulumi:"resourceLabel"`
}

type ScalingPolicyPredictiveScalingPredefinedMetricPairArgs

type ScalingPolicyPredictiveScalingPredefinedMetricPairArgs struct {
	PredefinedMetricType pulumi.StringInput    `pulumi:"predefinedMetricType"`
	ResourceLabel        pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ElementType

func (ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

func (i ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput() ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedMetricPairArgs) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

type ScalingPolicyPredictiveScalingPredefinedMetricPairInput

type ScalingPolicyPredictiveScalingPredefinedMetricPairInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedMetricPairOutput() ScalingPolicyPredictiveScalingPredefinedMetricPairOutput
	ToScalingPolicyPredictiveScalingPredefinedMetricPairOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairOutput
}

ScalingPolicyPredictiveScalingPredefinedMetricPairInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedMetricPairArgs and ScalingPolicyPredictiveScalingPredefinedMetricPairOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedMetricPairInput` via:

ScalingPolicyPredictiveScalingPredefinedMetricPairArgs{...}

type ScalingPolicyPredictiveScalingPredefinedMetricPairOutput

type ScalingPolicyPredictiveScalingPredefinedMetricPairOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedMetricPairOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

type ScalingPolicyPredictiveScalingPredefinedMetricPairPtrInput

type ScalingPolicyPredictiveScalingPredefinedMetricPairPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput() ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput
	ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput
}

ScalingPolicyPredictiveScalingPredefinedMetricPairPtrInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedMetricPairArgs, ScalingPolicyPredictiveScalingPredefinedMetricPairPtr and ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedMetricPairPtrInput` via:

        ScalingPolicyPredictiveScalingPredefinedMetricPairArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

type ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) Elem

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput) ToScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedMetricPairPtrOutput

type ScalingPolicyPredictiveScalingPredefinedScalingMetric

type ScalingPolicyPredictiveScalingPredefinedScalingMetric struct {
	PredefinedMetricType string  `pulumi:"predefinedMetricType"`
	ResourceLabel        *string `pulumi:"resourceLabel"`
}

type ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs

type ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs struct {
	PredefinedMetricType pulumi.StringInput    `pulumi:"predefinedMetricType"`
	ResourceLabel        pulumi.StringPtrInput `pulumi:"resourceLabel"`
}

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ElementType

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext

func (i ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricInput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutput() ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput
	ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput
}

ScalingPolicyPredictiveScalingPredefinedScalingMetricInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs and ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedScalingMetricInput` via:

ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs{...}

type ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedScalingMetricOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrInput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrInput interface {
	pulumi.Input

	ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput() ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput
	ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext(context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput
}

ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrInput is an input type that accepts ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs, ScalingPolicyPredictiveScalingPredefinedScalingMetricPtr and ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput values. You can construct a concrete instance of `ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrInput` via:

        ScalingPolicyPredictiveScalingPredefinedScalingMetricArgs{...}

or:

        nil

type ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

type ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) Elem

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) ElementType

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) PredefinedMetricType

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) ResourceLabel

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

func (ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext

func (o ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput) ToScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutputWithContext(ctx context.Context) ScalingPolicyPredictiveScalingPredefinedScalingMetricPtrOutput

type ScalingPolicyState

type ScalingPolicyState struct {
}

func (ScalingPolicyState) ElementType

func (ScalingPolicyState) ElementType() reflect.Type

type ScalingPolicyStepAdjustment

type ScalingPolicyStepAdjustment struct {
	MetricIntervalLowerBound *float64 `pulumi:"metricIntervalLowerBound"`
	MetricIntervalUpperBound *float64 `pulumi:"metricIntervalUpperBound"`
	ScalingAdjustment        int      `pulumi:"scalingAdjustment"`
}

type ScalingPolicyStepAdjustmentArgs

type ScalingPolicyStepAdjustmentArgs struct {
	MetricIntervalLowerBound pulumi.Float64PtrInput `pulumi:"metricIntervalLowerBound"`
	MetricIntervalUpperBound pulumi.Float64PtrInput `pulumi:"metricIntervalUpperBound"`
	ScalingAdjustment        pulumi.IntInput        `pulumi:"scalingAdjustment"`
}

func (ScalingPolicyStepAdjustmentArgs) ElementType

func (ScalingPolicyStepAdjustmentArgs) ToScalingPolicyStepAdjustmentOutput

func (i ScalingPolicyStepAdjustmentArgs) ToScalingPolicyStepAdjustmentOutput() ScalingPolicyStepAdjustmentOutput

func (ScalingPolicyStepAdjustmentArgs) ToScalingPolicyStepAdjustmentOutputWithContext

func (i ScalingPolicyStepAdjustmentArgs) ToScalingPolicyStepAdjustmentOutputWithContext(ctx context.Context) ScalingPolicyStepAdjustmentOutput

type ScalingPolicyStepAdjustmentArray

type ScalingPolicyStepAdjustmentArray []ScalingPolicyStepAdjustmentInput

func (ScalingPolicyStepAdjustmentArray) ElementType

func (ScalingPolicyStepAdjustmentArray) ToScalingPolicyStepAdjustmentArrayOutput

func (i ScalingPolicyStepAdjustmentArray) ToScalingPolicyStepAdjustmentArrayOutput() ScalingPolicyStepAdjustmentArrayOutput

func (ScalingPolicyStepAdjustmentArray) ToScalingPolicyStepAdjustmentArrayOutputWithContext

func (i ScalingPolicyStepAdjustmentArray) ToScalingPolicyStepAdjustmentArrayOutputWithContext(ctx context.Context) ScalingPolicyStepAdjustmentArrayOutput

type ScalingPolicyStepAdjustmentArrayInput

type ScalingPolicyStepAdjustmentArrayInput interface {
	pulumi.Input

	ToScalingPolicyStepAdjustmentArrayOutput() ScalingPolicyStepAdjustmentArrayOutput
	ToScalingPolicyStepAdjustmentArrayOutputWithContext(context.Context) ScalingPolicyStepAdjustmentArrayOutput
}

ScalingPolicyStepAdjustmentArrayInput is an input type that accepts ScalingPolicyStepAdjustmentArray and ScalingPolicyStepAdjustmentArrayOutput values. You can construct a concrete instance of `ScalingPolicyStepAdjustmentArrayInput` via:

ScalingPolicyStepAdjustmentArray{ ScalingPolicyStepAdjustmentArgs{...} }

type ScalingPolicyStepAdjustmentArrayOutput

type ScalingPolicyStepAdjustmentArrayOutput struct{ *pulumi.OutputState }

func (ScalingPolicyStepAdjustmentArrayOutput) ElementType

func (ScalingPolicyStepAdjustmentArrayOutput) Index

func (ScalingPolicyStepAdjustmentArrayOutput) ToScalingPolicyStepAdjustmentArrayOutput

func (o ScalingPolicyStepAdjustmentArrayOutput) ToScalingPolicyStepAdjustmentArrayOutput() ScalingPolicyStepAdjustmentArrayOutput

func (ScalingPolicyStepAdjustmentArrayOutput) ToScalingPolicyStepAdjustmentArrayOutputWithContext

func (o ScalingPolicyStepAdjustmentArrayOutput) ToScalingPolicyStepAdjustmentArrayOutputWithContext(ctx context.Context) ScalingPolicyStepAdjustmentArrayOutput

type ScalingPolicyStepAdjustmentInput

type ScalingPolicyStepAdjustmentInput interface {
	pulumi.Input

	ToScalingPolicyStepAdjustmentOutput() ScalingPolicyStepAdjustmentOutput
	ToScalingPolicyStepAdjustmentOutputWithContext(context.Context) ScalingPolicyStepAdjustmentOutput
}

ScalingPolicyStepAdjustmentInput is an input type that accepts ScalingPolicyStepAdjustmentArgs and ScalingPolicyStepAdjustmentOutput values. You can construct a concrete instance of `ScalingPolicyStepAdjustmentInput` via:

ScalingPolicyStepAdjustmentArgs{...}

type ScalingPolicyStepAdjustmentOutput

type ScalingPolicyStepAdjustmentOutput struct{ *pulumi.OutputState }

func (ScalingPolicyStepAdjustmentOutput) ElementType

func (ScalingPolicyStepAdjustmentOutput) MetricIntervalLowerBound

func (o ScalingPolicyStepAdjustmentOutput) MetricIntervalLowerBound() pulumi.Float64PtrOutput

func (ScalingPolicyStepAdjustmentOutput) MetricIntervalUpperBound

func (o ScalingPolicyStepAdjustmentOutput) MetricIntervalUpperBound() pulumi.Float64PtrOutput

func (ScalingPolicyStepAdjustmentOutput) ScalingAdjustment

func (o ScalingPolicyStepAdjustmentOutput) ScalingAdjustment() pulumi.IntOutput

func (ScalingPolicyStepAdjustmentOutput) ToScalingPolicyStepAdjustmentOutput

func (o ScalingPolicyStepAdjustmentOutput) ToScalingPolicyStepAdjustmentOutput() ScalingPolicyStepAdjustmentOutput

func (ScalingPolicyStepAdjustmentOutput) ToScalingPolicyStepAdjustmentOutputWithContext

func (o ScalingPolicyStepAdjustmentOutput) ToScalingPolicyStepAdjustmentOutputWithContext(ctx context.Context) ScalingPolicyStepAdjustmentOutput

type ScalingPolicyTargetTrackingConfiguration

type ScalingPolicyTargetTrackingConfiguration struct {
	CustomizedMetricSpecification *ScalingPolicyCustomizedMetricSpecification `pulumi:"customizedMetricSpecification"`
	DisableScaleIn                *bool                                       `pulumi:"disableScaleIn"`
	PredefinedMetricSpecification *ScalingPolicyPredefinedMetricSpecification `pulumi:"predefinedMetricSpecification"`
	TargetValue                   float64                                     `pulumi:"targetValue"`
}

type ScalingPolicyTargetTrackingConfigurationArgs

type ScalingPolicyTargetTrackingConfigurationArgs struct {
	CustomizedMetricSpecification ScalingPolicyCustomizedMetricSpecificationPtrInput `pulumi:"customizedMetricSpecification"`
	DisableScaleIn                pulumi.BoolPtrInput                                `pulumi:"disableScaleIn"`
	PredefinedMetricSpecification ScalingPolicyPredefinedMetricSpecificationPtrInput `pulumi:"predefinedMetricSpecification"`
	TargetValue                   pulumi.Float64Input                                `pulumi:"targetValue"`
}

func (ScalingPolicyTargetTrackingConfigurationArgs) ElementType

func (ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationOutput

func (i ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationOutput() ScalingPolicyTargetTrackingConfigurationOutput

func (ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationOutputWithContext

func (i ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationOutputWithContext(ctx context.Context) ScalingPolicyTargetTrackingConfigurationOutput

func (ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationPtrOutput

func (i ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationPtrOutput() ScalingPolicyTargetTrackingConfigurationPtrOutput

func (ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext

func (i ScalingPolicyTargetTrackingConfigurationArgs) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyTargetTrackingConfigurationPtrOutput

type ScalingPolicyTargetTrackingConfigurationInput

type ScalingPolicyTargetTrackingConfigurationInput interface {
	pulumi.Input

	ToScalingPolicyTargetTrackingConfigurationOutput() ScalingPolicyTargetTrackingConfigurationOutput
	ToScalingPolicyTargetTrackingConfigurationOutputWithContext(context.Context) ScalingPolicyTargetTrackingConfigurationOutput
}

ScalingPolicyTargetTrackingConfigurationInput is an input type that accepts ScalingPolicyTargetTrackingConfigurationArgs and ScalingPolicyTargetTrackingConfigurationOutput values. You can construct a concrete instance of `ScalingPolicyTargetTrackingConfigurationInput` via:

ScalingPolicyTargetTrackingConfigurationArgs{...}

type ScalingPolicyTargetTrackingConfigurationOutput

type ScalingPolicyTargetTrackingConfigurationOutput struct{ *pulumi.OutputState }

func (ScalingPolicyTargetTrackingConfigurationOutput) CustomizedMetricSpecification

func (ScalingPolicyTargetTrackingConfigurationOutput) DisableScaleIn

func (ScalingPolicyTargetTrackingConfigurationOutput) ElementType

func (ScalingPolicyTargetTrackingConfigurationOutput) PredefinedMetricSpecification

func (ScalingPolicyTargetTrackingConfigurationOutput) TargetValue

func (ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationOutput

func (o ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationOutput() ScalingPolicyTargetTrackingConfigurationOutput

func (ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationOutputWithContext

func (o ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationOutputWithContext(ctx context.Context) ScalingPolicyTargetTrackingConfigurationOutput

func (ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutput

func (o ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutput() ScalingPolicyTargetTrackingConfigurationPtrOutput

func (ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext

func (o ScalingPolicyTargetTrackingConfigurationOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyTargetTrackingConfigurationPtrOutput

type ScalingPolicyTargetTrackingConfigurationPtrInput

type ScalingPolicyTargetTrackingConfigurationPtrInput interface {
	pulumi.Input

	ToScalingPolicyTargetTrackingConfigurationPtrOutput() ScalingPolicyTargetTrackingConfigurationPtrOutput
	ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext(context.Context) ScalingPolicyTargetTrackingConfigurationPtrOutput
}

ScalingPolicyTargetTrackingConfigurationPtrInput is an input type that accepts ScalingPolicyTargetTrackingConfigurationArgs, ScalingPolicyTargetTrackingConfigurationPtr and ScalingPolicyTargetTrackingConfigurationPtrOutput values. You can construct a concrete instance of `ScalingPolicyTargetTrackingConfigurationPtrInput` via:

        ScalingPolicyTargetTrackingConfigurationArgs{...}

or:

        nil

type ScalingPolicyTargetTrackingConfigurationPtrOutput

type ScalingPolicyTargetTrackingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) CustomizedMetricSpecification

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) DisableScaleIn

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) Elem

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) ElementType

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) PredefinedMetricSpecification

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) TargetValue

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutput

func (o ScalingPolicyTargetTrackingConfigurationPtrOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutput() ScalingPolicyTargetTrackingConfigurationPtrOutput

func (ScalingPolicyTargetTrackingConfigurationPtrOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext

func (o ScalingPolicyTargetTrackingConfigurationPtrOutput) ToScalingPolicyTargetTrackingConfigurationPtrOutputWithContext(ctx context.Context) ScalingPolicyTargetTrackingConfigurationPtrOutput

type ScheduledAction

type ScheduledAction struct {
	pulumi.CustomResourceState

	// The name of the Auto Scaling group.
	AutoScalingGroupName pulumi.StringOutput `pulumi:"autoScalingGroupName"`
	// The desired capacity is the initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain.
	DesiredCapacity pulumi.IntPtrOutput `pulumi:"desiredCapacity"`
	// The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	EndTime pulumi.StringPtrOutput `pulumi:"endTime"`
	// The minimum size of the Auto Scaling group.
	MaxSize pulumi.IntPtrOutput `pulumi:"maxSize"`
	// The minimum size of the Auto Scaling group.
	MinSize pulumi.IntPtrOutput `pulumi:"minSize"`
	// The recurring schedule for the action, in Unix cron syntax format. When StartTime and EndTime are specified with Recurrence , they form the boundaries of when the recurring action starts and stops.
	Recurrence pulumi.StringPtrOutput `pulumi:"recurrence"`
	// Auto-generated unique identifier
	ScheduledActionName pulumi.StringOutput `pulumi:"scheduledActionName"`
	// The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	StartTime pulumi.StringPtrOutput `pulumi:"startTime"`
	// The time zone for the cron expression.
	TimeZone pulumi.StringPtrOutput `pulumi:"timeZone"`
}

The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes.

func GetScheduledAction

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

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

func NewScheduledAction

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

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

func (*ScheduledAction) ElementType

func (*ScheduledAction) ElementType() reflect.Type

func (*ScheduledAction) ToScheduledActionOutput

func (i *ScheduledAction) ToScheduledActionOutput() ScheduledActionOutput

func (*ScheduledAction) ToScheduledActionOutputWithContext

func (i *ScheduledAction) ToScheduledActionOutputWithContext(ctx context.Context) ScheduledActionOutput

type ScheduledActionArgs

type ScheduledActionArgs struct {
	// The name of the Auto Scaling group.
	AutoScalingGroupName pulumi.StringInput
	// The desired capacity is the initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain.
	DesiredCapacity pulumi.IntPtrInput
	// The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	EndTime pulumi.StringPtrInput
	// The minimum size of the Auto Scaling group.
	MaxSize pulumi.IntPtrInput
	// The minimum size of the Auto Scaling group.
	MinSize pulumi.IntPtrInput
	// The recurring schedule for the action, in Unix cron syntax format. When StartTime and EndTime are specified with Recurrence , they form the boundaries of when the recurring action starts and stops.
	Recurrence pulumi.StringPtrInput
	// The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.
	StartTime pulumi.StringPtrInput
	// The time zone for the cron expression.
	TimeZone pulumi.StringPtrInput
}

The set of arguments for constructing a ScheduledAction resource.

func (ScheduledActionArgs) ElementType

func (ScheduledActionArgs) ElementType() reflect.Type

type ScheduledActionInput

type ScheduledActionInput interface {
	pulumi.Input

	ToScheduledActionOutput() ScheduledActionOutput
	ToScheduledActionOutputWithContext(ctx context.Context) ScheduledActionOutput
}

type ScheduledActionOutput

type ScheduledActionOutput struct{ *pulumi.OutputState }

func (ScheduledActionOutput) AutoScalingGroupName added in v0.17.0

func (o ScheduledActionOutput) AutoScalingGroupName() pulumi.StringOutput

The name of the Auto Scaling group.

func (ScheduledActionOutput) DesiredCapacity added in v0.17.0

func (o ScheduledActionOutput) DesiredCapacity() pulumi.IntPtrOutput

The desired capacity is the initial capacity of the Auto Scaling group after the scheduled action runs and the capacity it attempts to maintain.

func (ScheduledActionOutput) ElementType

func (ScheduledActionOutput) ElementType() reflect.Type

func (ScheduledActionOutput) EndTime added in v0.17.0

The latest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

func (ScheduledActionOutput) MaxSize added in v0.17.0

The minimum size of the Auto Scaling group.

func (ScheduledActionOutput) MinSize added in v0.17.0

The minimum size of the Auto Scaling group.

func (ScheduledActionOutput) Recurrence added in v0.17.0

The recurring schedule for the action, in Unix cron syntax format. When StartTime and EndTime are specified with Recurrence , they form the boundaries of when the recurring action starts and stops.

func (ScheduledActionOutput) ScheduledActionName added in v0.39.0

func (o ScheduledActionOutput) ScheduledActionName() pulumi.StringOutput

Auto-generated unique identifier

func (ScheduledActionOutput) StartTime added in v0.17.0

The earliest scheduled start time to return. If scheduled action names are provided, this parameter is ignored.

func (ScheduledActionOutput) TimeZone added in v0.17.0

The time zone for the cron expression.

func (ScheduledActionOutput) ToScheduledActionOutput

func (o ScheduledActionOutput) ToScheduledActionOutput() ScheduledActionOutput

func (ScheduledActionOutput) ToScheduledActionOutputWithContext

func (o ScheduledActionOutput) ToScheduledActionOutputWithContext(ctx context.Context) ScheduledActionOutput

type ScheduledActionState

type ScheduledActionState struct {
}

func (ScheduledActionState) ElementType

func (ScheduledActionState) ElementType() reflect.Type

type WarmPool

type WarmPool struct {
	pulumi.CustomResourceState

	AutoScalingGroupName     pulumi.StringOutput                  `pulumi:"autoScalingGroupName"`
	InstanceReusePolicy      WarmPoolInstanceReusePolicyPtrOutput `pulumi:"instanceReusePolicy"`
	MaxGroupPreparedCapacity pulumi.IntPtrOutput                  `pulumi:"maxGroupPreparedCapacity"`
	MinSize                  pulumi.IntPtrOutput                  `pulumi:"minSize"`
	PoolState                pulumi.StringPtrOutput               `pulumi:"poolState"`
}

Resource schema for AWS::AutoScaling::WarmPool.

func GetWarmPool

func GetWarmPool(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WarmPoolState, opts ...pulumi.ResourceOption) (*WarmPool, error)

GetWarmPool gets an existing WarmPool 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 NewWarmPool

func NewWarmPool(ctx *pulumi.Context,
	name string, args *WarmPoolArgs, opts ...pulumi.ResourceOption) (*WarmPool, error)

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

func (*WarmPool) ElementType

func (*WarmPool) ElementType() reflect.Type

func (*WarmPool) ToWarmPoolOutput

func (i *WarmPool) ToWarmPoolOutput() WarmPoolOutput

func (*WarmPool) ToWarmPoolOutputWithContext

func (i *WarmPool) ToWarmPoolOutputWithContext(ctx context.Context) WarmPoolOutput

type WarmPoolArgs

type WarmPoolArgs struct {
	AutoScalingGroupName     pulumi.StringInput
	InstanceReusePolicy      WarmPoolInstanceReusePolicyPtrInput
	MaxGroupPreparedCapacity pulumi.IntPtrInput
	MinSize                  pulumi.IntPtrInput
	PoolState                pulumi.StringPtrInput
}

The set of arguments for constructing a WarmPool resource.

func (WarmPoolArgs) ElementType

func (WarmPoolArgs) ElementType() reflect.Type

type WarmPoolInput

type WarmPoolInput interface {
	pulumi.Input

	ToWarmPoolOutput() WarmPoolOutput
	ToWarmPoolOutputWithContext(ctx context.Context) WarmPoolOutput
}

type WarmPoolInstanceReusePolicy added in v0.11.0

type WarmPoolInstanceReusePolicy struct {
	ReuseOnScaleIn *bool `pulumi:"reuseOnScaleIn"`
}

type WarmPoolInstanceReusePolicyArgs added in v0.11.0

type WarmPoolInstanceReusePolicyArgs struct {
	ReuseOnScaleIn pulumi.BoolPtrInput `pulumi:"reuseOnScaleIn"`
}

func (WarmPoolInstanceReusePolicyArgs) ElementType added in v0.11.0

func (WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyOutput added in v0.11.0

func (i WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyOutput() WarmPoolInstanceReusePolicyOutput

func (WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyOutputWithContext added in v0.11.0

func (i WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyOutputWithContext(ctx context.Context) WarmPoolInstanceReusePolicyOutput

func (WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyPtrOutput added in v0.11.0

func (i WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyPtrOutput() WarmPoolInstanceReusePolicyPtrOutput

func (WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyPtrOutputWithContext added in v0.11.0

func (i WarmPoolInstanceReusePolicyArgs) ToWarmPoolInstanceReusePolicyPtrOutputWithContext(ctx context.Context) WarmPoolInstanceReusePolicyPtrOutput

type WarmPoolInstanceReusePolicyInput added in v0.11.0

type WarmPoolInstanceReusePolicyInput interface {
	pulumi.Input

	ToWarmPoolInstanceReusePolicyOutput() WarmPoolInstanceReusePolicyOutput
	ToWarmPoolInstanceReusePolicyOutputWithContext(context.Context) WarmPoolInstanceReusePolicyOutput
}

WarmPoolInstanceReusePolicyInput is an input type that accepts WarmPoolInstanceReusePolicyArgs and WarmPoolInstanceReusePolicyOutput values. You can construct a concrete instance of `WarmPoolInstanceReusePolicyInput` via:

WarmPoolInstanceReusePolicyArgs{...}

type WarmPoolInstanceReusePolicyOutput added in v0.11.0

type WarmPoolInstanceReusePolicyOutput struct{ *pulumi.OutputState }

func (WarmPoolInstanceReusePolicyOutput) ElementType added in v0.11.0

func (WarmPoolInstanceReusePolicyOutput) ReuseOnScaleIn added in v0.11.0

func (WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyOutput added in v0.11.0

func (o WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyOutput() WarmPoolInstanceReusePolicyOutput

func (WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyOutputWithContext added in v0.11.0

func (o WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyOutputWithContext(ctx context.Context) WarmPoolInstanceReusePolicyOutput

func (WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyPtrOutput added in v0.11.0

func (o WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyPtrOutput() WarmPoolInstanceReusePolicyPtrOutput

func (WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyPtrOutputWithContext added in v0.11.0

func (o WarmPoolInstanceReusePolicyOutput) ToWarmPoolInstanceReusePolicyPtrOutputWithContext(ctx context.Context) WarmPoolInstanceReusePolicyPtrOutput

type WarmPoolInstanceReusePolicyPtrInput added in v0.11.0

type WarmPoolInstanceReusePolicyPtrInput interface {
	pulumi.Input

	ToWarmPoolInstanceReusePolicyPtrOutput() WarmPoolInstanceReusePolicyPtrOutput
	ToWarmPoolInstanceReusePolicyPtrOutputWithContext(context.Context) WarmPoolInstanceReusePolicyPtrOutput
}

WarmPoolInstanceReusePolicyPtrInput is an input type that accepts WarmPoolInstanceReusePolicyArgs, WarmPoolInstanceReusePolicyPtr and WarmPoolInstanceReusePolicyPtrOutput values. You can construct a concrete instance of `WarmPoolInstanceReusePolicyPtrInput` via:

        WarmPoolInstanceReusePolicyArgs{...}

or:

        nil

func WarmPoolInstanceReusePolicyPtr added in v0.11.0

type WarmPoolInstanceReusePolicyPtrOutput added in v0.11.0

type WarmPoolInstanceReusePolicyPtrOutput struct{ *pulumi.OutputState }

func (WarmPoolInstanceReusePolicyPtrOutput) Elem added in v0.11.0

func (WarmPoolInstanceReusePolicyPtrOutput) ElementType added in v0.11.0

func (WarmPoolInstanceReusePolicyPtrOutput) ReuseOnScaleIn added in v0.11.0

func (WarmPoolInstanceReusePolicyPtrOutput) ToWarmPoolInstanceReusePolicyPtrOutput added in v0.11.0

func (o WarmPoolInstanceReusePolicyPtrOutput) ToWarmPoolInstanceReusePolicyPtrOutput() WarmPoolInstanceReusePolicyPtrOutput

func (WarmPoolInstanceReusePolicyPtrOutput) ToWarmPoolInstanceReusePolicyPtrOutputWithContext added in v0.11.0

func (o WarmPoolInstanceReusePolicyPtrOutput) ToWarmPoolInstanceReusePolicyPtrOutputWithContext(ctx context.Context) WarmPoolInstanceReusePolicyPtrOutput

type WarmPoolOutput

type WarmPoolOutput struct{ *pulumi.OutputState }

func (WarmPoolOutput) AutoScalingGroupName added in v0.17.0

func (o WarmPoolOutput) AutoScalingGroupName() pulumi.StringOutput

func (WarmPoolOutput) ElementType

func (WarmPoolOutput) ElementType() reflect.Type

func (WarmPoolOutput) InstanceReusePolicy added in v0.17.0

func (o WarmPoolOutput) InstanceReusePolicy() WarmPoolInstanceReusePolicyPtrOutput

func (WarmPoolOutput) MaxGroupPreparedCapacity added in v0.17.0

func (o WarmPoolOutput) MaxGroupPreparedCapacity() pulumi.IntPtrOutput

func (WarmPoolOutput) MinSize added in v0.17.0

func (o WarmPoolOutput) MinSize() pulumi.IntPtrOutput

func (WarmPoolOutput) PoolState added in v0.17.0

func (o WarmPoolOutput) PoolState() pulumi.StringPtrOutput

func (WarmPoolOutput) ToWarmPoolOutput

func (o WarmPoolOutput) ToWarmPoolOutput() WarmPoolOutput

func (WarmPoolOutput) ToWarmPoolOutputWithContext

func (o WarmPoolOutput) ToWarmPoolOutputWithContext(ctx context.Context) WarmPoolOutput

type WarmPoolState

type WarmPoolState struct {
}

func (WarmPoolState) ElementType

func (WarmPoolState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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