Skip to content
v2.277.0

CfnDistributionConfigurationProps Struct ​

Properties for defining a CfnDistributionConfiguration.

Example ​

ts
// 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';

declare const amiDistributionConfiguration: any;
declare const containerDistributionConfiguration: any;
const cfnDistributionConfigurationProps: imagebuilder.CfnDistributionConfigurationProps = {
  distributions: [{
    region: 'region',

    // the properties below are optional
    amiDistributionConfiguration: amiDistributionConfiguration,
    containerDistributionConfiguration: containerDistributionConfiguration,
    fastLaunchConfigurations: [{
      accountId: 'accountId',
      enabled: false,
      launchTemplate: {
        launchTemplateId: 'launchTemplateId',
        launchTemplateName: 'launchTemplateName',
        launchTemplateVersion: 'launchTemplateVersion',
      },
      maxParallelLaunches: 123,
      snapshotConfiguration: {
        targetResourceCount: 123,
      },
    }],
    launchTemplateConfigurations: [{
      accountId: 'accountId',
      launchTemplateId: 'launchTemplateId',
      setDefaultVersion: false,
    }],
    licenseConfigurationArns: ['licenseConfigurationArns'],
    ssmParameterConfigurations: [{
      parameterName: 'parameterName',

      // the properties below are optional
      amiAccountId: 'amiAccountId',
      dataType: 'dataType',
    }],
  }],
  name: 'name',

  // the properties below are optional
  description: 'description',
  tags: {
    tagsKey: 'tags',
  },
};
python
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_imagebuilder as imagebuilder

# ami_distribution_configuration: Any
# container_distribution_configuration: Any

cfn_distribution_configuration_props = imagebuilder.CfnDistributionConfigurationProps(
    distributions=[imagebuilder.CfnDistributionConfiguration.DistributionProperty(
        region="region",

        # the properties below are optional
        ami_distribution_configuration=ami_distribution_configuration,
        container_distribution_configuration=container_distribution_configuration,
        fast_launch_configurations=[imagebuilder.CfnDistributionConfiguration.FastLaunchConfigurationProperty(
            account_id="accountId",
            enabled=False,
            launch_template=imagebuilder.CfnDistributionConfiguration.FastLaunchLaunchTemplateSpecificationProperty(
                launch_template_id="launchTemplateId",
                launch_template_name="launchTemplateName",
                launch_template_version="launchTemplateVersion"
            ),
            max_parallel_launches=123,
            snapshot_configuration=imagebuilder.CfnDistributionConfiguration.FastLaunchSnapshotConfigurationProperty(
                target_resource_count=123
            )
        )],
        launch_template_configurations=[imagebuilder.CfnDistributionConfiguration.LaunchTemplateConfigurationProperty(
            account_id="accountId",
            launch_template_id="launchTemplateId",
            set_default_version=False
        )],
        license_configuration_arns=["licenseConfigurationArns"],
        ssm_parameter_configurations=[imagebuilder.CfnDistributionConfiguration.SsmParameterConfigurationProperty(
            parameter_name="parameterName",

            # the properties below are optional
            ami_account_id="amiAccountId",
            data_type="dataType"
        )]
    )],
    name="name",

    # the properties below are optional
    description="description",
    tags={
        "tags_key": "tags"
    }
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.imagebuilder.*;

Object amiDistributionConfiguration;
Object containerDistributionConfiguration;

CfnDistributionConfigurationProps cfnDistributionConfigurationProps = CfnDistributionConfigurationProps.builder()
        .distributions(List.of(DistributionProperty.builder()
                .region("region")

                // the properties below are optional
                .amiDistributionConfiguration(amiDistributionConfiguration)
                .containerDistributionConfiguration(containerDistributionConfiguration)
                .fastLaunchConfigurations(List.of(FastLaunchConfigurationProperty.builder()
                        .accountId("accountId")
                        .enabled(false)
                        .launchTemplate(FastLaunchLaunchTemplateSpecificationProperty.builder()
                                .launchTemplateId("launchTemplateId")
                                .launchTemplateName("launchTemplateName")
                                .launchTemplateVersion("launchTemplateVersion")
                                .build())
                        .maxParallelLaunches(123)
                        .snapshotConfiguration(FastLaunchSnapshotConfigurationProperty.builder()
                                .targetResourceCount(123)
                                .build())
                        .build()))
                .launchTemplateConfigurations(List.of(LaunchTemplateConfigurationProperty.builder()
                        .accountId("accountId")
                        .launchTemplateId("launchTemplateId")
                        .setDefaultVersion(false)
                        .build()))
                .licenseConfigurationArns(List.of("licenseConfigurationArns"))
                .ssmParameterConfigurations(List.of(SsmParameterConfigurationProperty.builder()
                        .parameterName("parameterName")

                        // the properties below are optional
                        .amiAccountId("amiAccountId")
                        .dataType("dataType")
                        .build()))
                .build()))
        .name("name")

        // the properties below are optional
        .description("description")
        .tags(Map.of(
                "tagsKey", "tags"))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.ImageBuilder;

var amiDistributionConfiguration;
var containerDistributionConfiguration;

var cfnDistributionConfigurationProps = new CfnDistributionConfigurationProps {
    Distributions = new [] { new DistributionProperty {
        Region = "region",

        // the properties below are optional
        AmiDistributionConfiguration = amiDistributionConfiguration,
        ContainerDistributionConfiguration = containerDistributionConfiguration,
        FastLaunchConfigurations = new [] { new FastLaunchConfigurationProperty {
            AccountId = "accountId",
            Enabled = false,
            LaunchTemplate = new FastLaunchLaunchTemplateSpecificationProperty {
                LaunchTemplateId = "launchTemplateId",
                LaunchTemplateName = "launchTemplateName",
                LaunchTemplateVersion = "launchTemplateVersion"
            },
            MaxParallelLaunches = 123,
            SnapshotConfiguration = new FastLaunchSnapshotConfigurationProperty {
                TargetResourceCount = 123
            }
        } },
        LaunchTemplateConfigurations = new [] { new LaunchTemplateConfigurationProperty {
            AccountId = "accountId",
            LaunchTemplateId = "launchTemplateId",
            SetDefaultVersion = false
        } },
        LicenseConfigurationArns = new [] { "licenseConfigurationArns" },
        SsmParameterConfigurations = new [] { new SsmParameterConfigurationProperty {
            ParameterName = "parameterName",

            // the properties below are optional
            AmiAccountId = "amiAccountId",
            DataType = "dataType"
        } }
    } },
    Name = "name",

    // the properties below are optional
    Description = "description",
    Tags = new Dictionary<string, string> {
        { "tagsKey", "tags" }
    }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

var amiDistributionConfiguration interface{}
var containerDistributionConfiguration interface{}

cfnDistributionConfigurationProps := &CfnDistributionConfigurationProps{
	Distributions: []interface{}{
		&DistributionProperty{
			Region: jsii.String("region"),

			// the properties below are optional
			AmiDistributionConfiguration: amiDistributionConfiguration,
			ContainerDistributionConfiguration: containerDistributionConfiguration,
			FastLaunchConfigurations: []interface{}{
				&FastLaunchConfigurationProperty{
					AccountId: jsii.String("accountId"),
					Enabled: jsii.Boolean(false),
					LaunchTemplate: &FastLaunchLaunchTemplateSpecificationProperty{
						LaunchTemplateId: jsii.String("launchTemplateId"),
						LaunchTemplateName: jsii.String("launchTemplateName"),
						LaunchTemplateVersion: jsii.String("launchTemplateVersion"),
					},
					MaxParallelLaunches: jsii.Number(123),
					SnapshotConfiguration: &FastLaunchSnapshotConfigurationProperty{
						TargetResourceCount: jsii.Number(123),
					},
				},
			},
			LaunchTemplateConfigurations: []interface{}{
				&LaunchTemplateConfigurationProperty{
					AccountId: jsii.String("accountId"),
					LaunchTemplateId: jsii.String("launchTemplateId"),
					SetDefaultVersion: jsii.Boolean(false),
				},
			},
			LicenseConfigurationArns: []*string{
				jsii.String("licenseConfigurationArns"),
			},
			SsmParameterConfigurations: []interface{}{
				&SsmParameterConfigurationProperty{
					ParameterName: jsii.String("parameterName"),

					// the properties below are optional
					AmiAccountId: jsii.String("amiAccountId"),
					DataType: jsii.String("dataType"),
				},
			},
		},
	},
	Name: jsii.String("name"),

	// the properties below are optional
	Description: jsii.String("description"),
	Tags: map[string]*string{
		"tagsKey": jsii.String("tags"),
	},
}

Properties ​

descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string#
The description of this distribution configuration.
distributionsIResolvable | IResolvable | CfnDistributionConfiguration.DistributionProperty[]distributionstyping.Union[IResolvable, typing.List[typing.Union[IResolvable, DistributionProperty]]]distributionsIResolvableDistributionsIResolvableDistributionsinterface{}required#
The distributions of this distribution configuration formatted as an array of Distribution objects.
namestringnamestrnameStringNamestringName*stringrequired#
The name of this distribution configuration.
tagsoptional{ [key: string]: string }tagsoptionaltyping.Mapping[str, str]tagsoptionalMap<String, String>TagsoptionalIDictionary<string, string>Tagsoptional*map[string]*string#
The tags of this distribution configuration.