Documentation
¶
Index ¶
- func BuildTestImageName(appName string) string
- type AppUsage
- type Disposable
- type KubeTestPlatform
- func (c *KubeTestPlatform) AcquireAppExternalURL(name string) string
- func (c *KubeTestPlatform) AddApps(apps []kube.AppDescription) error
- func (c *KubeTestPlatform) AddComponents(comps []kube.ComponentDescription) error
- func (c *KubeTestPlatform) AddSecrets(secrets []kube.SecretDescription) error
- func (c *KubeTestPlatform) GetAppHostDetails(name string) (string, string, error)
- func (c *KubeTestPlatform) GetAppUsage(appName string) (*AppUsage, error)
- func (c *KubeTestPlatform) GetConfiguration(name string) (*configurationv1alpha1.Configuration, error)
- func (c *KubeTestPlatform) GetOrCreateNamespace(parentCtx context.Context, namespace string) (*corev1.Namespace, error)
- func (c *KubeTestPlatform) GetService(name string) (*corev1.Service, error)
- func (c *KubeTestPlatform) GetSidecarUsage(appName string) (*AppUsage, error)
- func (c *KubeTestPlatform) GetTotalRestarts(appName string) (int, error)
- func (c *KubeTestPlatform) LoadTest(loadtester LoadTester) error
- func (c *KubeTestPlatform) PortForwardToApp(appName string, targetPorts ...int) ([]int, error)
- func (c *KubeTestPlatform) Restart(name string) error
- func (c *KubeTestPlatform) Scale(name string, replicas int32) error
- func (c *KubeTestPlatform) SetAppEnv(name, key, value string) error
- func (c *KubeTestPlatform) Setup() (err error)
- func (c *KubeTestPlatform) TearDown() error
- type LoadTester
- type PlatformInterface
- type TestResources
- type TestRunner
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildTestImageName ¶ added in v1.9.0
BuildTestImage name uses the default registry and tag to build a image name for the given test app.
Types ¶
type Disposable ¶
type Disposable interface {
Name() string
Init(ctx context.Context) error
Dispose(wait bool) error
}
Disposable is an interface representing the disposable test resources.
type KubeTestPlatform ¶
type KubeTestPlatform struct {
AppResources *TestResources
ComponentResources *TestResources
Secrets *TestResources
KubeClient *kube.KubeClient
}
KubeTestPlatform includes K8s client for testing cluster and kubernetes testing apps.
func NewKubeTestPlatform ¶
func NewKubeTestPlatform() *KubeTestPlatform
NewKubeTestPlatform creates KubeTestPlatform instance.
func (*KubeTestPlatform) AcquireAppExternalURL ¶
func (c *KubeTestPlatform) AcquireAppExternalURL(name string) string
AcquireAppExternalURL returns the external url for 'name'.
func (*KubeTestPlatform) AddApps ¶ added in v1.10.0
func (c *KubeTestPlatform) AddApps(apps []kube.AppDescription) error
addApps adds test apps to disposable App Resource queues.
func (*KubeTestPlatform) AddComponents ¶ added in v1.10.0
func (c *KubeTestPlatform) AddComponents(comps []kube.ComponentDescription) error
addComponents adds component to disposable Resource queues.
func (*KubeTestPlatform) AddSecrets ¶ added in v1.12.0
func (c *KubeTestPlatform) AddSecrets(secrets []kube.SecretDescription) error
AddSecrets adds secrets to disposable Resource queues.
func (*KubeTestPlatform) GetAppHostDetails ¶ added in v0.8.0
func (c *KubeTestPlatform) GetAppHostDetails(name string) (string, string, error)
GetAppHostDetails returns the name and IP address of the host(pod) running 'name'.
func (*KubeTestPlatform) GetAppUsage ¶ added in v0.10.0
func (c *KubeTestPlatform) GetAppUsage(appName string) (*AppUsage, error)
GetAppUsage returns the Cpu and Memory usage for the app container for a given app.
func (*KubeTestPlatform) GetConfiguration ¶ added in v1.7.0
func (c *KubeTestPlatform) GetConfiguration(name string) (*configurationv1alpha1.Configuration, error)
GetConfiguration returns configuration by name.
func (*KubeTestPlatform) GetOrCreateNamespace ¶ added in v1.12.0
func (c *KubeTestPlatform) GetOrCreateNamespace(parentCtx context.Context, namespace string) (*corev1.Namespace, error)
GetOrCreateNamespace gets or creates namespace unless namespace exists.
func (*KubeTestPlatform) GetService ¶ added in v1.9.0
func (c *KubeTestPlatform) GetService(name string) (*corev1.Service, error)
func (*KubeTestPlatform) GetSidecarUsage ¶ added in v1.0.0
func (c *KubeTestPlatform) GetSidecarUsage(appName string) (*AppUsage, error)
GetSidecarUsage returns the Cpu and Memory usage for the dapr container for a given app.
func (*KubeTestPlatform) GetTotalRestarts ¶ added in v1.0.0
func (c *KubeTestPlatform) GetTotalRestarts(appName string) (int, error)
GetTotalRestarts returns the total of restarts across all pods and containers for an app.
func (*KubeTestPlatform) LoadTest ¶ added in v1.10.0
func (c *KubeTestPlatform) LoadTest(loadtester LoadTester) error
func (*KubeTestPlatform) PortForwardToApp ¶ added in v0.8.0
func (c *KubeTestPlatform) PortForwardToApp(appName string, targetPorts ...int) ([]int, error)
PortForwardToApp opens a new connection to the app on a the target port and returns the local port or error.
func (*KubeTestPlatform) Restart ¶ added in v0.3.0
func (c *KubeTestPlatform) Restart(name string) error
Restart restarts all instances for the app.
func (*KubeTestPlatform) Scale ¶ added in v0.3.0
func (c *KubeTestPlatform) Scale(name string, replicas int32) error
Scale changes the number of replicas of the app.
func (*KubeTestPlatform) SetAppEnv ¶ added in v1.3.0
func (c *KubeTestPlatform) SetAppEnv(name, key, value string) error
SetAppEnv sets the container environment variable.
func (*KubeTestPlatform) Setup ¶ added in v1.10.0
func (c *KubeTestPlatform) Setup() (err error)
func (*KubeTestPlatform) TearDown ¶ added in v1.10.0
func (c *KubeTestPlatform) TearDown() error
type LoadTester ¶ added in v1.10.0
type LoadTester interface {
Run(platform PlatformInterface) error
}
type PlatformInterface ¶
type PlatformInterface interface {
Setup() error
TearDown() error
AddComponents(comps []kube.ComponentDescription) error
AddApps(apps []kube.AppDescription) error
AddSecrets(secrets []kube.SecretDescription) error
AcquireAppExternalURL(name string) string
GetAppHostDetails(name string) (string, string, error)
Restart(name string) error
Scale(name string, replicas int32) error
PortForwardToApp(appName string, targetPort ...int) ([]int, error)
SetAppEnv(appName, key, value string) error
GetAppUsage(appName string) (*AppUsage, error)
GetSidecarUsage(appName string) (*AppUsage, error)
GetTotalRestarts(appname string) (int, error)
GetConfiguration(name string) (*configurationv1alpha1.Configuration, error)
GetService(name string) (*corev1.Service, error)
LoadTest(loadtester LoadTester) error
}
PlatformInterface defines the testing platform for test runner.
type TestResources ¶
type TestResources struct {
// contains filtered or unexported fields
}
TestResources holds initial resources and active resources.
func (*TestResources) Add ¶
func (r *TestResources) Add(dr Disposable)
Add adds Disposable resource to resources queue.
func (*TestResources) FindActiveResource ¶
func (r *TestResources) FindActiveResource(name string) Disposable
FindActiveResource finds active resource by resource name.
type TestRunner ¶
type TestRunner struct {
// Platform is the testing platform instances
Platform PlatformInterface
// contains filtered or unexported fields
}
TestRunner holds initial test apps and testing platform instance maintains apps and platform for e2e test.
func NewTestRunner ¶
func NewTestRunner(id string, apps []kube.AppDescription, comps []kube.ComponentDescription, initApps []kube.AppDescription, ) *TestRunner
NewTestRunner returns TestRunner instance for e2e test.
func (*TestRunner) AddSecrets ¶ added in v1.12.0
func (tr *TestRunner) AddSecrets(secrets []kube.SecretDescription)
func (*TestRunner) Start ¶
func (tr *TestRunner) Start(m runnable) int
Start is the entry point of Dapr test runner.
func (*TestRunner) TearDown ¶ added in v1.10.0
func (tr *TestRunner) TearDown()