Skip to content

Latest commit

 

History

History
103 lines (76 loc) · 2.16 KB

command.run_command.rst

File metadata and controls

103 lines (76 loc) · 2.16 KB

command.run_command

Hook Path

runway.cfngin.hooks.command.run_command

Run a shell custom command as a hook.

Args

command

Command(s) to run.

capture

If enabled, capture the command's stdout and stderr, and return them in the hook result.

interactive

If enabled, allow the command to interact with stdin. Otherwise, stdin will be set to the null device.

ignore_status

Don't fail the hook if the command returns a non-zero status.

quiet

Redirect the command's stdout and stderr to the null device, silencing all output. Should not be enabled if capture is also enabled.

stdin

String to send to the stdin of the command. Implicitly disables interactive.

env

Dictionary of environment variable overrides for the command context. Will be merged with the current environment.

**kwargs

Any other arguments will be forwarded to the subprocess.Popen function. Interesting ones include: cwd and shell.

Example

pre_deploy:
  - path: runway.cfngin.hooks.command.run_command
    required: true
    enabled: true
    data_key: copy_env
    args:
      command: ['cp', 'environment.template', 'environment']
  - path: runway.cfngin.hooks.command.run_command
    required: true
    enabled: true
    data_key: get_git_commit
    args:
      command: ['git', 'rev-parse', 'HEAD']
      cwd: ./my-git-repo
      capture: true
  - path: runway.cfngin.hooks.command.run_command
    args:
      command: '`cd $PROJECT_DIR/project; npm install`'
      env:
        PROJECT_DIR: ./my-project
        shell: true