providers

package
Version: v1.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSSHConfig

func GetSSHConfig(name string) (string, *ssh.ClientConfig, error)

Types

type KindProvider

type KindProvider struct {
	// contains filtered or unexported fields
}

func (*KindProvider) GetKubeconfigPath

func (provider *KindProvider) GetKubeconfigPath() (string, error)

func (*KindProvider) RunCommandOnControlPlaneNode

func (provider *KindProvider) RunCommandOnControlPlaneNode(cmd string) (
	code int, stdout string, stderr string, err error,
)

func (*KindProvider) RunCommandOnNode

func (provider *KindProvider) RunCommandOnNode(nodeName string, cmd string) (
	code int, stdout string, stderr string, err error,
)

type ProviderInterface

type ProviderInterface interface {
	RunCommandOnNode(nodeName string, cmd string) (code int, stdout string, stderr string, err error)
	GetKubeconfigPath() (string, error)
}

Hides away specific characteristics of the K8s cluster. This should enable the same tests to be run on a variety of providers.

func NewKindProvider

func NewKindProvider(configPath string) (ProviderInterface, error)

NewKindProvider returns an implementation of ProviderInterface which is suitable for a Kubernetes test cluster created with Kind. configPath is unused for the kind provider

func NewRemoteProvider

func NewRemoteProvider(configPath string) (ProviderInterface, error)

NewRemoteProvider returns an implementation of ProviderInterface which enables tests to run on a remote cluster. configPath is unused for the remote provider

func NewVagrantProvider

func NewVagrantProvider(configPath string) (ProviderInterface, error)

NewVagrantProvider returns an implementation of ProviderInterface which is suitable for a Kubernetes test cluster created with the provided Vagrantfile. configPath is unused for the vagrant provider

type RemoteProvider

type RemoteProvider struct {
	// contains filtered or unexported fields
}

func (*RemoteProvider) GetKubeconfigPath

func (p *RemoteProvider) GetKubeconfigPath() (string, error)

func (*RemoteProvider) RunCommandOnNode

func (p *RemoteProvider) RunCommandOnNode(nodeName string, cmd string) (code int, stdout string, stderr string, err error)

type VagrantProvider

type VagrantProvider struct{}

func (*VagrantProvider) GetKubeconfigPath

func (provider *VagrantProvider) GetKubeconfigPath() (string, error)

func (*VagrantProvider) RunCommandOnNode

func (provider *VagrantProvider) RunCommandOnNode(nodeName string, cmd string) (
	code int, stdout string, stderr string, err error,
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL