Documentation

Overview

    Package portforward adds support for SSH-like port forwarding from the client's local host to remote containers.

    Index

    Constants

    View Source
    const PortForwardProtocolV1Name = "portforward.k8s.io"

      PortForwardProtocolV1Name is the subprotocol used for port forwarding. TODO move to API machinery and re-unify with kubelet/server/portfoward

      Variables

      This section is empty.

      Functions

      This section is empty.

      Types

      type ForwardedPort

      type ForwardedPort struct {
      	Local  uint16
      	Remote uint16
      }

        ForwardedPort contains a Local:Remote port pairing.

        type PortForwarder

        type PortForwarder struct {
        	Ready chan struct{}
        	// contains filtered or unexported fields
        }

          PortForwarder knows how to listen for local connections and forward them to a remote pod via an upgraded HTTP request.

          func New

          func New(dialer httpstream.Dialer, ports []string, stopChan <-chan struct{}, readyChan chan struct{}, out, errOut io.Writer) (*PortForwarder, error)

            New creates a new PortForwarder with localhost listen addresses.

            func NewOnAddresses

            func NewOnAddresses(dialer httpstream.Dialer, addresses []string, ports []string, stopChan <-chan struct{}, readyChan chan struct{}, out, errOut io.Writer) (*PortForwarder, error)

              NewOnAddresses creates a new PortForwarder with custom listen addresses.

              func (*PortForwarder) Close

              func (pf *PortForwarder) Close()

                Close stops all listeners of PortForwarder.

                func (*PortForwarder) ForwardPorts

                func (pf *PortForwarder) ForwardPorts() error

                  ForwardPorts formats and executes a port forwarding request. The connection will remain open until stopChan is closed.

                  func (*PortForwarder) GetPorts

                  func (pf *PortForwarder) GetPorts() ([]ForwardedPort, error)

                    GetPorts will return the ports that were forwarded; this can be used to retrieve the locally-bound port in cases where the input was port 0. This function will signal an error if the Ready channel is nil or if the listeners are not ready yet; this function will succeed after the Ready channel has been closed.