Show / Hide Table of Contents

Interface ISsmParameterImageOptions

Properties for GenericSsmParameterImage.

Namespace: Amazon.CDK.AWS.EC2
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface ISsmParameterImageOptions
Syntax (vb)
Public Interface ISsmParameterImageOptions
Remarks

ExampleMetadata: lit=aws-ec2/test/example.images.lit.ts infused

Examples
// Pick the right Amazon Linux edition. All arguments shown are optional
            // and will default to these values when omitted.
            var amznLinux = MachineImage.LatestAmazonLinux(new AmazonLinuxImageProps {
                Generation = AmazonLinuxGeneration.AMAZON_LINUX,
                Edition = AmazonLinuxEdition.STANDARD,
                Virtualization = AmazonLinuxVirt.HVM,
                Storage = AmazonLinuxStorage.GENERAL_PURPOSE,
                CpuType = AmazonLinuxCpuType.X86_64
            });

            // Pick a Windows edition to use
            var windows = MachineImage.LatestWindows(WindowsVersion.WINDOWS_SERVER_2019_ENGLISH_FULL_BASE);

            // Read AMI id from SSM parameter store
            var ssm = MachineImage.FromSsmParameter("/my/ami", new SsmParameterImageOptions { Os = OperatingSystemType.LINUX });

            // Look up the most recent image matching a set of AMI filters.
            // In this case, look up the NAT instance AMI, by using a wildcard
            // in the 'name' field:
            var natAmi = MachineImage.Lookup(new LookupMachineImageProps {
                Name = "amzn-ami-vpc-nat-*",
                Owners = new [] { "amazon" }
            });

            // For other custom (Linux) images, instantiate a `GenericLinuxImage` with
            // a map giving the AMI to in for each region:
            var linux = MachineImage.GenericLinux(new Dictionary<string, string> {
                { "us-east-1", "ami-97785bed" },
                { "eu-west-1", "ami-12345678" }
            });

            // For other custom (Windows) images, instantiate a `GenericWindowsImage` with
            // a map giving the AMI to in for each region:
            var genericWindows = MachineImage.GenericWindows(new Dictionary<string, string> {
                { "us-east-1", "ami-97785bed" },
                { "eu-west-1", "ami-12345678" }
            });

Synopsis

Properties

AdditionalCacheKey

Adds an additional discriminator to the cdk.context.json cache key.

CachedInContext

Whether the AMI ID is cached to be stable between deployments.

Os

Operating system.

ParameterVersion

The version of the SSM parameter.

UserData

Custom UserData.

Properties

AdditionalCacheKey

Adds an additional discriminator to the cdk.context.json cache key.

string? AdditionalCacheKey { get; }
Property Value

string

Remarks

Default: - no additional cache key

CachedInContext

Whether the AMI ID is cached to be stable between deployments.

bool? CachedInContext { get; }
Property Value

bool?

Remarks

By default, the newest image is used on each deployment. This will cause instances to be replaced whenever a new version is released, and may cause downtime if there aren't enough running instances in the AutoScalingGroup to reschedule the tasks on.

If set to true, the AMI ID will be cached in cdk.context.json and the same value will be used on future runs. Your instances will not be replaced but your AMI version will grow old over time. To refresh the AMI lookup, you will have to evict the value from the cache using the cdk context command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information.

Can not be set to true in environment-agnostic stacks.

Default: false

Os

Operating system.

OperatingSystemType? Os { get; }
Property Value

OperatingSystemType?

Remarks

Default: OperatingSystemType.LINUX

ParameterVersion

The version of the SSM parameter.

string? ParameterVersion { get; }
Property Value

string

Remarks

Default: no version specified.

UserData

Custom UserData.

UserData? UserData { get; }
Property Value

UserData

Remarks

Default: - UserData appropriate for the OS

Back to top Generated by DocFX