Skip to content

Commit f204d38

Browse files
authored
Merge pull request #3051 from wojtek-t/remove_test_framework
Remove dependency on kubernetes test/e2e in clusterloader2
2 parents c92f79f + 409664d commit f204d38

File tree

13 files changed

+485
-48
lines changed

13 files changed

+485
-48
lines changed

clusterloader2/pkg/measurement/common/metrics/metrics_grabber.go

Lines changed: 9 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,11 @@ import (
2020
"context"
2121
"fmt"
2222
"strings"
23-
"sync"
24-
"time"
2523

2624
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2725
"k8s.io/apimachinery/pkg/fields"
28-
"k8s.io/apimachinery/pkg/util/wait"
2926
clientset "k8s.io/client-go/kubernetes"
3027
"k8s.io/kubernetes/pkg/cluster/ports"
31-
"k8s.io/kubernetes/test/e2e/framework"
32-
e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
3328

3429
"k8s.io/klog/v2"
3530
)
@@ -50,16 +45,15 @@ type Collection struct {
5045

5146
// Grabber provides functions which grab metrics from components
5247
type Grabber struct {
53-
client clientset.Interface
54-
externalClient clientset.Interface
55-
grabFromAPIServer bool
56-
grabFromControllerManager bool
57-
grabFromKubelets bool
58-
grabFromScheduler bool
59-
grabFromClusterAutoscaler bool
60-
masterName string
61-
registeredMaster bool
62-
waitForControllerManagerReadyOnce sync.Once
48+
client clientset.Interface
49+
externalClient clientset.Interface
50+
grabFromAPIServer bool
51+
grabFromControllerManager bool
52+
grabFromKubelets bool
53+
grabFromScheduler bool
54+
grabFromClusterAutoscaler bool
55+
masterName string
56+
registeredMaster bool
6357
}
6458

6559
// deprecatedMightBeMasterNode returns true if given node is a registered master.
@@ -192,27 +186,7 @@ func (g *Grabber) GrabFromControllerManager() (ControllerManagerMetrics, error)
192186
return ControllerManagerMetrics{}, fmt.Errorf("master's Kubelet is not registered. Skipping ControllerManager's metrics gathering")
193187
}
194188

195-
var err error
196189
podName := fmt.Sprintf("%v-%v", "kube-controller-manager", g.masterName)
197-
g.waitForControllerManagerReadyOnce.Do(func() {
198-
if readyErr := e2epod.WaitTimeoutForPodReadyInNamespace(context.Background(), g.client, podName, metav1.NamespaceSystem, framework.PodStartTimeout); readyErr != nil {
199-
err = fmt.Errorf("error waiting for controller manager pod to be ready: %w", readyErr)
200-
return
201-
}
202-
203-
var lastMetricsFetchErr error
204-
if metricsWaitErr := wait.PollImmediate(time.Second, time.Minute, func() (bool, error) {
205-
_, lastMetricsFetchErr = g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, ports.KubeControllerManagerPort, true)
206-
return lastMetricsFetchErr == nil, nil
207-
}); metricsWaitErr != nil {
208-
err = fmt.Errorf("error waiting for controller manager pod to expose metrics: %v; %v", metricsWaitErr, lastMetricsFetchErr)
209-
return
210-
}
211-
})
212-
if err != nil {
213-
return ControllerManagerMetrics{}, err
214-
}
215-
216190
output, err := g.getMetricsFromPod(g.client, podName, metav1.NamespaceSystem, ports.KubeControllerManagerPort, true)
217191
if err != nil {
218192
return ControllerManagerMetrics{}, err

clusterloader2/pkg/provider/autopilot.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type AutopilotProvider struct {

clusterloader2/pkg/provider/aws.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type AWSProvider struct {

clusterloader2/pkg/provider/eks.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type EKSProvider struct {

clusterloader2/pkg/provider/gce.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,9 @@ import (
2424

2525
clientset "k8s.io/client-go/kubernetes"
2626
"k8s.io/klog/v2"
27-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2827
"k8s.io/perf-tests/clusterloader2/pkg/framework/client"
2928
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
30-
"k8s.io/perf-tests/clusterloader2/pkg/util"
29+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
3130
)
3231

3332
type GCEProvider struct {
@@ -84,7 +83,7 @@ func (p *GCEProvider) Metadata(c clientset.Interface) (map[string]string, error)
8483

8584
var masterInstanceIDs []string
8685
for _, node := range nodes {
87-
if util.LegacyIsMasterNode(&node) || util.IsControlPlaneNode(&node) {
86+
if sshutil.LegacyIsMasterNode(&node) || sshutil.IsControlPlaneNode(&node) {
8887
zone, ok := node.Labels["topology.kubernetes.io/zone"]
8988
if !ok {
9089
// Fallback to old label to make it work for old k8s versions.

clusterloader2/pkg/provider/gke.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type GKEProvider struct {

clusterloader2/pkg/provider/gke_kubemark.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import (
2121

2222
clientset "k8s.io/client-go/kubernetes"
2323
"k8s.io/klog/v2"
24-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2524
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
25+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2626
)
2727

2828
type GKEKubemarkProvider struct {

clusterloader2/pkg/provider/kubemark.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ import (
2121

2222
clientset "k8s.io/client-go/kubernetes"
2323
"k8s.io/klog/v2"
24-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2524
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
25+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2626
)
2727

2828
type KubemarkProvider struct {

clusterloader2/pkg/provider/local.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type LocalProvider struct {

clusterloader2/pkg/provider/skeleton.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ import (
2020
"context"
2121

2222
clientset "k8s.io/client-go/kubernetes"
23-
sshutil "k8s.io/kubernetes/test/e2e/framework/ssh"
2423
prom "k8s.io/perf-tests/clusterloader2/pkg/prometheus/clients"
24+
sshutil "k8s.io/perf-tests/clusterloader2/pkg/util"
2525
)
2626

2727
type SkeletonProvider struct {

0 commit comments

Comments
 (0)