func Listen(ctx context.Context, clientset kubernetes.Interface, restConfig *rest.Config, addr Addr) (net.Listener, error)
Listen creates a listener which returns new connections whenever someone connects to a socat or mock driver proxy instance running inside the given pod.
socat must by started with "<listen>,fork TCP-LISTEN:<port>,reuseport" for this to work. "<listen>" can be anything that accepts connections, for example "UNIX-LISTEN:/csi/csi.sock". In this mode, socat will accept exactly one connection on the given port for each connection that socat itself accepted.
Listening stops when the context is done or Close() is called.
Addr contains all relevant parameters for a certain port in a pod. The container must be running before connections are attempted.
type Addr struct { Namespace, PodName, ContainerName string Port int }
func (a Addr) Network() string
func (a Addr) String() string
type PodDirIO struct { F *framework.Framework Namespace string PodName string ContainerName string Logger *klog.Logger }
func (p PodDirIO) CreateFile(path string, content io.Reader) error
func (p PodDirIO) DirExists(path string) (bool, error)
func (p PodDirIO) Mkdir(path string) error
func (p PodDirIO) RemoveAll(path string) error
func (p PodDirIO) Rename(oldPath, newPath string) error