Distribution Configuration Args
data class DistributionConfigurationArgs(val description: Output<String>? = null, val distributions: Output<List<DistributionConfigurationDistributionArgs>>? = null, val name: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<DistributionConfigurationArgs>
Manages an Image Builder Distribution Configuration.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.imagebuilder.DistributionConfiguration("example", {
name: "example",
distributions: [{
amiDistributionConfiguration: {
amiTags: {
CostCenter: "IT",
},
name: "example-{{ imagebuilder:buildDate }}",
launchPermission: {
userIds: ["123456789012"],
},
},
launchTemplateConfigurations: [{
launchTemplateId: "lt-0aaa1bcde2ff3456",
}],
region: "us-east-1",
}],
});
Content copied to clipboard
import pulumi
import pulumi_aws as aws
example = aws.imagebuilder.DistributionConfiguration("example",
name="example",
distributions=[{
"ami_distribution_configuration": {
"ami_tags": {
"CostCenter": "IT",
},
"name": "example-{{ imagebuilder:buildDate }}",
"launch_permission": {
"user_ids": ["123456789012"],
},
},
"launch_template_configurations": [{
"launch_template_id": "lt-0aaa1bcde2ff3456",
}],
"region": "us-east-1",
}])
Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ImageBuilder.DistributionConfiguration("example", new()
{
Name = "example",
Distributions = new[]
{
new Aws.ImageBuilder.Inputs.DistributionConfigurationDistributionArgs
{
AmiDistributionConfiguration = new Aws.ImageBuilder.Inputs.DistributionConfigurationDistributionAmiDistributionConfigurationArgs
{
AmiTags =
{
{ "CostCenter", "IT" },
},
Name = "example-{{ imagebuilder:buildDate }}",
LaunchPermission = new Aws.ImageBuilder.Inputs.DistributionConfigurationDistributionAmiDistributionConfigurationLaunchPermissionArgs
{
UserIds = new[]
{
"123456789012",
},
},
},
LaunchTemplateConfigurations = new[]
{
new Aws.ImageBuilder.Inputs.DistributionConfigurationDistributionLaunchTemplateConfigurationArgs
{
LaunchTemplateId = "lt-0aaa1bcde2ff3456",
},
},
Region = "us-east-1",
},
},
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/imagebuilder"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := imagebuilder.NewDistributionConfiguration(ctx, "example", &imagebuilder.DistributionConfigurationArgs{
Name: pulumi.String("example"),
Distributions: imagebuilder.DistributionConfigurationDistributionArray{
&imagebuilder.DistributionConfigurationDistributionArgs{
AmiDistributionConfiguration: &imagebuilder.DistributionConfigurationDistributionAmiDistributionConfigurationArgs{
AmiTags: pulumi.StringMap{
"CostCenter": pulumi.String("IT"),
},
Name: pulumi.String("example-{{ imagebuilder:buildDate }}"),
LaunchPermission: &imagebuilder.DistributionConfigurationDistributionAmiDistributionConfigurationLaunchPermissionArgs{
UserIds: pulumi.StringArray{
pulumi.String("123456789012"),
},
},
},
LaunchTemplateConfigurations: imagebuilder.DistributionConfigurationDistributionLaunchTemplateConfigurationArray{
&imagebuilder.DistributionConfigurationDistributionLaunchTemplateConfigurationArgs{
LaunchTemplateId: pulumi.String("lt-0aaa1bcde2ff3456"),
},
},
Region: pulumi.String("us-east-1"),
},
},
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.imagebuilder.DistributionConfiguration;
import com.pulumi.aws.imagebuilder.DistributionConfigurationArgs;
import com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionArgs;
import com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionAmiDistributionConfigurationArgs;
import com.pulumi.aws.imagebuilder.inputs.DistributionConfigurationDistributionAmiDistributionConfigurationLaunchPermissionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new DistributionConfiguration("example", DistributionConfigurationArgs.builder()
.name("example")
.distributions(DistributionConfigurationDistributionArgs.builder()
.amiDistributionConfiguration(DistributionConfigurationDistributionAmiDistributionConfigurationArgs.builder()
.amiTags(Map.of("CostCenter", "IT"))
.name("example-{{ imagebuilder:buildDate }}")
.launchPermission(DistributionConfigurationDistributionAmiDistributionConfigurationLaunchPermissionArgs.builder()
.userIds("123456789012")
.build())
.build())
.launchTemplateConfigurations(DistributionConfigurationDistributionLaunchTemplateConfigurationArgs.builder()
.launchTemplateId("lt-0aaa1bcde2ff3456")
.build())
.region("us-east-1")
.build())
.build());
}
}
Content copied to clipboard
resources:
example:
type: aws:imagebuilder:DistributionConfiguration
properties:
name: example
distributions:
- amiDistributionConfiguration:
amiTags:
CostCenter: IT
name: example-{{ imagebuilder:buildDate }}
launchPermission:
userIds:
- '123456789012'
launchTemplateConfigurations:
- launchTemplateId: lt-0aaa1bcde2ff3456
region: us-east-1
Content copied to clipboard
Import
Using pulumi import
, import aws_imagebuilder_distribution_configurations
resources using the Amazon Resource Name (ARN). For example:
$ pulumi import aws:imagebuilder/distributionConfiguration:DistributionConfiguration example arn:aws:imagebuilder:us-east-1:123456789012:distribution-configuration/example
Content copied to clipboard