libZSservicesZSamazonka-imagebuilderZSamazonka-imagebuilder
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.ImageBuilder.Types.ContainerRecipe

Description

 
Synopsis

Documentation

data ContainerRecipe Source #

A container recipe.

See: newContainerRecipe smart constructor.

Constructors

ContainerRecipe' 

Fields

  • components :: Maybe (NonEmpty ComponentConfiguration)

    Components for build and test that are included in the container recipe.

  • containerType :: Maybe ContainerType

    Specifies the type of container, such as Docker.

  • platform :: Maybe Platform

    The system platform for the container, such as Windows or Linux.

  • dockerfileTemplateData :: Maybe Text

    Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.

  • arn :: Maybe Text

    The Amazon Resource Name (ARN) of the container recipe.

    Semantic versioning is included in each object's Amazon Resource Name (ARN), at the level that applies to that object as follows:

    1. Versionless ARNs and Name ARNs do not include specific values in any of the nodes. The nodes are either left off entirely, or they are specified as wildcards, for example: x.x.x.
    2. Version ARNs have only the first three nodes: <major>.<minor>.<patch>
    3. Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.
  • workingDirectory :: Maybe Text

    The working directory for use during build and test workflows.

  • parentImage :: Maybe Text

    The base image for the container recipe.

  • encrypted :: Maybe Bool

    A flag that indicates if the target container is encrypted.

  • owner :: Maybe Text

    The owner of the container recipe.

  • dateCreated :: Maybe Text

    The date when this container recipe was created.

  • name :: Maybe Text

    The name of the container recipe.

  • kmsKeyId :: Maybe Text

    Identifies which KMS key is used to encrypt the container image for distribution to the target Region.

  • version :: Maybe Text

    The semantic version of the container recipe.

    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.

    Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

  • targetRepository :: Maybe TargetContainerRepository

    The destination repository for the container image.

  • description :: Maybe Text

    The description of the container recipe.

  • tags :: Maybe (HashMap Text Text)

    Tags that are attached to the container recipe.

  • instanceConfiguration :: Maybe InstanceConfiguration

    A group of options that can be used to configure an instance for building and testing container images.

Instances

Instances details
Eq ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

Read ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

Show ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

Generic ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

Associated Types

type Rep ContainerRecipe :: Type -> Type #

NFData ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

Methods

rnf :: ContainerRecipe -> () #

Hashable ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

FromJSON ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

type Rep ContainerRecipe Source # 
Instance details

Defined in Amazonka.ImageBuilder.Types.ContainerRecipe

type Rep ContainerRecipe = D1 ('MetaData "ContainerRecipe" "Amazonka.ImageBuilder.Types.ContainerRecipe" "libZSservicesZSamazonka-imagebuilderZSamazonka-imagebuilder" 'False) (C1 ('MetaCons "ContainerRecipe'" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "components") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (NonEmpty ComponentConfiguration))) :*: S1 ('MetaSel ('Just "containerType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ContainerType))) :*: (S1 ('MetaSel ('Just "platform") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Platform)) :*: S1 ('MetaSel ('Just "dockerfileTemplateData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: ((S1 ('MetaSel ('Just "arn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "workingDirectory") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "parentImage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "encrypted") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))))) :*: (((S1 ('MetaSel ('Just "owner") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "dateCreated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "kmsKeyId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: ((S1 ('MetaSel ('Just "version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "targetRepository") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe TargetContainerRepository))) :*: (S1 ('MetaSel ('Just "description") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Text))) :*: S1 ('MetaSel ('Just "instanceConfiguration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe InstanceConfiguration))))))))

newContainerRecipe :: ContainerRecipe Source #

Create a value of ContainerRecipe with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:components:ContainerRecipe', containerRecipe_components - Components for build and test that are included in the container recipe.

$sel:containerType:ContainerRecipe', containerRecipe_containerType - Specifies the type of container, such as Docker.

$sel:platform:ContainerRecipe', containerRecipe_platform - The system platform for the container, such as Windows or Linux.

$sel:dockerfileTemplateData:ContainerRecipe', containerRecipe_dockerfileTemplateData - Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.

$sel:arn:ContainerRecipe', containerRecipe_arn - The Amazon Resource Name (ARN) of the container recipe.

Semantic versioning is included in each object's Amazon Resource Name (ARN), at the level that applies to that object as follows:

  1. Versionless ARNs and Name ARNs do not include specific values in any of the nodes. The nodes are either left off entirely, or they are specified as wildcards, for example: x.x.x.
  2. Version ARNs have only the first three nodes: <major>.<minor>.<patch>
  3. Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.

$sel:workingDirectory:ContainerRecipe', containerRecipe_workingDirectory - The working directory for use during build and test workflows.

$sel:parentImage:ContainerRecipe', containerRecipe_parentImage - The base image for the container recipe.

$sel:encrypted:ContainerRecipe', containerRecipe_encrypted - A flag that indicates if the target container is encrypted.

$sel:owner:ContainerRecipe', containerRecipe_owner - The owner of the container recipe.

$sel:dateCreated:ContainerRecipe', containerRecipe_dateCreated - The date when this container recipe was created.

$sel:name:ContainerRecipe', containerRecipe_name - The name of the container recipe.

$sel:kmsKeyId:ContainerRecipe', containerRecipe_kmsKeyId - Identifies which KMS key is used to encrypt the container image for distribution to the target Region.

$sel:version:ContainerRecipe', containerRecipe_version - The semantic version of the container recipe.

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.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

$sel:targetRepository:ContainerRecipe', containerRecipe_targetRepository - The destination repository for the container image.

$sel:description:ContainerRecipe', containerRecipe_description - The description of the container recipe.

$sel:tags:ContainerRecipe', containerRecipe_tags - Tags that are attached to the container recipe.

$sel:instanceConfiguration:ContainerRecipe', containerRecipe_instanceConfiguration - A group of options that can be used to configure an instance for building and testing container images.

containerRecipe_components :: Lens' ContainerRecipe (Maybe (NonEmpty ComponentConfiguration)) Source #

Components for build and test that are included in the container recipe.

containerRecipe_containerType :: Lens' ContainerRecipe (Maybe ContainerType) Source #

Specifies the type of container, such as Docker.

containerRecipe_platform :: Lens' ContainerRecipe (Maybe Platform) Source #

The system platform for the container, such as Windows or Linux.

containerRecipe_dockerfileTemplateData :: Lens' ContainerRecipe (Maybe Text) Source #

Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.

containerRecipe_arn :: Lens' ContainerRecipe (Maybe Text) Source #

The Amazon Resource Name (ARN) of the container recipe.

Semantic versioning is included in each object's Amazon Resource Name (ARN), at the level that applies to that object as follows:

  1. Versionless ARNs and Name ARNs do not include specific values in any of the nodes. The nodes are either left off entirely, or they are specified as wildcards, for example: x.x.x.
  2. Version ARNs have only the first three nodes: <major>.<minor>.<patch>
  3. Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.

containerRecipe_workingDirectory :: Lens' ContainerRecipe (Maybe Text) Source #

The working directory for use during build and test workflows.

containerRecipe_parentImage :: Lens' ContainerRecipe (Maybe Text) Source #

The base image for the container recipe.

containerRecipe_encrypted :: Lens' ContainerRecipe (Maybe Bool) Source #

A flag that indicates if the target container is encrypted.

containerRecipe_owner :: Lens' ContainerRecipe (Maybe Text) Source #

The owner of the container recipe.

containerRecipe_dateCreated :: Lens' ContainerRecipe (Maybe Text) Source #

The date when this container recipe was created.

containerRecipe_name :: Lens' ContainerRecipe (Maybe Text) Source #

The name of the container recipe.

containerRecipe_kmsKeyId :: Lens' ContainerRecipe (Maybe Text) Source #

Identifies which KMS key is used to encrypt the container image for distribution to the target Region.

containerRecipe_version :: Lens' ContainerRecipe (Maybe Text) Source #

The semantic version of the container recipe.

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.

Filtering: With semantic versioning, you have the flexibility to use wildcards (x) to specify the most recent versions or nodes when selecting the base image or components for your recipe. When you use a wildcard in any node, all nodes to the right of the first wildcard must also be wildcards.

containerRecipe_targetRepository :: Lens' ContainerRecipe (Maybe TargetContainerRepository) Source #

The destination repository for the container image.

containerRecipe_description :: Lens' ContainerRecipe (Maybe Text) Source #

The description of the container recipe.

containerRecipe_tags :: Lens' ContainerRecipe (Maybe (HashMap Text Text)) Source #

Tags that are attached to the container recipe.

containerRecipe_instanceConfiguration :: Lens' ContainerRecipe (Maybe InstanceConfiguration) Source #

A group of options that can be used to configure an instance for building and testing container images.