Documentation ¶
Overview ¶
Package remotecommand adds support for executing commands in containers, with support for separate stdin, stdout, and stderr streams, as well as TTY.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Executor ¶
type Executor interface { // Stream initiates the transport of the standard shell streams. It will transport any // non-nil stream to a remote system, and return an error if a problem occurs. If tty // is set, the stderr stream is not used (raw TTY manages stdout and stderr over the // stdout stream). Stream(options StreamOptions) error }
Executor is an interface for transporting shell-style streams.
func NewSPDYExecutor ¶
NewSPDYExecutor connects to the provided server and upgrades the connection to multiplexed bidirectional streams.
func NewSPDYExecutorForProtocols ¶
func NewSPDYExecutorForProtocols(config *restclient.Config, method string, url *url.URL, protocols ...string) (Executor, error)
NewSPDYExecutorForProtocols connects to the provided server and upgrades the connection to multiplexed bidirectional streams using only the provided protocols. Exposed for testing, most callers should use NewSPDYExecutor.
type StreamOptions ¶
type StreamOptions struct { Stdin io.Reader Stdout io.Writer Stderr io.Writer Tty bool TerminalSizeQueue TerminalSizeQueue }
StreamOptions holds information pertaining to the current streaming session: supported stream protocols, input/output streams, if the client is requesting a TTY, and a terminal size queue to support terminal resizing.
type TerminalSize ¶
TerminalSize represents the width and height of a terminal.
type TerminalSizeQueue ¶
type TerminalSizeQueue interface { // Next returns the new terminal size after the terminal has been resized. It returns nil when // monitoring has been stopped. Next() *TerminalSize }
TerminalSizeQueue is capable of returning terminal resize events as they occur.