Skip to content
GitHubXDiscord

DistributionConfiguration

The DistributionConfiguration resource allows you to manage AWS ImageBuilder DistributionConfigurations which define how and where to distribute your images.

Create a basic DistributionConfiguration with required properties and a common optional description.

import AWS from "alchemy/aws/control";
const basicDistributionConfig = await AWS.ImageBuilder.DistributionConfiguration("basicDistributionConfig", {
Name: "BasicDistributionConfig",
Description: "A simple distribution configuration for image builder.",
Distributions: [{
Region: "us-west-2",
AmiDistributionConfiguration: {
Name: "basic-ami",
TargetAccountIds: ["123456789012"]
}
}],
Tags: {
Project: "ImageBuilderDemo"
}
});

Configure a DistributionConfiguration with multiple distributions and advanced settings.

const advancedDistributionConfig = await AWS.ImageBuilder.DistributionConfiguration("advancedDistributionConfig", {
Name: "AdvancedDistributionConfig",
Description: "An advanced distribution configuration with multiple distributions.",
Distributions: [{
Region: "us-west-2",
AmiDistributionConfiguration: {
Name: "advanced-ami-west",
TargetAccountIds: ["123456789012"],
Description: "AMI for west region",
LaunchPermission: {
UserIds: ["987654321098"]
}
}
}, {
Region: "us-east-1",
AmiDistributionConfiguration: {
Name: "advanced-ami-east",
TargetAccountIds: ["123456789012"],
Description: "AMI for east region",
LaunchPermission: {
UserIds: ["987654321098"]
}
}
}],
Tags: {
Project: "ImageBuilderAdvancedDemo",
Environment: "Production"
}
});

Set up a DistributionConfiguration to distribute images across multiple regions.

const multiRegionDistributionConfig = await AWS.ImageBuilder.DistributionConfiguration("multiRegionDistributionConfig", {
Name: "MultiRegionDistributionConfig",
Description: "A configuration to distribute images in multiple regions.",
Distributions: [{
Region: "us-west-2",
AmiDistributionConfiguration: {
Name: "multi-region-ami-west",
TargetAccountIds: ["123456789012"]
}
}, {
Region: "eu-central-1",
AmiDistributionConfiguration: {
Name: "multi-region-ami-eu",
TargetAccountIds: ["123456789012"]
}
}],
Tags: {
Project: "MultiRegionImageBuilder"
}
});