Documentation ¶
Index ¶
- Constants
- type BinaryWriter
- type DockerDialer
- func (d *DockerDialer) Close() error
- func (d *DockerDialer) ExecStart(needRestore bool) error
- func (d *DockerDialer) MonitorTtySize(ctx context.Context) error
- func (d *DockerDialer) ResizeTty(ctx context.Context) error
- func (d *DockerDialer) ResizeTtyTo(ctx context.Context, height, width uint) error
- func (d *DockerDialer) SetDefaultSize(height, weight int) *DockerDialer
- func (d *DockerDialer) SetStdio(stdout, stderr io.Writer, stdin io.ReadCloser) *DockerDialer
- func (d *DockerDialer) SetWriter(w io.Writer) *DockerDialer
- func (d *DockerDialer) Terminal() error
- func (d *DockerDialer) TerminalWait() error
- func (d *DockerDialer) WebSocketTerminal() error
- type PtyDialer
- type SSHDialer
- func (d *SSHDialer) Close() error
- func (d *SSHDialer) Cmd(cmd string) *SSHDialer
- func (d *SSHDialer) Dial(t bool) (*ssh.Client, error)
- func (d *SSHDialer) Run() error
- func (d *SSHDialer) SetDefaultSize(height, weight int) *SSHDialer
- func (d *SSHDialer) SetStdio(stdout, stderr io.Writer, stdin io.ReadCloser) *SSHDialer
- func (d *SSHDialer) SetWriter(w io.Writer) *SSHDialer
- func (d *SSHDialer) Terminal() error
- func (d *SSHDialer) WebSocketTerminal(session *ssh.Session) error
- type TerminalReader
- type WebSocketDialer
- func (d *WebSocketDialer) ChangeWindowSize(win *WindowSize)
- func (d *WebSocketDialer) Close()
- func (d *WebSocketDialer) ReadMessage(ctx context.Context) error
- func (d *WebSocketDialer) SetDefaultSize(height, weight int) *WebSocketDialer
- func (d *WebSocketDialer) Terminal() error
- func (d *WebSocketDialer) Write(bytes []byte) error
- type WindowSize
Constants ¶
const ( SSHKind = "ssh" DockerKind = "docker" PtyKind = "pty" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BinaryWriter ¶ added in v0.4.3
type BinaryWriter struct {
// contains filtered or unexported fields
}
func NewBinaryWriter ¶ added in v0.4.3
func NewBinaryWriter(con *websocket.Conn) *BinaryWriter
type DockerDialer ¶ added in v0.4.3
type DockerDialer struct { Stdin io.ReadCloser Stdout io.Writer Stderr io.Writer Writer io.Writer Height int Weight int // contains filtered or unexported fields }
func NewDockerDialer ¶ added in v0.4.3
func NewDockerDialer(n *types.Node) (*DockerDialer, error)
func (*DockerDialer) Close ¶ added in v0.4.3
func (d *DockerDialer) Close() error
Close close the Docker connection.
func (*DockerDialer) ExecStart ¶ added in v0.4.3
func (d *DockerDialer) ExecStart(needRestore bool) error
ExecStart handles setting up the IO and then begins streaming stdin/stdout to/from the hijacked connection, blocking until it is either done reading output, the user inputs the detach key sequence when in TTY mode, or when the given context is cancelled. Borrowed from https://github.com/docker/cli/blob/master/cli/command/container/hijack.go#L40.
func (*DockerDialer) MonitorTtySize ¶ added in v0.4.3
func (d *DockerDialer) MonitorTtySize(ctx context.Context) error
MonitorTtySize monitor and change tty size. Borrowed from https://github.com/docker/cli/blob/master/cli/command/container/tty.go#L71.
func (*DockerDialer) ResizeTty ¶ added in v0.4.3
func (d *DockerDialer) ResizeTty(ctx context.Context) error
ResizeTty changes to the current win size.
func (*DockerDialer) ResizeTtyTo ¶ added in v0.4.3
func (d *DockerDialer) ResizeTtyTo(ctx context.Context, height, width uint) error
ResizeTtyTo changes the size of the tty for an exec process running inside a container.
func (*DockerDialer) SetDefaultSize ¶ added in v0.4.3
func (d *DockerDialer) SetDefaultSize(height, weight int) *DockerDialer
SetDefaultSize set dialer's default win size.
func (*DockerDialer) SetStdio ¶ added in v0.4.3
func (d *DockerDialer) SetStdio(stdout, stderr io.Writer, stdin io.ReadCloser) *DockerDialer
SetStdio set dialer's reader and writer.
func (*DockerDialer) SetWriter ¶ added in v0.4.3
func (d *DockerDialer) SetWriter(w io.Writer) *DockerDialer
SetWriter set dialer's logs writer.
func (*DockerDialer) Terminal ¶ added in v0.4.3
func (d *DockerDialer) Terminal() error
Terminal open docker exec terminal.
func (*DockerDialer) TerminalWait ¶ added in v0.4.3
func (d *DockerDialer) TerminalWait() error
Borrowed from https://github.com/docker/cli/blob/master/cli/command/container/exec.go#L180.
func (*DockerDialer) WebSocketTerminal ¶ added in v0.4.3
func (d *DockerDialer) WebSocketTerminal() error
WebSocketTerminal open docker websocket terminal.
type PtyDialer ¶ added in v0.4.3
type PtyDialer struct { Stdin io.ReadCloser Stdout io.Writer Stderr io.Writer Writer io.Writer Height int Weight int // contains filtered or unexported fields }
func (*PtyDialer) ChangeSize ¶ added in v0.4.3
func (d *PtyDialer) ChangeSize(win *WindowSize) error
ChangeSize changes to the current win size.
func (*PtyDialer) SetDefaultSize ¶ added in v0.4.3
SetDefaultSize set dialer's default win size.
func (*PtyDialer) WebSocketTerminal ¶ added in v0.4.3
WebSocketTerminal open pty websocket terminal.
type SSHDialer ¶
type SSHDialer struct { Stdin io.ReadCloser Stdout io.Writer Stderr io.Writer Writer io.Writer Height int Weight int Term string Modes ssh.TerminalModes // contains filtered or unexported fields }
func NewSSHDialer ¶ added in v0.4.3
func (*SSHDialer) Cmd ¶ added in v0.4.3
Cmd pass commands in dialer, support multiple calls, e.g. d.Cmd("ls").Cmd("id").
func (*SSHDialer) SetDefaultSize ¶ added in v0.4.3
SetDefaultSize set dialer's default win size.
type TerminalReader ¶ added in v0.4.3
type TerminalReader struct { ClosedCh chan bool // contains filtered or unexported fields }
func NewTerminalReader ¶ added in v0.4.3
func NewTerminalReader(con *websocket.Conn) *TerminalReader
func (*TerminalReader) Close ¶ added in v0.4.3
func (t *TerminalReader) Close() error
func (*TerminalReader) SetResizeFunction ¶ added in v0.4.3
func (t *TerminalReader) SetResizeFunction(resizeFun func(size *WindowSize))
type WebSocketDialer ¶ added in v0.4.3
type WebSocketDialer struct {
// contains filtered or unexported fields
}
func NewWebSocketDialer ¶ added in v0.4.3
func (*WebSocketDialer) ChangeWindowSize ¶ added in v0.4.3
func (d *WebSocketDialer) ChangeWindowSize(win *WindowSize)
ChangeWindowSize change websocket win size.
func (*WebSocketDialer) Close ¶ added in v0.4.3
func (d *WebSocketDialer) Close()
Close close the WebSocket connection.
func (*WebSocketDialer) ReadMessage ¶ added in v0.4.3
func (d *WebSocketDialer) ReadMessage(ctx context.Context) error
ReadMessage read websocket message.
func (*WebSocketDialer) SetDefaultSize ¶ added in v0.4.3
func (d *WebSocketDialer) SetDefaultSize(height, weight int) *WebSocketDialer
SetDefaultSize set dialer's default win size.
func (*WebSocketDialer) Terminal ¶ added in v0.4.3
func (d *WebSocketDialer) Terminal() error
Terminal open websocket terminal.
func (*WebSocketDialer) Write ¶ added in v0.4.3
func (d *WebSocketDialer) Write(bytes []byte) error
Write write bytes to the websocket connection.