Documentation
¶
Overview ¶
package remotecommand contains functions related to executing commands in and attaching to pods.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ServeAttach ¶
func ServeAttach(w http.ResponseWriter, req *http.Request, attacher Attacher, podName string, uid types.UID, container string, streamOpts *Options, idleTimeout, streamCreationTimeout time.Duration, supportedProtocols []string)
ServeAttach handles requests to attach to a container. After creating/receiving the required streams, it delegates the actual attaching to attacher.
func ServeExec ¶
func ServeExec(w http.ResponseWriter, req *http.Request, executor Executor, podName string, uid types.UID, container string, cmd []string, streamOpts *Options, idleTimeout, streamCreationTimeout time.Duration, supportedProtocols []string)
ServeExec handles requests to execute a command in a container. After creating/receiving the required streams, it delegates the actual execution to the executor.
Types ¶
type Attacher ¶
type Attacher interface {
// AttachContainer attaches to the running container in the pod, copying data between in/out/err
// and the container's stdin/stdout/stderr.
AttachContainer(name string, uid types.UID, container string, in io.Reader, out, err io.WriteCloser, tty bool, resize <-chan remotecommand.TerminalSize) error
}
Attacher knows how to attach to a running container in a pod.
type Executor ¶
type Executor interface {
// ExecInContainer executes a command in a container in the pod, copying data
// between in/out/err and the container's stdin/stdout/stderr.
ExecInContainer(name string, uid types.UID, container string, cmd []string, in io.Reader, out, err io.WriteCloser, tty bool, resize <-chan remotecommand.TerminalSize, timeout time.Duration) error
}
Executor knows how to execute a command in a container in a pod.
type Options ¶ added in v1.5.0
type Options struct {
Stdin bool
Stdout bool
Stderr bool
TTY bool
}
Options contains details about which streams are required for remote command execution.
func NewOptions ¶ added in v1.5.0
func NewOptions(req *http.Request) (*Options, error)
NewOptions creates a new Options from the Request.