mirror of https://github.com/k3s-io/k3s
![]() 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 |
||
---|---|---|
.. | ||
cleanup.go | ||
framework.go | ||
kubelet_stats.go | ||
log_size_monitoring.go | ||
metrics_util.go | ||
perf_util.go | ||
prompush.go | ||
resource_usage_gatherer.go | ||
test_context.go | ||
util.go |