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:
    • getCommand

      public final List<String> getCommand()
      Specified by:
      getCommand in interface DockerRunOptions
    • getEntrypoint

      public final List<String> getEntrypoint()
      Specified by:
      getEntrypoint in interface DockerRunOptions
    • getEnvironment

      public final Map<String,String> getEnvironment()
      Specified by:
      getEnvironment in interface DockerRunOptions
    • getNetwork

      public final String getNetwork()
      Specified by:
      getNetwork in interface DockerRunOptions
    • getPlatform

      public final String getPlatform()
      Specified by:
      getPlatform in interface DockerRunOptions
    • getSecurityOpt

      public final String getSecurityOpt()
      Specified by:
      getSecurityOpt in interface DockerRunOptions
    • getUser

      public final String getUser()
      Specified by:
      getUser in interface DockerRunOptions
    • getVolumes

      public final List<DockerVolume> getVolumes()
      Specified by:
      getVolumes in interface DockerRunOptions
    • getVolumesFrom

      public final List<String> getVolumesFrom()
      Specified by:
      getVolumesFrom in interface DockerRunOptions
    • getWorkingDirectory

      public final String getWorkingDirectory()
      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