[ aws . imagebuilder ]

create-distribution-configuration

Description

Creates a new distribution configuration. Distribution configurations define and configure the outputs of your pipeline.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-distribution-configuration
--name <value>
[--description <value>]
--distributions <value>
[--tags <value>]
[--client-token <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]

Options

--name (string)

The name of the distribution configuration.

--description (string)

The description of the distribution configuration.

--distributions (list)

The distributions of the distribution configuration.

(structure)

Defines the settings for a specific Region.

region -> (string)

The target Region.

amiDistributionConfiguration -> (structure)

The specific AMI settings (for example, launch permissions, AMI tags).

name -> (string)

The name of the distribution configuration.

description -> (string)

The description of the distribution configuration.

amiTags -> (map)

The tags to apply to AMIs distributed to this Region.

key -> (string)

value -> (string)

kmsKeyId -> (string)

The KMS key identifier used to encrypt the distributed image.

launchPermission -> (structure)

Launch permissions can be used to configure which AWS accounts can use the AMI to launch instances.

userIds -> (list)

The AWS account ID.

(string)

userGroups -> (list)

The name of the group.

(string)

licenseConfigurationArns -> (list)

The License Manager Configuration to associate with the AMI in the specified Region.

(string)

JSON Syntax:

[
  {
    "region": "string",
    "amiDistributionConfiguration": {
      "name": "string",
      "description": "string",
      "amiTags": {"string": "string"
        ...},
      "kmsKeyId": "string",
      "launchPermission": {
        "userIds": ["string", ...],
        "userGroups": ["string", ...]
      }
    },
    "licenseConfigurationArns": ["string", ...]
  }
  ...
]

--tags (map)

The tags of the distribution configuration.

key -> (string)

value -> (string)

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--client-token (string)

The idempotency token of the distribution configuration.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.

Examples

To create a distribution configuration

The following create-distribution-configuration example creates a distribution configuration using a JSON file.

aws imagebuilder create-distribution-configuration \
    --cli-input-json file:/create-distribution-configuration.json

Contents of create-distribution-configuration.json:

{
    "name": "MyExampleDistribution",
    "description": "Copies AMI to eu-west-1",
    "distributions": [
        {
            "region": "us-west-2",
            "amiDistributionConfiguration": {
                "name": "Name {{imagebuilder:buildDate}}",
                "description": "An example image name with parameter references",
                "amiTags": {
                    "KeyName": "{{ssm:parameter_name}}"
                },
                "launchPermission": {
                    "userIds": [
                        "123456789012"
                    ]
                }
            }
        },
        {
            "region": "eu-west-1",
            "amiDistributionConfiguration": {
                "name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}",
                "amiTags": {
                    "KeyName": "Value"
                },
                "launchPermission": {
                    "userIds": [
                        "123456789012"
                    ]
                }
            }
        }
    ]
}

Output:

{
    "requestId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "clientToken": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/myexampledistribution"
}

For more information, see Setting Up and Managing an EC2 Image Builder Image Pipeline Using the AWS CLI in the EC2 Image Builder Users Guide.

Output

requestId -> (string)

The request ID that uniquely identifies this request.

clientToken -> (string)

The idempotency token used to make this request idempotent.

distributionConfigurationArn -> (string)

The Amazon Resource Name (ARN) of the distribution configuration that was created by this request.