Experimental
@aws-cdk/aws-imagebuilder-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.
AmiDistribution Struct
The regional distribution settings to use for an AMI build.
Example
ts
const infrastructureConfiguration = new imagebuilder.InfrastructureConfiguration(this, 'Infrastructure', {
infrastructureConfigurationName: 'production-infrastructure',
instanceTypes: [
ec2.InstanceType.of(ec2.InstanceClass.COMPUTE7_INTEL, ec2.InstanceSize.LARGE)
],
vpc: vpc,
subnetSelection: { subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }
});
const distributionConfiguration = new imagebuilder.DistributionConfiguration(this, 'Distribution');
distributionConfiguration.addAmiDistributions({
amiName: 'production-ami-{{ imagebuilder:buildDate }}',
amiTargetAccountIds: ['123456789012', '098765432109']
});
const productionPipeline = new imagebuilder.ImagePipeline(this, 'ProductionPipeline', {
recipe: exampleImageRecipe,
infrastructureConfiguration: infrastructureConfiguration,
distributionConfiguration: distributionConfiguration
});
Properties
amiDescriptionoptionalstringami_descriptionoptionalstramiDescriptionoptionalStringAmiDescriptionoptionalstringAmiDescriptionoptional*string= None#The description of the AMI.
amiKmsKeyoptionalIKeyami_kms_keyoptionalIKeyamiKmsKeyoptionalIKeyAmiKmsKeyoptionalIKeyAmiKmsKeyoptionalIKey= None#The KMS key to encrypt the distributed AMI with.
amiLaunchPermissionoptionalAmiLaunchPermissionami_launch_permissionoptionalAmiLaunchPermissionamiLaunchPermissionoptionalAmiLaunchPermissionAmiLaunchPermissionoptionalAmiLaunchPermissionAmiLaunchPermissionoptionalAmiLaunchPermission= None#The launch permissions for the AMI, defining which principals are allowed to access the AMI.
amiNameoptionalstringami_nameoptionalstramiNameoptionalStringAmiNameoptionalstringAmiNameoptional*string#The name to use for the distributed AMIs.
Default: A name is generated from the image recipe name
amiTagsoptional{ [key: string]: string }ami_tagsoptionaltyping.Mapping[str, str]amiTagsoptionalMap<String, String>AmiTagsoptionalIDictionary<string, string>AmiTagsoptional*map[string]*string= None#The tags to apply to the distributed AMIs.
amiTargetAccountIdsoptionalstring[]ami_target_account_idsoptionaltyping.List[str]amiTargetAccountIdsoptionalList<String>AmiTargetAccountIdsoptionalstring[]AmiTargetAccountIdsoptional*[]*string= None#The account IDs to copy the output AMI to.
fastLaunchConfigurationsoptionalFastLaunchConfiguration[]fast_launch_configurationsoptionaltyping.List[FastLaunchConfiguration]fastLaunchConfigurationsoptionalList<FastLaunchConfiguration>FastLaunchConfigurationsoptionalFastLaunchConfiguration[]FastLaunchConfigurationsoptional*[]FastLaunchConfiguration= None#The fast launch configurations to use for enabling EC2 Fast Launch on the distributed Windows AMI.
launchTemplatesoptionalLaunchTemplateConfiguration[]launch_templatesoptionaltyping.List[LaunchTemplateConfiguration]launchTemplatesoptionalList<LaunchTemplateConfiguration>LaunchTemplatesoptionalLaunchTemplateConfiguration[]LaunchTemplatesoptional*[]LaunchTemplateConfiguration= None#The launch templates to apply the distributed AMI to.
licenseConfigurationArnsoptionalstring[]license_configuration_arnsoptionaltyping.List[str]licenseConfigurationArnsoptionalList<String>LicenseConfigurationArnsoptionalstring[]LicenseConfigurationArnsoptional*[]*string= None#The License Manager license configuration ARNs to apply to the distributed AMIs.
The target region to distribute AMIs to.
Default: The current region is used
ssmParametersoptionalSSMParameterConfigurations[]ssm_parametersoptionaltyping.List[SSMParameterConfigurations]ssmParametersoptionalList<SSMParameterConfigurations>SsmParametersoptionalSSMParameterConfigurations[]SsmParametersoptional*[]SSMParameterConfigurations= None#The SSM parameters to create or update for the distributed AMIs.