kubernetes/test
k8s-merge-robot 15ed9dbd02 Merge pull request #23771 from jayunit100/ClusterVerificationFramework
Automatic merge from submit-queue

Cluster Verification Framework

I've spent the last few days looking at the general patterns of verification we have that we tend to reuse in the e2es.  Basically, we need 
 
- label filters
- forEach and WaitFor (where forEach doesn't necessarily waitFor anything).
- timeouts
- multiple phases (reusable definition of state)
- an extensible way to define cluster state that can evolve over time in a data object rather than as a set of parameters that have magic semantics

This PR 
- implements the abstract above functionality declaratively, and w/o hidden semantics.
- addresses the sprawling duplicate methods in #23540, so that we can phase out the wrapper methods and replace them with well defined, extensible semantics for cluster state.
- fixes the recently discovered #23730 issue (where kubectl.go is relying on examples.go, which is obviously wacky) by using the new framework to implement forEachPod in just a couple of lines and migrating the wrapper function into framework.go.

There is some cleanup to do here, but this is seemingly working for a couple of use cases that are important (spark,cassandra,...,kubectl) tests. - i played with a few different ideas and this wound up seeming to be the most natural implementation from a usability standpoint... 

in any case, just thought id push this up as a first iteration, open to feedback.

@kubernetes/sig-testing @timothysc
2016-04-20 04:23:21 -07:00
..
component/scheduler/perf Improve script for running scheduler benchmarks 2016-04-19 16:23:23 +02:00
e2e Merge pull request #23771 from jayunit100/ClusterVerificationFramework 2016-04-20 04:23:21 -07:00
e2e_node Incremental improvements to kubelet e2e tests 2016-04-18 13:56:07 -07:00
fixtures/pkg/kubectl/cmd/apply Fix reference to versioned object in kubectl apply 2016-02-10 14:11:44 -08:00
images Add Makefile for iperf 2016-04-13 14:28:33 -07:00
integration start sharing the pod cache and list/watch 2016-04-18 08:51:55 -04:00
kubemark Don't remove kubemark binaries 2016-04-13 12:07:34 +02:00
soak Update test/e2e for test/e2e/framework refactoring 2016-04-13 10:50:17 -07:00
OWNERS Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00