BundlingOptions

class aws_cdk.core.BundlingOptions(*, image, command=None, entrypoint=None, environment=None, local=None, output_type=None, security_opt=None, user=None, volumes=None, working_directory=None)

Bases: object

Bundling options.

Parameters:
  • image (DockerImage) – The Docker image where the command will run.

  • command (Optional[Sequence[str]]) – The command to run in the Docker container. Example value: ['npm', 'install'] Default: - run the command defined in the image

  • entrypoint (Optional[Sequence[str]]) – The entrypoint to run in the Docker container. Example value: ['/bin/sh', '-c'] Default: - run the entrypoint defined in the image

  • environment (Optional[Mapping[str, str]]) – The environment variables to pass to the Docker container. Default: - no environment variables.

  • local (Optional[ILocalBundling]) – Local bundling provider. The provider implements a method tryBundle() which should return true if local bundling was performed. If false is returned, docker bundling will be done. Default: - bundling will only be performed in a Docker container

  • output_type (Optional[BundlingOutput]) – The type of output that this bundling operation is producing. Default: BundlingOutput.AUTO_DISCOVER

  • security_opt (Optional[str]) – Security configuration when running the docker container. Default: - no security options

  • user (Optional[str]) – The user to use when running the Docker container. user | user:group | uid | uid:gid | user:gid | uid:group Default: - uid:gid of the current user or 1000:1000 on Windows

  • volumes (Optional[Sequence[Union[DockerVolume, Dict[str, Any]]]]) – Additional Docker volumes to mount. Default: - no additional volumes are mounted

  • working_directory (Optional[str]) – Working directory inside the Docker container. Default: /asset-input

ExampleMetadata:

lit=test/integ.assets.bundling.lit.ts infused

Example:

asset = assets.Asset(self, "BundledAsset",
    path=path.join(__dirname, "markdown-asset"),  # /asset-input and working directory in the container
    bundling=BundlingOptions(
        image=DockerImage.from_build(path.join(__dirname, "alpine-markdown")),  # Build an image
        command=["sh", "-c", """
                        markdown index.md > /asset-output/index.html
                      """
        ]
    )
)

Attributes

command

The command to run in the Docker container.

Example value: ['npm', 'install']

Default:
  • run the command defined in the image

See:

https://docs.docker.com/engine/reference/run/

entrypoint

The entrypoint to run in the Docker container.

Example value: ['/bin/sh', '-c']

Default:
  • run the entrypoint defined in the image

See:

https://docs.docker.com/engine/reference/builder/#entrypoint

environment

The environment variables to pass to the Docker container.

Default:
  • no environment variables.

image

The Docker image where the command will run.

local

Local bundling provider.

The provider implements a method tryBundle() which should return true if local bundling was performed. If false is returned, docker bundling will be done.

Default:
  • bundling will only be performed in a Docker container

output_type

The type of output that this bundling operation is producing.

Default:

BundlingOutput.AUTO_DISCOVER

security_opt

//docs.docker.com/engine/reference/run/#security-configuration>`_ when running the docker container.

Default:
  • no security options

Type:

`Security configuration <https

user

The user to use when running the Docker container.

user | user:group | uid | uid:gid | user:gid | uid:group

Default:
  • uid:gid of the current user or 1000:1000 on Windows

See:

https://docs.docker.com/engine/reference/run/#user

volumes

Additional Docker volumes to mount.

Default:
  • no additional volumes are mounted

working_directory

Working directory inside the Docker container.

Default:

/asset-input