UNPKG

@pulumi/aws-native

Version:

The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)

188 lines (187 loc) 8.11 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances. */ export declare class LaunchConfiguration extends pulumi.CustomResource { /** * Get an existing LaunchConfiguration resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): LaunchConfiguration; /** * Returns true if the given object is an instance of LaunchConfiguration. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is LaunchConfiguration; /** * 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. */ readonly associatePublicIpAddress: pulumi.Output<boolean | undefined>; /** * Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. */ readonly blockDeviceMappings: pulumi.Output<outputs.autoscaling.LaunchConfigurationBlockDeviceMapping[] | undefined>; /** * The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. */ readonly classicLinkVpcId: pulumi.Output<string | undefined>; /** * The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property. */ readonly classicLinkVpcSecurityGroups: pulumi.Output<string[] | undefined>; /** * Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false). */ readonly ebsOptimized: pulumi.Output<boolean | undefined>; /** * 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. */ readonly iamInstanceProfile: pulumi.Output<string | undefined>; /** * Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration. */ readonly imageId: pulumi.Output<string>; /** * The ID of the Amazon EC2 instance you want to use to create the launch configuration. */ readonly instanceId: pulumi.Output<string | undefined>; /** * Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring. */ readonly instanceMonitoring: pulumi.Output<boolean | undefined>; /** * Specifies the instance type of the EC2 instance. */ readonly instanceType: pulumi.Output<string>; /** * Provides the ID of the kernel associated with the EC2 AMI. */ readonly kernelId: pulumi.Output<string | undefined>; /** * Provides the name of the EC2 key pair. */ readonly keyName: pulumi.Output<string | undefined>; /** * The name of the launch configuration. This name must be unique per Region per account. */ readonly launchConfigurationName: pulumi.Output<string | undefined>; /** * The metadata options for the instances. */ readonly metadataOptions: pulumi.Output<outputs.autoscaling.LaunchConfigurationMetadataOptions | undefined>; /** * The tenancy of the instance, either default or dedicated. */ readonly placementTenancy: pulumi.Output<string | undefined>; /** * The ID of the RAM disk to select. */ readonly ramDiskId: pulumi.Output<string | undefined>; /** * A list that contains the security groups to assign to the instances in the Auto Scaling group. */ readonly securityGroups: pulumi.Output<string[] | undefined>; /** * The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request. */ readonly spotPrice: pulumi.Output<string | undefined>; /** * The Base64-encoded user data to make available to the launched EC2 instances. */ readonly userData: pulumi.Output<string | undefined>; /** * Create a LaunchConfiguration resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: LaunchConfigurationArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a LaunchConfiguration resource. */ export interface LaunchConfigurationArgs { /** * 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.Input<boolean>; /** * Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. */ blockDeviceMappings?: pulumi.Input<pulumi.Input<inputs.autoscaling.LaunchConfigurationBlockDeviceMappingArgs>[]>; /** * The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances to. */ classicLinkVpcId?: pulumi.Input<string>; /** * The IDs of one or more security groups for the VPC that you specified in the ClassicLinkVPCId property. */ classicLinkVpcSecurityGroups?: pulumi.Input<pulumi.Input<string>[]>; /** * Specifies whether the launch configuration is optimized for EBS I/O (true) or not (false). */ ebsOptimized?: pulumi.Input<boolean>; /** * 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.Input<string>; /** * Provides the unique ID of the Amazon Machine Image (AMI) that was assigned during registration. */ imageId: pulumi.Input<string>; /** * The ID of the Amazon EC2 instance you want to use to create the launch configuration. */ instanceId?: pulumi.Input<string>; /** * Controls whether instances in this group are launched with detailed (true) or basic (false) monitoring. */ instanceMonitoring?: pulumi.Input<boolean>; /** * Specifies the instance type of the EC2 instance. */ instanceType: pulumi.Input<string>; /** * Provides the ID of the kernel associated with the EC2 AMI. */ kernelId?: pulumi.Input<string>; /** * Provides the name of the EC2 key pair. */ keyName?: pulumi.Input<string>; /** * The name of the launch configuration. This name must be unique per Region per account. */ launchConfigurationName?: pulumi.Input<string>; /** * The metadata options for the instances. */ metadataOptions?: pulumi.Input<inputs.autoscaling.LaunchConfigurationMetadataOptionsArgs>; /** * The tenancy of the instance, either default or dedicated. */ placementTenancy?: pulumi.Input<string>; /** * The ID of the RAM disk to select. */ ramDiskId?: pulumi.Input<string>; /** * A list that contains the security groups to assign to the instances in the Auto Scaling group. */ securityGroups?: pulumi.Input<pulumi.Input<string>[]>; /** * The maximum hourly price you are willing to pay for any Spot Instances launched to fulfill the request. */ spotPrice?: pulumi.Input<string>; /** * The Base64-encoded user data to make available to the launched EC2 instances. */ userData?: pulumi.Input<string>; }