Class BundlingOptions.Jsii$Proxy

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.lambda.python.alpha.BundlingOptions.Jsii$Proxy
All Implemented Interfaces:
DockerRunOptions, BundlingOptions, software.amazon.jsii.JsiiSerializable
Enclosing interface:
BundlingOptions

@Stability(Experimental) @Internal public static final class BundlingOptions.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements BundlingOptions
An implementation for BundlingOptions
  • 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

      protected Jsii$Proxy(BundlingOptions.Builder builder)
      Constructor that initializes the object based on literal property values passed by the BundlingOptions.Builder.
  • Method Details

    • getAssetExcludes

      public final List<String> getAssetExcludes()
      Description copied from interface: BundlingOptions
      (experimental) List of file patterns to exclude when copying assets from source for bundling.

      Default: - Empty list

      Specified by:
      getAssetExcludes in interface BundlingOptions
    • getAssetHash

      public final String getAssetHash()
      Description copied from interface: BundlingOptions
      (experimental) Specify a custom hash for this asset.

      If assetHashType is set it must be set to AssetHashType.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:
      getAssetHash in interface BundlingOptions
    • getAssetHashType

      public final AssetHashType getAssetHashType()
      Description copied from interface: BundlingOptions
      (experimental) Determines how asset hash is calculated. Assets will get rebuild and uploaded only if their hash has changed.

      If asset hash is set to SOURCE (default), then only changes to the source directory will cause the asset to rebuild. This means, for example, that in order to pick up a new dependency version, a change must be made to the source tree. Ideally, this can be implemented by including a dependency lockfile in your source tree or using fixed dependencies.

      If the asset hash is set to OUTPUT, 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 pip adds timestamps to dependencies it installs, which implies that in this mode Python bundles will always get rebuild and uploaded. Normally this is an anti-pattern since build

      Default: AssetHashType.SOURCE By default, hash is calculated based on the contents of the source directory. This means that only updates to the source will cause the asset to rebuild.

      Specified by:
      getAssetHashType in interface BundlingOptions
    • getBuildArgs

      public final Map<String,String> getBuildArgs()
      Description copied from interface: BundlingOptions
      (experimental) Optional build arguments to pass to the default container.

      This can be used to customize the index URLs used for installing dependencies. This is not used if a custom image is provided.

      Default: - No build arguments.

      Specified by:
      getBuildArgs in interface BundlingOptions
    • getBundlingFileAccess

      public final BundlingFileAccess 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:
      getBundlingFileAccess in interface BundlingOptions
    • getCommandHooks

      public final ICommandHooks getCommandHooks()
      Description copied from interface: BundlingOptions
      (experimental) Command hooks.

      Default: - do not run additional commands

      Specified by:
      getCommandHooks in interface BundlingOptions
    • getImage

      public final DockerImage getImage()
      Description copied from interface: BundlingOptions
      (experimental) Docker image to use for bundling.

      If no options are provided, the default bundling image will be used. Dependencies will be installed using the default packaging commands and copied over from into the Lambda asset.

      Default: - Default bundling image.

      Specified by:
      getImage in interface BundlingOptions
    • getOutputPathSuffix

      public final String getOutputPathSuffix()
      Description copied from interface: BundlingOptions
      (experimental) Output path suffix: the suffix for the directory into which the bundled output is written.

      Default: - 'python' for a layer, empty string otherwise.

      Specified by:
      getOutputPathSuffix in interface BundlingOptions
    • getPoetryIncludeHashes

      public final Boolean getPoetryIncludeHashes()
      Description copied from interface: BundlingOptions
      (experimental) Whether to export Poetry dependencies with hashes.

      Note that this can cause builds to fail if not all dependencies export with a hash.

      Default: Hashes are NOT included in the exported `requirements.txt` file

      Specified by:
      getPoetryIncludeHashes in interface BundlingOptions
      See Also:
    • getPoetryWithoutUrls

      public final Boolean getPoetryWithoutUrls()
      Description copied from interface: BundlingOptions
      (experimental) Whether to export Poetry dependencies with source repository urls.

      Default: URLs are included in the exported `requirements.txt` file.

      Specified by:
      getPoetryWithoutUrls in interface BundlingOptions
    • getCommand

      public final List<String> getCommand()
      Description copied from interface: DockerRunOptions
      The command to run in the container.

      Default: - run the command defined in the image

      Specified by:
      getCommand in interface DockerRunOptions
    • getEntrypoint

      public final List<String> getEntrypoint()
      Description copied from interface: DockerRunOptions
      The entrypoint to run in the container.

      Default: - run the entrypoint defined in the image

      Specified by:
      getEntrypoint in interface DockerRunOptions
    • getEnvironment

      public final Map<String,String> getEnvironment()
      Description copied from interface: DockerRunOptions
      The environment variables to pass to the container.

      Default: - no environment variables.

      Specified by:
      getEnvironment in interface DockerRunOptions
    • getNetwork

      public final String getNetwork()
      Description copied from interface: DockerRunOptions
      Docker Networking options.

      Default: - no networking options

      Specified by:
      getNetwork in interface DockerRunOptions
    • getPlatform

      public final String getPlatform()
      Description copied from interface: DockerRunOptions
      Set platform if server is multi-platform capable. Requires Docker Engine API v1.38+.

      Example value: linux/amd64

      Default: - no platform specified

      Specified by:
      getPlatform in interface DockerRunOptions
    • getSecurityOpt

      public final String getSecurityOpt()
      Description copied from interface: DockerRunOptions
      Security configuration when running the docker container.

      Default: - no security options

      Specified by:
      getSecurityOpt in interface DockerRunOptions
    • getUser

      public final String getUser()
      Description copied from interface: DockerRunOptions
      The user to use when running the container.

      Default: - root or image default

      Specified by:
      getUser in interface DockerRunOptions
    • getVolumes

      public final List<DockerVolume> getVolumes()
      Description copied from interface: DockerRunOptions
      Docker volumes to mount.

      Default: - no volumes are mounted

      Specified by:
      getVolumes in interface DockerRunOptions
    • getVolumesFrom

      public final List<String> getVolumesFrom()
      Description copied from interface: DockerRunOptions
      Where to mount the specified volumes from.

      Default: - no containers are specified to mount volumes from

      Specified by:
      getVolumesFrom in interface DockerRunOptions
      See Also:
    • getWorkingDirectory

      public final String getWorkingDirectory()
      Description copied from interface: DockerRunOptions
      Working directory inside the container.

      Default: - image default

      Specified by:
      getWorkingDirectory in interface DockerRunOptions
    • $jsii$toJson

      @Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
      Specified by:
      $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object