ExecutionPlane.Process.Transport.RunOptions (execution_plane v0.1.0)

Copy Markdown View Source

Validated options for synchronous non-PTY command execution.

Summary

Functions

Returns the default synchronous command timeout in milliseconds.

Builds validated run options for the raw transport command lane.

Types

stderr_mode()

@type stderr_mode() :: :separate | :stdout

t()

@type t() :: %ExecutionPlane.Process.Transport.RunOptions{
  close_stdin: boolean(),
  command: ExecutionPlane.Command.t(),
  os: module(),
  stderr: stderr_mode(),
  stdin: term(),
  timeout: timeout()
}

validation_error()

@type validation_error() ::
  {:invalid_command, term()}
  | {:invalid_args, term()}
  | {:invalid_cwd, term()}
  | {:invalid_env, term()}
  | {:invalid_clear_env, term()}
  | {:invalid_user, term()}
  | {:invalid_timeout, term()}
  | {:invalid_stderr, term()}
  | {:invalid_close_stdin, term()}
  | {:invalid_os, term()}

Functions

default_timeout_ms()

@spec default_timeout_ms() :: 30000

Returns the default synchronous command timeout in milliseconds.

new(command, opts \\ [])

@spec new(
  ExecutionPlane.Command.t(),
  keyword()
) :: {:ok, t()} | {:error, {:invalid_run_options, validation_error()}}

Builds validated run options for the raw transport command lane.