e2e

package
v0.15.1-0...-d7b79a7 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2017 License: Apache-2.0 Imports: 131 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ADD    = "ADD"
	DEL    = "DEL"
	UPDATE = "UPDATE"
)
View Source
const (
	MinSaturationThreshold     = 2 * time.Minute
	MinPodsPerSecondThroughput = 8
	DensityPollInterval        = 10 * time.Second
)
View Source
const (
	DNSdefaultTimeout      = 5 * time.Minute
	ClusterAddonLabelKey   = "k8s-app"
	DNSLabelName           = "kube-dns"
	DNSAutoscalerLabelName = "kube-dns-autoscaler"
)
View Source
const (
	MinNodes         = 2
	NodeStateTimeout = 1 * time.Minute
)
View Source
const (
	NfsServerImage       string = "gcr.io/google_containers/volume-nfs:0.8"
	IscsiServerImage     string = "gcr.io/google_containers/volume-iscsi:0.1"
	GlusterfsServerImage string = "gcr.io/google_containers/volume-gluster:0.2"
	CephServerImage      string = "gcr.io/google_containers/volume-ceph:0.1"
	RbdServerImage       string = "gcr.io/google_containers/volume-rbd:0.1"
)

Current supported images for e2e volume testing to be assigned to VolumeTestConfig.serverImage

Variables

View Source
var (
	CronJobGroupVersionResource      = schema.GroupVersionResource{Group: batchv2alpha1.GroupName, Version: "v2alpha1", Resource: "cronjobs"}
	ScheduledJobGroupVersionResource = schema.GroupVersionResource{Group: batchv2alpha1.GroupName, Version: "v2alpha1", Resource: "scheduledjobs"}
)
View Source
var MaxContainerFailures = 0

Maximum container failures this test tolerates before failing.

Functions

func CheckCadvisorHealthOnAllNodes

func CheckCadvisorHealthOnAllNodes(c clientset.Interface, timeout time.Duration)

func ClusterLevelLoggingWithKibana

func ClusterLevelLoggingWithKibana(f *framework.Framework)

ClusterLevelLoggingWithKibana is an end to end test that checks to see if Kibana is alive.

func CreateNamespaces

func CreateNamespaces(f *framework.Framework, namespaceCount int, namePrefix string) ([]*v1.Namespace, error)

func CreateNodeSelectorPods

func CreateNodeSelectorPods(f *framework.Framework, id string, replicas int, nodeSelector map[string]string, expectRunning bool)

func GetGroupNodes

func GetGroupNodes(group string) ([]string, error)

func GroupSize

func GroupSize(group string) (int, error)

func NewRestartConfig

func NewRestartConfig(nodeName, daemonName string, healthzPort int, pollInterval, pollTimeout time.Duration) *restartDaemonConfig

NewRestartConfig creates a restartDaemonConfig for the given node and daemon.

func Query

func Query(c clientset.Interface, query string) (*influxdb.Response, error)

Query sends a command to the server and returns the Response

func RemoveCleanupAction

func RemoveCleanupAction(p CleanupActionHandle)

RemoveCleanupAction removes a function that was installed by AddCleanupAction.

func ReplicaSetServeImageOrFail

func ReplicaSetServeImageOrFail(f *framework.Framework, test string, image string)

A basic test to check the deployment of an image using a ReplicaSet. The image serves its hostname which is checked for each replica.

func ReserveMemory

func ReserveMemory(f *framework.Framework, id string, replicas, megabytes int, expectRunning bool)

func ResizeGroup

func ResizeGroup(group string, size int32) error

func RunCleanupActions

func RunCleanupActions()

RunCleanupActions runs all functions installed by AddCleanupAction. It does not remove them (see RemoveCleanupAction) but it does run unlocked, so they may remove themselves.

func RunE2ETests

func RunE2ETests(t *testing.T)

TestE2E checks configuration parameters (specified through flags) and then runs E2E tests using the Ginkgo runner. If a "report directory" is specified, one or more JUnit test reports will be generated in this directory, and cluster logs will also be saved. This function is called on each Ginkgo node in parallel mode.

func RunLogPodsWithSleepOf

func RunLogPodsWithSleepOf(f *framework.Framework, sleep time.Duration, podname string, timeout time.Duration)

RunLogPodsWithSleepOf creates a pod on every node, logs continuously (with "sleep" pauses), and verifies that the log string was produced in each and every pod at least once. The final arg is the timeout for the test to verify all the pods got logs.

func ServeImageOrFail

func ServeImageOrFail(f *framework.Framework, test string, image string)

A basic test to check the deployment of an image using a replication controller. The image serves its hostname which is checked for each replica.

func SpreadRCOrFail

func SpreadRCOrFail(f *framework.Framework, replicaCount int32, image string)

Check that the pods comprising a replication controller get spread evenly across available zones

func SpreadServiceOrFail

func SpreadServiceOrFail(f *framework.Framework, replicaCount int, image string)

Check that the pods comprising a service get spread evenly across available zones

func WaitForClusterSizeFunc

func WaitForClusterSizeFunc(c clientset.Interface, sizeFunc func(int) bool, timeout time.Duration) error

WaitForClusterSize waits until the cluster size matches the given function.

func WaitForGroupSize

func WaitForGroupSize(group string, size int32) error

func WaitForTerminatedContainer

func WaitForTerminatedContainer(f *framework.Framework, pod *v1.Pod, containerName string) error

Types

type CleanupActionHandle

type CleanupActionHandle *int

func AddCleanupAction

func AddCleanupAction(fn func()) CleanupActionHandle

AddCleanupAction installs a function that will be called in the event of the whole test being terminated. This allows arbitrary pieces of the overall test to hook into SynchronizedAfterSuite().

type DNSParamsLinear

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

type DensityTestConfig

type DensityTestConfig struct {
	Configs           []testutils.RunObjectConfig
	ClientSet         clientset.Interface
	InternalClientset internalclientset.Interface
	PollInterval      time.Duration
	PodCount          int

	SecretConfigs []*testutils.SecretConfig
	DaemonConfigs []*testutils.DaemonConfig
	// contains filtered or unexported fields
}

type Foo

type Foo struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty" description:"standard object metadata"`

	SomeField  string `json:"someField"`
	OtherField int    `json:"otherField"`
}

type FooList

type FooList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `` /* 134-byte string literal not displayed */

	Items []Foo `json:"items"`
}

type HPAScaleTest

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

HPAScaleTest struct is used by the scale(...) function.

type IPerfResult

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

IPerfResult struct modelling an iperf record.... 20160314154239,172.17.0.3,34152,172.17.0.2,5001,3,0.0-10.0,33843707904,27074774092

func NewIPerf

func NewIPerf(csvLine string) *IPerfResult

NewIPerf parses an IPerf CSV output line into an IPerfResult.

type IPerfResults

type IPerfResults struct {
	BandwidthMap map[string]int64
}

func (*IPerfResults) Add

func (i *IPerfResults) Add(ipr *IPerfResult)

Add adds a new result to the Results struct.

func (*IPerfResults) ToTSV

func (i *IPerfResults) ToTSV() string

ToTSV exports an easily readable tab delimited format of all IPerfResults.

type LBCTester

type LBCTester interface {
	// contains filtered or unexported methods
}

LBCTester is an interface used to test loadbalancer controllers.

type State

type State struct {
	Received map[string]int
}

partially cloned from webserver.go

type StrSlice

type StrSlice []string

type VolumeTest

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

VolumeTest contains a volumes to mount into a client pod and its expected content.

type VolumeTestConfig

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

Configuration of one tests. The test consist of: - server pod - runs serverImage, exports ports[] - client pod - does not need any special configuration

Directories

Path Synopsis
Package upgrades provides a framework for testing Kubernetes features before, during, and after different types of upgrades.
Package upgrades provides a framework for testing Kubernetes features before, during, and after different types of upgrades.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL