CfnImageRecipeProps Struct
Properties for defining a CfnImageRecipe.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_imagebuilder as imagebuilder } from 'aws-cdk-lib';
const cfnImageRecipeProps: imagebuilder.CfnImageRecipeProps = {
name: 'name',
parentImage: 'parentImage',
version: 'version',
// the properties below are optional
additionalInstanceConfiguration: {
systemsManagerAgent: {
uninstallAfterBuild: false,
},
userDataOverride: 'userDataOverride',
},
amiTags: {
amiTagsKey: 'amiTags',
},
amiWatermarks: ['amiWatermarks'],
blockDeviceMappings: [{
deviceName: 'deviceName',
ebs: {
deleteOnTermination: false,
encrypted: false,
iops: 123,
kmsKeyId: 'kmsKeyId',
snapshotId: 'snapshotId',
throughput: 123,
volumeSize: 123,
volumeType: 'volumeType',
},
noDevice: 'noDevice',
virtualName: 'virtualName',
}],
components: [{
componentArn: 'componentArn',
parameters: [{
name: 'name',
value: ['value'],
}],
}],
description: 'description',
tags: {
tagsKey: 'tags',
},
workingDirectory: 'workingDirectory',
};
Properties
additionalInstanceConfigurationoptionalIResolvable | CfnImageRecipe.AdditionalInstanceConfigurationPropertyadditional_instance_configurationoptionaltyping.Union[IResolvable, AdditionalInstanceConfigurationProperty]additionalInstanceConfigurationoptionalIResolvableAdditionalInstanceConfigurationoptionalIResolvableAdditionalInstanceConfigurationoptionalinterface{}#Instance configuration adds a layer of control over those instances. You can define settings and add scripts to run when an instance is launched from your AMI.
amiTagsoptionalIResolvable | { [key: string]: string }ami_tagsoptionaltyping.Union[IResolvable, typing.Mapping[str, str]]amiTagsoptionalIResolvableAmiTagsoptionalIResolvableAmiTagsoptionalinterface{}#amiWatermarksoptionalstring[]ami_watermarksoptionaltyping.List[str]amiWatermarksoptionalList<String>AmiWatermarksoptionalstring[]AmiWatermarksoptional*[]*string#AMI watermarks are lineage markers that automatically propagate to derivative AMIs when the source AMI is copied or distributed.
blockDeviceMappingsoptionalIResolvable | IResolvable | CfnImageRecipe.InstanceBlockDeviceMappingProperty[]block_device_mappingsoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, InstanceBlockDeviceMappingProperty]]]blockDeviceMappingsoptionalIResolvableBlockDeviceMappingsoptionalIResolvableBlockDeviceMappingsoptionalinterface{}#componentsoptionalIResolvable | IResolvable | CfnImageRecipe.ComponentConfigurationProperty[]componentsoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, ComponentConfigurationProperty]]]componentsoptionalIResolvableComponentsoptionalIResolvableComponentsoptionalinterface{}#Recipes require a minimum of one build component, and can have a maximum of 20 build and test components in any combination.
descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string#notes
You can specify the parent image using one of the following options:
- AMI ID
- Image Builder image Amazon Resource Name (ARN)
- AWS Systems Manager (SSM) Parameter Store Parameter, prefixed by
ssm:, followed by the parameter name or ARN. - AWS Marketplace product ID
tagsoptional{ [key: string]: string }tagsoptionaltyping.Mapping[str, str]tagsoptionalMap<String, String>TagsoptionalIDictionary<string, string>Tagsoptional*map[string]*string#notes
The semantic version has four nodes: <major>.<minor>.<patch>/<build>. You can assign values for the first three, and can filter on all of them.
Assignment: For the first three nodes you can assign any positive integer value, including zero, with an upper limit of 2^30-1, or 1073741823 for each node. Image Builder automatically assigns the build number to the fourth node.
Patterns: You can use any numeric pattern that adheres to the assignment requirements for the nodes that you can assign. For example, you might choose a software version pattern, such as 1.0.0, or a date, such as 2021.01.01.
workingDirectoryoptionalstringworking_directoryoptionalstrworkingDirectoryoptionalStringWorkingDirectoryoptionalstringWorkingDirectoryoptional*string#