Class ContainerRecipe
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<ContainerRecipe.Builder,ContainerRecipe>
Defines how Image Builder builds and tests a container image: the base image, components to apply, the Dockerfile template, the build and test instance configuration, and the target repository for the output image.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal Stringarn()The Amazon Resource Name (ARN) of the container recipe.static ContainerRecipe.Builderbuilder()final List<ComponentConfiguration> Build and test components that are included in the container recipe.final ContainerTypeSpecifies the type of container, such as Docker.final StringSpecifies the type of container, such as Docker.final StringThe date when this container recipe was created.final StringThe description of the container recipe.final StringThe Dockerfile template that Image Builder uses to build the container image.final BooleanSpecifies whether the recipe's Dockerfile template data is encrypted at rest.final booleanfinal booleanequalsBySdkFields(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) final booleanFor responses, this returns true if the service returned a value for the Components property.final inthashCode()final booleanhasTags()For responses, this returns true if the service returned a value for the Tags property.final InstanceConfigurationA group of options that can be used to configure an instance for building and testing container images.final StringkmsKeyId()The KMS key that Image Builder uses to encrypt the recipe's Dockerfile template data at rest.final Stringname()The name of the container recipe.final Stringowner()The owner of the container recipe.final StringThe base image for customizations specified in the container recipe.final Platformplatform()The system platform for the container.final StringThe system platform for the container.static Class<? extends ContainerRecipe.Builder> tags()Tags that are attached to the container recipe.The destination repository for the container image.Take this object and create a builder that contains all of the current property values of this object.final StringtoString()Returns a string representation of this object.final Stringversion()The semantic version of the container recipe.final StringThe working directory for use during build and test workflows.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
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:
-
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.
-
Version ARNs have only the first three nodes: <major>.<minor>.<patch>
-
Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.
- Returns:
- 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:
-
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.
-
Version ARNs have only the first three nodes: <major>.<minor>.<patch>
-
Build version ARNs have all four nodes, and point to a specific build for a specific version of an object.
-
-
-
containerType
Specifies the type of container, such as Docker.
If the service returns an enum value that is not available in the current SDK version,
containerTypewill returnContainerType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromcontainerTypeAsString().- Returns:
- Specifies the type of container, such as Docker.
- See Also:
-
containerTypeAsString
Specifies the type of container, such as Docker.
If the service returns an enum value that is not available in the current SDK version,
containerTypewill returnContainerType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromcontainerTypeAsString().- Returns:
- Specifies the type of container, such as Docker.
- See Also:
-
name
The name of the container recipe.
- Returns:
- The name of the container recipe.
-
description
The description of the container recipe.
- Returns:
- The description of the container recipe.
-
platform
The system platform for the container. Container recipes support only the Linux and Windows platforms.
If the service returns an enum value that is not available in the current SDK version,
platformwill returnPlatform.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromplatformAsString().- Returns:
- The system platform for the container. Container recipes support only the Linux and Windows platforms.
- See Also:
-
platformAsString
The system platform for the container. Container recipes support only the Linux and Windows platforms.
If the service returns an enum value that is not available in the current SDK version,
platformwill returnPlatform.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromplatformAsString().- Returns:
- The system platform for the container. Container recipes support only the Linux and Windows platforms.
- See Also:
-
owner
The owner of the container recipe.
- Returns:
- The owner of the container recipe.
-
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. The upper limit is 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: You can 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.
- Returns:
- 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. The upper limit is 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: You can 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.
-
hasComponents
public final boolean hasComponents()For responses, this returns true if the service returned a value for the Components property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
components
Build and test components that are included in the container recipe. A recipe can contain a maximum of 20 build and test components in any combination, by default. This maximum is an adjustable quota. For more information, see EC2 Image Builder endpoints and quotas in the Amazon Web Services General Reference.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasComponents()method.- Returns:
- Build and test components that are included in the container recipe. A recipe can contain a maximum of 20 build and test components in any combination, by default. This maximum is an adjustable quota. For more information, see EC2 Image Builder endpoints and quotas in the Amazon Web Services General Reference.
-
instanceConfiguration
A group of options that can be used to configure an instance for building and testing container images.
- Returns:
- A group of options that can be used to configure an instance for building and testing container images.
-
dockerfileTemplateData
The Dockerfile template that Image Builder uses to build the container image. The template can include contextual variables that Image Builder replaces with build information at build time. For the contextual variables that the template can include, see Create a new version of a container recipe in the EC2 Image Builder User Guide.
- Returns:
- The Dockerfile template that Image Builder uses to build the container image. The template can include contextual variables that Image Builder replaces with build information at build time. For the contextual variables that the template can include, see Create a new version of a container recipe in the EC2 Image Builder User Guide.
-
kmsKeyId
The KMS key that Image Builder uses to encrypt the recipe's Dockerfile template data at rest. This can be either the Key ARN or the Alias ARN. For more information, see Key identifiers (KeyId) in the Key Management Service Developer Guide. If you don't specify a key, Image Builder encrypts the template data with a KMS key that Image Builder owns. This key isn't used to encrypt the output container image.
- Returns:
- The KMS key that Image Builder uses to encrypt the recipe's Dockerfile template data at rest. This can be either the Key ARN or the Alias ARN. For more information, see Key identifiers (KeyId) in the Key Management Service Developer Guide. If you don't specify a key, Image Builder encrypts the template data with a KMS key that Image Builder owns. This key isn't used to encrypt the output container image.
-
encrypted
Specifies whether the recipe's Dockerfile template data is encrypted at rest. Image Builder encrypts all Dockerfile template data at rest, so this value is always
true. This field is retained for backward compatibility, and doesn't describe encryption of the output container image.- Returns:
- Specifies whether the recipe's Dockerfile template data is encrypted at rest. Image Builder encrypts all
Dockerfile template data at rest, so this value is always
true. This field is retained for backward compatibility, and doesn't describe encryption of the output container image.
-
parentImage
The base image for customizations specified in the container recipe. This can contain an Image Builder image resource ARN or a container image URI, for example
amazonlinux:latest.- Returns:
- The base image for customizations specified in the container recipe. This can contain an Image Builder
image resource ARN or a container image URI, for example
amazonlinux:latest.
-
dateCreated
The date when this container recipe was created.
- Returns:
- The date when this container recipe was created.
-
hasTags
public final boolean hasTags()For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
tags
Tags that are attached to the container recipe.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTags()method.- Returns:
- Tags that are attached to the container recipe.
-
workingDirectory
The working directory for use during build and test workflows.
- Returns:
- The working directory for use during build and test workflows.
-
targetRepository
The destination repository for the container image.
- Returns:
- The destination repository for the container image.
-
toBuilder
Description copied from interface:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<ContainerRecipe.Builder,ContainerRecipe> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin interfaceSdkPojo- Parameters:
obj- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo- Returns:
- The mapping between the field name and its corresponding field.
-