package
0.0.0-20190319231021-e6272b887b81
Repository: https://github.com/marun/kubernetes.git
Documentation: pkg.go.dev
# Packages
Package config simplifies the declaration of configuration options.
Package ginkgowrapper wraps Ginkgo Fail and Skip functions to panic with structured data instead of a constant string.
No description provided by the author
No description provided by the author
Package podlogs enables live capturing of all events and log messages for some or all pods in a namespace as they get generated.
No description provided by the author
Package testfiles provides a wrapper around various optional ways of retrieving additional files needed during a test run: - builtin bindata - filesystem access
Because it is a is self-contained package, it can be used by test/e2e/framework and test/e2e/manifest without creating a circular dependency.
No description provided by the author
No description provided by the author
# Functions
AddCleanupAction installs a function that will be called in the event of the whole test being terminated.
AddOrUpdateAvoidPodOnNode adds avoidPods annotations to node, will override if it exists.
No description provided by the author
No description provided by the author
No description provided by the author
AfterReadingAllFlags makes changes to the context after all flags have been read.
Checks whether all registered nodes are ready.
ApiCallToPerfData transforms APIResponsiveness to PerfData.
Asserts that cleanup of a namespace wrt selectors occurred.
BindClusterRole binds the cluster role at the cluster scope.
BindClusterRoleInNamespace binds the cluster role at the namespace scope.
BindRoleInNamespace binds the role at the namespace scope.
The following helper functions can block/unblock network from source host to destination host by manipulating iptable rules.
CheckAffinity function tests whether the service affinity works as expected.
CheckConnectivityToHost launches a pod to test connectivity to the specified host.
CheckDeploymentRevisionAndImage checks if the input deployment's and its new replica set's revision and image are as expected.
CheckForAllJobPodsRunning uses c to check in the Job named jobName in ns is running.
CheckForControllerManagerHealthy checks that the controller manager does not crash within "duration".
No description provided by the author
No description provided by the author
CheckNewRSAnnotations check if the new RS's annotation is as expected.
CheckNodesReady waits up to timeout for cluster to has desired size and there is no not-ready nodes in it.
No description provided by the author
CheckPodsCondition returns whether all pods whose names are listed in podNames in namespace ns are in the condition, using c and waiting at most timeout.
CheckPodsRunningReady returns whether all pods whose names are listed in podNames in namespace ns are running and ready, using c and waiting at most timeout.
CheckPodsRunningReadyOrSucceeded returns whether all pods whose names are listed in podNames in namespace ns are running and ready, or succeeded; use c and waiting at most timeout.
No description provided by the author
CheckTestingNSDeletedExcept checks whether all e2e based existing namespaces are in the Terminating state and waits until they are finally deleted.
Stops everything from filePath from namespace ns and checks if everything matching selectors from the given namespace is correctly stopped.
No description provided by the author
Wrapper of cleanup function for volume server without secret created by specific CreateStorageServer function.
Wrapper of cleanup function for volume server with secret created by specific CreateStorageServer function.
No description provided by the author
No description provided by the author
Wrapper function for ginkgo It.
No description provided by the author
CoreDump SSHs to the master and all nodes and dumps their logs into dir.
CPUUsageToPerfData transforms NodesCPUSummary to PerfData.
CPUUsageToPerfDataWithLabels transforms NodesCPUSummary to PerfData with additional labels.
Define and create a pod with a mounted PV.
No description provided by the author
create empty file at given path on the pod.
CreateExecPodOrFail creates a simple busybox pod in a sleep loop used as a vessel for kubectl exec commands.
No description provided by the author
CreateJob uses c to create job in namespace ns.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
CreatePod with given claims based on node selector.
No description provided by the author
No description provided by the author
create the PV resource.
create the PVC resource.
Create a PVC followed by the PV based on the passed in nfs-server ip and namespace.
Create a PV followed by the PVC based on the passed in nfs-server ip and namespace.
No description provided by the author
Create the desired number of PVs and PVCs and return them in separate maps.
create security pod with given claims.
create security pod with given claims.
No description provided by the author
CreateStatefulSetService creates a Headless Service with Name name and Selector set to match labels.
Wrapper for StartVolumeServer().
CreateTestingNS should be used by every test, note that we append a common prefix to the provided test name.
CreateUnschedulablePod with given claims based on node selector.
Create the test pod, wait for (hopefully) success, and then delete the pod.
DeleteAllStatefulSets deletes all StatefulSet API Objects in Namespace ns.
DeleteJob uses c to delete the Job named name in namespace ns.
No description provided by the author
DeleteNamespaces deletes all namespaces that match the given delete and skip filters.
No description provided by the author
No description provided by the author
Delete the PV.
Delete the Claim.
No description provided by the author
Deletes the passed-in pod and waits for the pod to be terminated.
Deletes the named and namespaced pod and waits for the pod to be terminated.
Delete the PVC and wait for the PV to enter its expected phase.
Wraps deletePVCandValidatePV() by calling the function in a loop over the PV map.
No description provided by the author
DeleteRCAndWaitForGC deletes only the Replication Controller and waits for GC to delete the pods.
DeleteResourceAndWaitForGC deletes only given resource and waits for GC to delete the pods.
No description provided by the author
DescribeItem always returns a string that describes the item, usually by calling out to cache.MetaNamespaceKeyFunc which concatenates namespace (if set) and name.
No description provided by the author
DsFromManifest reads a .json/yaml file and returns the daemonset in it.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
EnableAndDisableInternalLB returns two functions for enabling and disabling the internal load balancer setting for the supported cloud providers (currently GCE/GKE and Azure) and empty functions for others.
EnsureLoadBalancerResourcesDeleted ensures that cloud load balancer resources that were created are actually cleaned up.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ExpectNoErrorWithOffset checks if "err" is set, and if so, fails assertion while logging the error at "offset" levels above its caller (for example, for call chain f -> g -> ExpectNoErrorWithOffset(1, ...) error would be logged for "f").
No description provided by the author
No description provided by the author
No description provided by the author
FailfWithOffset calls "Fail" and logs the error at "offset" levels above its caller (for example, for call chain f -> g -> FailfWithOffset(1, ...) error would be logged for "f").
Filters nodes in NodeList in place, removing nodes that do not satisfy the given condition TODO: consider merging with pkg/client/cache.NodeLister.
FormatRuntimeOperationErrorRate formats the runtime operation error rate to string.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GeneratePodSecurityContext generates the corresponding pod security context with the given inputs If the Node OS is windows, currently we will ignore the inputs and return nil.
GenerateReadFileCmd generates the corresponding command lines to read from a file with the given file path.
GenerateScriptCmd generates the corresponding command lines to execute a command.
GenerateSecurityContext generates the corresponding container security context with the given inputs If the Node OS is windows, currently we will ignore the inputs and return nil.
GenerateWriteandExecuteScriptFileCmd generates the corresponding command lines to write a file with the given file path and also execute this file.
GenerateWriteFileCmd generates the corresponding command lines to write a file with the given content and file path.
GetAllMasterAddresses returns all IP addresses on which the kubelet can reach the master.
No description provided by the author
No description provided by the author
GetDefaultKubeletLatencyMetrics calls GetKubeletLatencyMetrics with a set of default metricNames identifying common latency metrics.
GetFileModeRegex returns a file mode related regex which should be matched by the mounttest pods' output.
No description provided by the author
No description provided by the author
GetHostExternalAddress gets the node for a pod and returns the first External address.
No description provided by the author
GetJob uses c to get the Job in namespace ns named name.
GetJobPods returns a list of Pods belonging to a Job.
No description provided by the author
GetKubeletLatencyMetrics filters ms to include only those contained in the metricNames set, then constructs a KubeletLatencyMetrics list based on the samples associated with those metrics.
GetKubeletPods retrieves the list of pods on the kubelet.
GetKubeletRunningPods retrieves the list of running pods on the kubelet.
TODO: figure out how to move this to kubemark directory (need to factor test SSH out of e2e framework).
GetLogToFileFunc is a convenience function that returns a function that have the same interface as Logf, but writes to a specified file.
No description provided by the author
GetMasterAndWorkerNodesOrDie will return a list masters and schedulable worker nodes.
No description provided by the author
No description provided by the author
GetNodeExternalIP returns node external IP concatenated with port 22 for ssh e.g.
GetNodeInternalIP returns node internal IP.
GetNodePortURL returns the url to a nodeport Service.
No description provided by the author
No description provided by the author
TODO(random-liu): Change this to be a member function of the framework.
No description provided by the author
GetPodsForDeployment gets pods for the given deployment.
No description provided by the author
GetPodsScheduled returns a number of currently scheduled and not scheduled Pods.
GetProviders returns the names of all currently registered providers.
GetReadyNodesIncludingTaintedOrDie returns all ready nodes, even those which are tainted.
GetReadySchedulableNodesOrDie addresses the common use case of getting nodes you can do work on.
GetServerArchitecture fetches the architecture of the cluster's apiserver.
No description provided by the author
No description provided by the author
GetSigner returns an ssh.Signer for the provider ("gce", etc.) that can be used to SSH to their nodes.
GetStatsSummary contacts kubelet for the container information.
GetTestImage returns the image name with the given input If the Node OS is windows, currently we return Nettest image for Windows node due to the issue of #https://github.com/kubernetes-sigs/windows-testing/pull/35.
No description provided by the author
HandleFlags sets up all flags and parses the command line.
HighLatencyKubeletOperations logs and counts the high latency metrics exported by the kubelet server via /metrics.
Prints top five summary metrics for request types with latency and returns number of such request types above threshold.
No description provided by the author
InjectHtml insert index.html with given content into given volume.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
KubectlCmd runs the kubectl executable through the wrapper script.
KubectlVersion gets the version of kubectl that's currently being used (see --kubectl-path in e2e.go to use an alternate kubectl).
KubectlVersionGTE returns true if the kubectl version is greater than or equal to v.
Wrapper function for ginkgo describe.
LaunchHostExecPod launches a hostexec pod in the given namespace and waits until it's Running.
LaunchWebserverPod launches a pod serving http on port 8080 to act as the target for networking connectivity checks.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
LogSuspiciousLatency logs metrics/docker errors from all nodes that had slow startup times If latencyDataLag is nil then it will be populated from latencyData.
Looks for the given string in the output of fn, repeatedly calling fn until the timeout is reached or the string is found.
Looks for the given string in a file in a specific pod container.
Looks for the given string in the log of a specific pod container.
Looks for the given string in the output of a command executed in a specific pod container.
MakeDeployment creates a deployment definition based on the namespace.
Returns a pod definition based on the namespace using nginx image.
Returns a PV definition based on the nfs server IP.
Returns a PVC definition based on the namespace.
Returns a pod definition based on the namespace.
Returns a pod definition based on the namespace.
Returns a pod definition based on the namespace.
No description provided by the author
No description provided by the author
TODO(mrhohn): Remove this function when kube-proxy is run as a DaemonSet by default.
MigTemplate (GCE-only) returns the name of the MIG template that the nodes of the cluster use.
NewNetworkingTestNodeE2EConfig creates and sets up a new test config helper for Node E2E.
NewFramework makes a new framework and sets up a BeforeEach/AfterEach for you (you can write additional before/after each functions).
No description provided by the author
No description provided by the author
No description provided by the author
NewExecPodSpec returns the pod spec of hostexec pod.
No description provided by the author
No description provided by the author
GlusterFS-specific wrapper for CreateStorageServer.
iSCSI-specific wrapper for CreateStorageServer.
No description provided by the author
NewLogsVerifier creates a new LogsSizeVerifier which will stop when stopChannel is closed.
NewNetworkingTestConfig creates and sets up a new test config helper.
NFS-specific wrapper for CreateStorageServer.
NewNodeKiller creates new NodeKiller.
CephRBD-specific wrapper for CreateStorageServer.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
NewServiceTestJig allocates and inits a new ServiceTestJig.
NewStatefulSet creates a new NGINX StatefulSet for testing.
NewStatefulSetPVC returns a PersistentVolumeClaim named name, for testing StatefulSets.
NewStatefulSetScale creates a new StatefulSet scale subresource and returns it.
NewStatefulSetTester creates a StatefulSetTester that uses c to interact with the API server.
NewTestJob returns a Job which does one of several testing behaviors.
NodeAddresses returns the first address of the given type of each node.
NodeExec execs the given cmd on node via SSH.
No description provided by the author
No description provided by the author
NodeProxyRequest performs a get on a node proxy endpoint given the nodename and rest client.
NodeSSHHosts returns SSH-able host names for all schedulable nodes - this excludes master node.
No description provided by the author
TODO(mrhohn): Remove this function when kube-proxy is run as a DaemonSet by default.
TODO make this generic and not linked to COS only NumberOfGPUs returs the number of GPUs advertised by a node This is based on the Device Plugin system and expected to run on a COS based node After the NVIDIA drivers were installed.
NumberOfReadyNodes returns number of ready Nodes excluding Master Node.
NumberOfRegisteredNodes returns number of registered Nodes excluding Master Node.
NVIDIADevicePlugin returns the official Google Device Plugin pod for NVIDIA GPU in GKE.
OpenWebSocketForURL constructs a websocket connection to the provided URL, using the client config, with the specified protocols.
ParseKVLines parses output that looks like lines containing "<key>: <val>" and returns <val> if <key> is found.
No description provided by the author
PodNodePairs return PodNode pairs for all pods in a namespace.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PodStartupLatencyToPerfData transforms PodStartupLatency to PerfData.
PokeHTTP tries to connect to a host on a port for a given URL path.
PokeUDP tries to connect to a host on a port and send the given request.
PollURL polls till the url responds with a healthy http code.
PrettyPrint returns a human-readable representation of an item.
No description provided by the author
No description provided by the author
No description provided by the author
PrintPerfData prints the perfdata in json format with PerfResultTag prefix.
No description provided by the author
Creates a PodSecurityPolicy that allows everything.
No description provided by the author
No description provided by the author
Clean up a pv and pvc in a single pv/pvc test case.
Clean up pvs and pvcs in multi-pv-pvc test cases.
randomSuffix provides a random string to append to pods,services,rcs.
RcByNameContainer returns a ReplicationController with specified name and container.
RcByNamePort returns a ReplicationController with specified name and port.
RealVersion turns a version constants into a version string deployable on GKE.
Register flags specific to the cluster e2e test suite.
Register flags common to all e2e test suites.
Register flags specific to the node e2e test suite.
RegisterProvider is expected to be called during application init, typically by an init function in a provider package.
RemoveAnnotationOffNode removes AvoidPods annotations from the node.
RemoveCleanupAction removes a function that was installed by AddCleanupAction.
RemoveLabelOffNode is for cleaning up labels temporarily added to node, won't fail if target label doesn't exist or has been removed.
No description provided by the author
Resets latency metrics in apiserver.
No description provided by the author
No description provided by the author
ResourceUsageToPerfData transforms ResourceUsagePerNode to PerfData.
ResourceUsageToPerfDataWithLabels transforms ResourceUsagePerNode to PerfData with additional labels.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
RunCleanupActions runs all functions installed by AddCleanupAction.
RunCmd runs cmd using args and returns its stdout and stderr.
RunCmdEnv runs cmd with the provided environment and args and returns its stdout and stderr.
No description provided by the author
RunHostCmd runs the given cmd in the context of the given pod using `kubectl exec` inside of a shell.
RunHostCmdOrDie calls RunHostCmd and dies on error.
RunHostCmdWithRetries calls RunHostCmd and retries all errors until it succeeds or the specified timeout expires.
No description provided by the author
No description provided by the author
RunKubectl is a convenience wrapper over kubectlBuilder.
RunKubectlInput is a convenience wrapper over kubectlBuilder that takes input to stdin.
RunKubectlOrDie is a convenience wrapper over kubectlBuilder.
RunKubectlOrDieInput is a convenience wrapper over kubectlBuilder that takes input to stdin.
RunKubemciCmd is a convenience wrapper over kubectlBuilder to run kubemci.
RunKubemciWithKubeconfig is a convenience wrapper over RunKubemciCmd.
No description provided by the author
No description provided by the author
RunSSHCommandViaBastion returns the stdout, stderr, and exit code from running cmd on host as specific user, along with any SSH-level error.
No description provided by the author
No description provided by the author
ScaleRCByLabels scales an RC via ns/label lookup.
No description provided by the author
ServerVersionGTE returns true if v is greater than or equal to the server version.
No description provided by the author
SetupProviderConfig validates the chosen provider and creates an interface instance for it.
SimpleGET executes a get on the given url, returns error if non-200 returned.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SSH synchronously SSHs to a node running on provider and runs cmd.
No description provided by the author
StartCPUProfileGatherer performs polling-based gathering of the component's CPU profile.
StartServeHostnameService creates a replication controller that serves its hostname and a service on top of it.
Starts a container specified by config.serverImage and exports all config.serverPorts from it.
No description provided by the author
A list of containers for which we want to collect resource usage.
No description provided by the author
No description provided by the author
Blocks outgoing network traffic on 'node'.
TestVolumeClient start a client pod using given VolumeSource (exported by startVolumeServer()) and check that the pod sees expected data, e.g.
Rough equivalent of ctrl+c for cleaning up processes.
No description provided by the author
No description provided by the author
No description provided by the author
UpdateJob uses c to updated job in namespace ns.
UpdateJobFunc updates the job object.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
UpdateService fetches a service, calls the update function on it, and then attempts to send the updated service.
No description provided by the author
ValidateController is a generic mechanism for testing RC's that are running.
No description provided by the author
Verifies whether 50, 90 and 99th percentiles of a latency metric are within the expected threshold.
No description provided by the author
No description provided by the author
Verifies (currently just by logging them) the scheduling latencies.
No description provided by the author
VerifyServeHostnameServiceUp wgets the given serviceIP:servicePort from the given host and from within a pod.
No description provided by the author
Clean both server and client pods.
Search for bound PVs and PVCs by examining pvols for non-nil claimRefs.
WaitForAllJobPodsRunning wait for all pods for the Job named jobName in namespace ns to be deleted.
WaitForAllJobPodsRunning wait for all pods for the Job named JobName in namespace ns to become Running.
checks whether all registered nodes are ready and all required Pods are running on them.
WaitForAllNodesSchedulable waits up to timeout for all (but TestContext.AllowedNotReadyNodes) to become scheduable.
No description provided by the author
WaitForAuthorizationUpdate checks if the given user can perform the named verb and action.
Wait up to PodListTimeout for getting pods of the specified controller name and return them.
Wait up to 10 minutes for pods to become Running.
No description provided by the author
WaitForDaemonSets for all daemonsets in the given namespace to be ready (defined as all but 'allowedNotReadyNodes' pods associated with that daemonset are ready).
WaitForDefaultServiceAccountInNamespace waits for the default service account to be provisioned the default service account is what is associated with pods when they do not specify a service account as a result, pods are not able to be provisioned in a namespace until the service account is provisioned.
Waits for the deployment to complete, and don't check if rolling update strategy is broken.
Waits for the deployment to complete, and check rolling update strategy isn't broken at any times.
Waits for the deployment to clean up old rcs.
No description provided by the author
WaitForDeploymentRevisionAndImage waits for the deployment's and its new RS's revision and container image to match the given revision and image.
WaitForDeploymentRollbackCleared waits for given deployment either started rolling back or doesn't need to rollback.
WaitForDeploymentUpdatedReplicasGTE waits for given deployment to be observed by the controller and has at least a number of updatedReplicas.
No description provided by the author
No description provided by the author
Waits for the number of events on the given object to reach a desired count.
No description provided by the author
WaitForJobComplete uses c to wait for completions to complete for the Job jobName in namespace ns.
WaitForJobDeleting uses c to wait for the Job jobName in namespace ns to have a non-nil deletionTimestamp (i.e.
WaitForJobFailure uses c to wait for up to timeout for the Job named jobName in namespace ns to fail.
WaitForJobFinish uses c to wait for the Job jobName in namespace ns to finish (either Failed or Complete).
WaitForJobGone uses c to wait for up to timeout for the Job named jobName in namespace ns to be removed.
No description provided by the author
waitForMasters waits until the cluster has the desired number of ready masters in it.
WaitForMatchPodsCondition finds match pods based on the input ListOptions.
WaitForAuthorizationUpdate checks if the given user can perform the named verb and action on the named resource.
No description provided by the author
WaitForNodeHasTaintOrNot waits for a taint to be added/removed from the node until timeout occurs, whichever comes first.
WaitForNodeToBe returns whether node "name's" condition state matches wantTrue within timeout.
WaitForNodeToBeNotReady returns whether node name is not ready (i.e.
WaitForNodeToBeReady returns whether node name is ready within timeout.
No description provided by the author
Waits for the number of events on the given object to be at least a desired count.
WaitForPersistentVolumeClaimDeleted waits for a PersistentVolumeClaim to be removed from the system until timeout occurs, whichever comes first.
WaitForPersistentVolumeClaimPhase waits for a PersistentVolumeClaim to be in a specific phase or until timeout occurs, whichever comes first.
WaitForPersistentVolumeClaimPhase waits for any (if matchAny is true) or all (if matchAny is false) PersistentVolumeClaims to be in a specific phase or until timeout occurs, whichever comes first.
WaitForPersistentVolumeDeleted waits for a PersistentVolume to get deleted or until timeout occurs, whichever comes first.
WaitForPersistentVolumePhase waits for a PersistentVolume to be in a specific phase or until timeout occurs, whichever comes first.
No description provided by the author
Waits default amount of time (PodStartTimeout) for the specified pod to become running.
WaitForPodNameUnschedulableInNamespace returns an error if it takes too long for the pod to become Pending and have condition Status equal to Unschedulable, if the pod Get api returns an error (IsNotFound or other), or if the pod failed with an unexpected reason.
Waits default amount of time (DefaultPodDeletionTimeout) for the specified pod to stop running.
WaitForPodNotPending returns an error if it took too long for the pod to go out of pending state.
Waits default amount of time (PodStartTimeout) for the specified pod to become running.
No description provided by the author
WaitForPodsRunningReady waits up to timeout to ensure that all pods in namespace ns are either running and ready, or failed but controlled by a controller.
WaitForPodsSuccess waits till all labels matching the given selector enter the Success state.
WaitForPodSuccessInNamespace returns nil if the pod reached state success, or an error if it reached failure or until podStartupTimeout.
WaitForPodSuccessInNamespaceSlow returns nil if the pod reached state success, or an error if it reached failure or until slowPodStartupTimeout.
Wait up to PodListTimeout for getting pods with certain label.
Wait for exact amount of matching pods to become running and ready.
Wait for all matching pods to become scheduled and at least one matching pod exists.
No description provided by the author
wait until all pvcs phase set to bound.
WaitForRCPodToDisappear returns nil if the pod from the given replication controller (described by rcName) no longer exists.
WaitForRCToStabilize waits till the RC has a matching generation/replica count between spec and status.
WaitForReadyNodes waits up to timeout for cluster to has desired size and there is no not-ready nodes in it.
WaitForReadyReplicaSet waits until the replicaset has all of its replicas ready.
WaitForReplicaSetDesiredReplicas waits until the replicaset has desired number of replicas.
WaitForReplicaSetTargetAvailableReplicas waits for .status.availableReplicas of a RS to equal targetReplicaNum.
WaitForReplicaSetTargetSpecReplicas waits for .spec.replicas of a RS to equal targetReplicaNum.
WaitForReplicationController waits until the RC appears (exist == true), or disappears (exist == false).
WaitForReplicationControllerwithSelector waits until any RC with given selector appears (exist == true), or disappears (exist == false).
WaitForService waits until the service appears (exist == true), or disappears (exist == false).
WaitForServiceEndpointsNum waits until the amount of endpoints that implement service to expectNum.
WaitForServiceWithSelector waits until any service with given selector appears (exist == true), or disappears (exist == false).
WaitForStableCluster waits until all existing pods are scheduled and returns their amount.
WaitForStatefulSetReplicasReady waits for all replicas of a StatefulSet to become ready or until timeout occurs, whichever comes first.
Wait for the pv and pvc to bind to each other.
WaitTimeoutForPodEvent waits for an event to occur for a pod.
No description provided by the author
No description provided by the author
WatchRecreateDeployment watches Recreate deployments and ensures no new pods will run at the same time with old pods.
# Constants
AffinityConfirmCount is the number of needed continuous requests to confirm that affinity is enabled.
All containers on all nodes.
How long claims have to become bound.
How long claims have to become deleted.
Same as `ClaimProvisionTimeout` to wait for claim to be dynamically provisioned, but shorter.
How long claims have to become dynamically provisioned.
No description provided by the author
No description provided by the author
CurrentKubeletPerfMetricsVersion is the current kubelet performance metrics version.
Default value for how long the CPU profile is gathered for.
TODO(mikedanese): reset this to 5 minutes once #47135 is resolved.
DefaultNumNodes is the number of nodes.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GCPMaxInstancesInInstanceGroup is the maximum number of instances supported in one instance group on GCP.
No description provided by the author
TODO: Parametrize it by making it a feature in TestFramework.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Any time we add new errors, we should audit all callers of this.
No description provided by the author
No description provided by the author
No description provided by the author
Job selector name.
How long to wait for a job to finish.
No description provided by the author
No description provided by the author
KubeProxyEndpointLagTimeout is the maximum time a kube-proxy daemon on a node is allowed to not notice an Endpoint update.
KubeProxyLagTimeout is the maximum time a kube-proxy daemon on a node is allowed to not notice a Service update, such as type=NodePort.
No description provided by the author
Time required by the loadbalancer to cleanup, proportional to numApps/Ing.
How long to wait for a load balancer to be created/modified.TODO: once support ticket 21807001 is resolved, reduce this timeout back to something reasonable.
No description provided by the author
LoadBalancerLagTimeoutAWS is the delay between ELB creation and serving traffic on AWS.
LoadBalancerLagTimeoutDefault is the maximum time a load balancer is allowed to not respond after creation.
No description provided by the author
On average it takes ~6 minutes for a single backend to come online in GCE.
All containers on Master nodes and DNS containers on other nodes.
All containers on Master nodes only.
Don't test with more than 3 nodes.
No description provided by the author
No description provided by the author
If there are any orphaned namespaces to clean up, this test is running on a long lived cluster.
No description provided by the author
How long nodes have to be "ready" when a test begins.
NodeStartupThreshold is a rough estimate of the time allocated for a pod to start on a node.
GPUResourceName is the extended name of the GPU resource since v1.8 this uses the device plugin mechanism.
No description provided by the author
No description provided by the author
Waiting period for pod to be cleaned up and unmount its volumes so we don't tear down containers with NFS/Ceph/Gluster server too early.
How long to wait for a pod to be deleted.
PodEventTimeout is how much we wait for a pod event to occur.
How long to wait for the pod to be listable.
How long pods have to be "ready" when a test begins.
Same as `PodStartTimeout` to wait for the pod to be started, but shorter.
Initial pod start can be delayed O(minutes) by slow docker pulls TODO: Make this 30 seconds once #4566 is resolved.
How often to Poll pods, nodes and claims.
How long PVs have to become bound.
How long PVs have to become deleted.
How long PVs have to beome reclaimed.
How long a node is allowed to become "Ready" after it is restarted before the test is considered failed.
How long a pod is allowed to become "running" and "ready" after a node restart before test is considered failed.
service accounts are provisioned after namespace creation a service account is required to support pod creation in a namespace as part of admission control.
No description provided by the author
How long to wait for a service endpoint to be resolvable.
ServiceTestTimeout is used for most polling/waiting activities.
Number of checks to hit a given set of endpoints when enable session affinity.
How long to try single API calls (like 'get' or 'list').
How long for snapshot to create snapshotContent.
Timeout for stateful pods to change state.
Poll interval for StatefulSet tests.
Timeout interval for StatefulSet operations.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Any time we add new errors, we should audit all callers of this.
No description provided by the author
Waiting period for volume server (Ceph, ...) to initialize itself.
# Variables
No description provided by the author
No description provided by the author
ImageWhiteList is the images used in the current test suite.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ItemNotSupported is the error that Create methods must return or wrap when they don't support the given item.
No description provided by the author
ProvidersWithSSH are those providers where each node is accessible with SSH.
unique identifier of the e2e run.
No description provided by the author
Common selinux labels.
Serve hostname image name.
This should match whatever the default/configured range is.
No description provided by the author
# Structs
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
E2ETestNodePreparer implements testutils.TestNodePreparer interface, which is used to create/modify Nodes before running a test.
No description provided by the author
No description provided by the author
ExecOptions passed to ExecWithOptions.
No description provided by the author
Framework supports common operations used by e2e tests; it will keep a client & a namespace for you.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
KubeletMetric stores metrics scraped from the kubelet server's /metric endpoint.
No description provided by the author
No description provided by the author
Dashboard metrics.
LogSizeGatherer is a worker which grabs a WorkItem from the channel and does assigned work.
No description provided by the author
LogsSizeVerifier gathers data about log files sizes from master and node machines.
NetworkingTestConfig is a convenience class around some utility methods for testing kubeproxy/networking/services/endpoints.
NodeKiller is a utility to simulate node failures.
NodeKillerConfig describes configuration of NodeKiller -- a utility to simulate node failures.
NodeTestContextType is part of TestContextType, it is shared by all node e2e test.
NullProvider is the default implementation of the ProviderInterface which doesn't do anything.
No description provided by the author
PersistentVolumeConfig is consumed by MakePersistentVolume() to generate a PV object for varying storage options (NFS, ceph, glusterFS, etc.).
No description provided by the author
PodLatencyData encapsulates pod startup latency information.
PodNode is a pod-node pair indicating which node a given pod is running on.
No description provided by the author
PodStateVerification represents a verification of pod state.
No description provided by the author
No description provided by the author
ResourceMonitor manages a resourceCollector per node.
RuntimeOperationErrorRate is the error rate of a specified runtime operation.
RuntimeOperationMonitor is the tool getting and parsing docker operation metrics.
No description provided by the author
No description provided by the author
Simple helper class to avoid too much boilerplate in tests.
A test jig to help service testing.
No description provided by the author
No description provided by the author
No description provided by the author
StatefulSetTester is a struct that contains utility methods for testing StatefulSet related functionality.
TestContextType contains test settings and global state.
TimestampedSize contains a size together with a time of measurement.
No description provided by the author
No description provided by the author
VolumeTest contains a volume to mount into a client pod and its expected content.
Configuration of one tests.
What is a subset of metav1.TypeMeta which (in contrast to metav1.TypeMeta itself) satisfies the runtime.Object interface.
WorkItem is a command for a worker that contains an IP of machine from which we want to gather data and paths to all files we're interested in.
# Interfaces
ItemFactory provides support for creating one particular item.
ProviderInterface contains the implementation for certain provider-specific functionality.
No description provided by the author
# Type aliases
No description provided by the author
ContainersCPUSummary is indexed by the container name with each entry a (percentile, value) map.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
KubeletMetricByLatency implements sort.Interface for []KubeletMetric based on the latency field.
No description provided by the author
No description provided by the author
node -> file -> data.
No description provided by the author
NodeRuntimeOperationErrorRate is the runtime operation error rate on one node.
NodesCPUSummary is indexed by the node name with each entry a ContainersCPUSummary map.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
we can't have int here, as JSON does not accept integer keys.
No description provided by the author
VerifyStatefulPodFunc is a func that examines a StatefulSetPod.