Class DockerImageAsset.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<DockerImageAsset>
- Enclosing class:
DockerImageAsset
DockerImageAsset.-
Method Summary
Modifier and TypeMethodDescriptionUnique identifier of the docker image asset and its potential revisions.build()Build args to pass to thedocker buildcommand.buildSecrets(Map<String, String> buildSecrets) Build secrets.SSH agent socket or keys to pass to thedocker buildcommand.cacheDisabled(Boolean cacheDisabled) Disable the cache and pass--no-cacheto thedocker buildcommand.cacheFrom(List<? extends DockerCacheOption> cacheFrom) Cache from options to pass to thedocker buildcommand.cacheTo(DockerCacheOption cacheTo) Cache to options to pass to thedocker buildcommand.static DockerImageAsset.BuilderThe directory where the Dockerfile is stored.displayName(String displayName) A display name for this asset.File paths matching the patterns will be excluded.Extra information to encode into the fingerprint (e.g.Path to the Dockerfile (relative to the directory).followSymlinks(SymlinkFollowMode followSymlinks) A strategy for how to handle symlinks.ignoreMode(IgnoreMode ignoreMode) The ignore behavior to use forexcludepatterns.invalidation(DockerImageAssetInvalidationOptions invalidation) Options to control which parameters are used to invalidate the asset hash.networkMode(NetworkMode networkMode) Networking mode for the RUN commands during build.Outputs to pass to thedocker buildcommand.Platform to build for.Docker target to build to.
-
Method Details
-
create
@Stability(Stable) public static DockerImageAsset.Builder create(software.constructs.Construct scope, String id) - Parameters:
scope- This parameter is required.id- This parameter is required.- Returns:
- a new instance of
DockerImageAsset.Builder.
-
exclude
File paths matching the patterns will be excluded.See
ignoreModeto set the matching behavior. Has no effect on Assets bundled using thebundlingproperty.Default: - nothing is excluded
- Parameters:
exclude- File paths matching the patterns will be excluded. This parameter is required.- Returns:
this
-
followSymlinks
A strategy for how to handle symlinks.Default: SymlinkFollowMode.NEVER
- Parameters:
followSymlinks- A strategy for how to handle symlinks. This parameter is required.- Returns:
this
-
ignoreMode
The ignore behavior to use forexcludepatterns.Default: IgnoreMode.GLOB
- Parameters:
ignoreMode- The ignore behavior to use forexcludepatterns. This parameter is required.- Returns:
this
-
extraHash
Extra information to encode into the fingerprint (e.g. build instructions and other inputs).Default: - hash is only based on source content
- Parameters:
extraHash- Extra information to encode into the fingerprint (e.g. build instructions and other inputs). This parameter is required.- Returns:
this
-
assetName
Unique identifier of the docker image asset and its potential revisions.Required if using AppScopedStagingSynthesizer.
Default: - no asset name
- Parameters:
assetName- Unique identifier of the docker image asset and its potential revisions. This parameter is required.- Returns:
this
-
buildArgs
Build args to pass to thedocker buildcommand.Since Docker build arguments are resolved before deployment, keys and values cannot refer to unresolved tokens (such as
lambda.functionArnorqueue.queueUrl).Default: - no build args are passed
- Parameters:
buildArgs- Build args to pass to thedocker buildcommand. This parameter is required.- Returns:
this
-
buildSecrets
Build secrets.Docker BuildKit must be enabled to use build secrets.
Default: - no build secrets
Example:
import software.amazon.awscdk.DockerBuildSecret; Map<String, String> buildSecrets = Map.of( "MY_SECRET", DockerBuildSecret.fromSrc("file.txt"));- Parameters:
buildSecrets- Build secrets. This parameter is required.- Returns:
this- See Also:
-
buildSsh
SSH agent socket or keys to pass to thedocker buildcommand.Docker BuildKit must be enabled to use the ssh flag
Default: - no --ssh flag
- Parameters:
buildSsh- SSH agent socket or keys to pass to thedocker buildcommand. This parameter is required.- Returns:
this- See Also:
-
cacheDisabled
Disable the cache and pass--no-cacheto thedocker buildcommand.Default: - cache is used
- Parameters:
cacheDisabled- Disable the cache and pass--no-cacheto thedocker buildcommand. This parameter is required.- Returns:
this
-
cacheFrom
@Stability(Stable) public DockerImageAsset.Builder cacheFrom(List<? extends DockerCacheOption> cacheFrom) Cache from options to pass to thedocker buildcommand.Default: - no cache from options are passed to the build command
- Parameters:
cacheFrom- Cache from options to pass to thedocker buildcommand. This parameter is required.- Returns:
this- See Also:
-
cacheTo
Cache to options to pass to thedocker buildcommand.Default: - no cache to options are passed to the build command
- Parameters:
cacheTo- Cache to options to pass to thedocker buildcommand. This parameter is required.- Returns:
this- See Also:
-
displayName
A display name for this asset.If supplied, the display name will be used in locations where the asset identifier is printed, like in the CLI progress information. If the same asset is added multiple times, the display name of the first occurrence is used.
If
assetNameis given, it will also be used as the defaultdisplayName. Otherwise, the default is the construct path of the ImageAsset construct, with respect to the enclosing stack. If the asset is produced by a construct helper function (such aslambda.Code.fromAssetImage()), this will look likeMyFunction/AssetImage.We use the stack-relative construct path so that in the common case where you have multiple stacks with the same asset, we won't show something like
/MyBetaStack/MyFunction/Codewhen you are actually deploying to production.Default: - Stack-relative construct path
- Parameters:
displayName- A display name for this asset. This parameter is required.- Returns:
this
-
file
Path to the Dockerfile (relative to the directory).Default: 'Dockerfile'
- Parameters:
file- Path to the Dockerfile (relative to the directory). This parameter is required.- Returns:
this
-
invalidation
@Stability(Stable) public DockerImageAsset.Builder invalidation(DockerImageAssetInvalidationOptions invalidation) Options to control which parameters are used to invalidate the asset hash.Default: - hash all parameters
- Parameters:
invalidation- Options to control which parameters are used to invalidate the asset hash. This parameter is required.- Returns:
this
-
networkMode
Networking mode for the RUN commands during build.Support docker API 1.25+.
Default: - no networking mode specified (the default networking mode `NetworkMode.DEFAULT` will be used)
- Parameters:
networkMode- Networking mode for the RUN commands during build. This parameter is required.- Returns:
this
-
outputs
Outputs to pass to thedocker buildcommand.Default: - no outputs are passed to the build command (default outputs are used)
- Parameters:
outputs- Outputs to pass to thedocker buildcommand. This parameter is required.- Returns:
this- See Also:
-
platform
Platform to build for.Requires Docker Buildx.
Default: - no platform specified (the current machine architecture will be used)
- Parameters:
platform- Platform to build for. This parameter is required.- Returns:
this
-
target
Docker target to build to.Default: - no target
- Parameters:
target- Docker target to build to. This parameter is required.- Returns:
this
-
directory
The directory where the Dockerfile is stored.Any directory inside with a name that matches the CDK output folder (cdk.out by default) will be excluded from the asset
- Parameters:
directory- The directory where the Dockerfile is stored. This parameter is required.- Returns:
this
-
build
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<DockerImageAsset>- Returns:
- a newly built instance of
DockerImageAsset.
-