Class BundlingOptions.Jsii$Proxy
- All Implemented Interfaces:
DockerRunOptions,BundlingOptions,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
BundlingOptions
BundlingOptions-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.amazon.awscdk.services.lambda.go.alpha.BundlingOptions
BundlingOptions.Builder, BundlingOptions.Jsii$Proxy -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJsii$Proxy(BundlingOptions.Builder builder) Constructor that initializes the object based on literal property values passed by theBundlingOptions.Builder.protectedJsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject. -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNodefinal booleanfinal String(experimental) Specify a custom hash for this asset.final AssetHashType(experimental) Determines how the asset hash is calculated.(experimental) Build arguments to pass when building the bundling image.final BundlingFileAccess(experimental) Which option to use to copy the source files to the docker container and output files back.final Boolean(experimental) Whether or not to enable cgo during go build.The command to run in the container.final ICommandHooks(experimental) Command hooks.final DockerImage(experimental) A custom bundling Docker image.The entrypoint to run in the container.The environment variables to pass to the container.final Boolean(experimental) Force bundling in a Docker container even if local bundling is possible.(experimental) List of additional flags to use while building.(experimental) What Go proxies to use to fetch the packages involved in the build.final StringDocker Networking options.final StringSet platform if server is multi-platform capable.final StringSecurity configuration when running the docker container.final StringgetUser()The user to use when running the container.final List<DockerVolume> Docker volumes to mount.Where to mount the specified volumes from.final StringWorking directory inside the container.final inthashCode()Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
-
Constructor Details
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject.- Parameters:
objRef- Reference to the JSII managed object.
-
Jsii$Proxy
Constructor that initializes the object based on literal property values passed by theBundlingOptions.Builder.
-
-
Method Details
-
getAssetHash
Description copied from interface:BundlingOptions(experimental) Specify a custom hash for this asset.If
assetHashTypeis set it must be set toAssetHashType.CUSTOM. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash.NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated.
Default: - based on `assetHashType`
- Specified by:
getAssetHashin interfaceBundlingOptions
-
getAssetHashType
Description copied from interface:BundlingOptions(experimental) Determines how the asset hash is calculated. Assets will get rebuilt and uploaded only if their hash has changed.If the asset hash is set to
OUTPUT(default), the hash is calculated after bundling. This means that any change in the output will cause the asset to be invalidated and uploaded. Bear in mind that the go binary that is output can be different depending on the environment that it was compiled in. If you want to control when the output is changed it is recommended that you use immutable build images such aspublic.ecr.aws/bitnami/golang:1.16.3-debian-10-r16.If the asset hash is set to
SOURCE, then only changes to the source directory will cause the asset to rebuild. If your go project has multiple Lambda functions this means that an update to any one function could cause all the functions to be rebuilt and uploaded.Default: - AssetHashType.OUTPUT. If `assetHash` is also specified, the default is `CUSTOM`.
- Specified by:
getAssetHashTypein interfaceBundlingOptions
-
getBuildArgs
Description copied from interface:BundlingOptions(experimental) Build arguments to pass when building the bundling image.Default: - no build arguments are passed
- Specified by:
getBuildArgsin interfaceBundlingOptions
-
getBundlingFileAccess
Description copied from interface:BundlingOptions(experimental) Which option to use to copy the source files to the docker container and output files back.Default: - BundlingFileAccess.BIND_MOUNT
- Specified by:
getBundlingFileAccessin interfaceBundlingOptions
-
getCgoEnabled
Description copied from interface:BundlingOptions(experimental) Whether or not to enable cgo during go build.This will set the CGO_ENABLED environment variable
Default: - false
- Specified by:
getCgoEnabledin interfaceBundlingOptions
-
getCommandHooks
Description copied from interface:BundlingOptions(experimental) Command hooks.⚠️ Security Warning: Commands are executed directly in the shell environment. Only use trusted commands from verified sources. Avoid shell metacharacters that could enable command injection attacks.
Default: - do not run additional commands
- Specified by:
getCommandHooksin interfaceBundlingOptions
-
getDockerImage
Description copied from interface:BundlingOptions(experimental) A custom bundling Docker image.Default: - use the Docker image provided by
- Specified by:
getDockerImagein interfaceBundlingOptions
-
getForcedDockerBundling
Description copied from interface:BundlingOptions(experimental) Force bundling in a Docker container even if local bundling is possible.Default: - false
- Specified by:
getForcedDockerBundlingin interfaceBundlingOptions
-
getGoBuildFlags
Description copied from interface:BundlingOptions(experimental) List of additional flags to use while building.For example: ['ldflags "-s -w"']
⚠️ Security Warning: These flags are passed directly to the Go build command. Only use trusted values as they can execute arbitrary commands during bundling. Avoid flags like
-toolexecwith untrusted arguments, and be cautious with third-party CDK constructs that may contain malicious build flags.Default: - none
- Specified by:
getGoBuildFlagsin interfaceBundlingOptions
-
getGoProxies
Description copied from interface:BundlingOptions(experimental) What Go proxies to use to fetch the packages involved in the build.Pass a list of proxy addresses in order, and/or the string
'direct'to attempt direct access.By default this construct uses no proxies, but a standard Go install would use the Google proxy by default. To recreate that behavior, do the following:
GoFunction.Builder.create(this, "GoFunction") .entry("app/cmd/api") .bundling(BundlingOptions.builder() .goProxies(List.of(GoFunction.GOOGLE_GOPROXY, "direct")) .build()) .build();Default: - Direct access
- Specified by:
getGoProxiesin interfaceBundlingOptions
-
getCommand
Description copied from interface:DockerRunOptionsThe command to run in the container.Default: - run the command defined in the image
- Specified by:
getCommandin interfaceDockerRunOptions
-
getEntrypoint
Description copied from interface:DockerRunOptionsThe entrypoint to run in the container.Default: - run the entrypoint defined in the image
- Specified by:
getEntrypointin interfaceDockerRunOptions
-
getEnvironment
Description copied from interface:DockerRunOptionsThe environment variables to pass to the container.Default: - no environment variables.
- Specified by:
getEnvironmentin interfaceDockerRunOptions
-
getNetwork
Description copied from interface:DockerRunOptionsDocker Networking options.Default: - no networking options
- Specified by:
getNetworkin interfaceDockerRunOptions
-
getPlatform
Description copied from interface:DockerRunOptionsSet platform if server is multi-platform capable. Requires Docker Engine API v1.38+.Example value:
linux/amd64Default: - no platform specified
- Specified by:
getPlatformin interfaceDockerRunOptions
-
getSecurityOpt
Description copied from interface:DockerRunOptionsSecurity configuration when running the docker container.Default: - no security options
- Specified by:
getSecurityOptin interfaceDockerRunOptions
-
getUser
Description copied from interface:DockerRunOptionsThe user to use when running the container.Default: - root or image default
- Specified by:
getUserin interfaceDockerRunOptions
-
getVolumes
Description copied from interface:DockerRunOptionsDocker volumes to mount.Default: - no volumes are mounted
- Specified by:
getVolumesin interfaceDockerRunOptions
-
getVolumesFrom
Description copied from interface:DockerRunOptionsWhere to mount the specified volumes from.Default: - no containers are specified to mount volumes from
- Specified by:
getVolumesFromin interfaceDockerRunOptions- See Also:
-
getWorkingDirectory
Description copied from interface:DockerRunOptionsWorking directory inside the container.Default: - image default
- Specified by:
getWorkingDirectoryin interfaceDockerRunOptions
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJsonin interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-