Skip to content

Commit 51a2097

Browse files
authored
Move metrics e2e to one namespace per spec (#2716)
Signed-off-by: perdasilva <[email protected]>
1 parent 951f4fc commit 51a2097

File tree

1 file changed

+33
-27
lines changed

1 file changed

+33
-27
lines changed

test/e2e/metrics_e2e_test.go

+33-27
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,20 @@ import (
3333
var _ = Describe("Metrics are generated for OLM managed resources", func() {
3434

3535
var (
36-
c operatorclient.ClientInterface
37-
crc versioned.Interface
36+
c operatorclient.ClientInterface
37+
crc versioned.Interface
38+
generatedNamespace corev1.Namespace
3839
)
3940

4041
BeforeEach(func() {
4142
c = newKubeClient()
4243
crc = newCRClient()
44+
namespaceName := genName("metrics-e2e-")
45+
generatedNamespace = SetupGeneratedTestNamespace(namespaceName, namespaceName)
46+
})
4347

48+
AfterEach(func() {
49+
TeardownNamespace(generatedNamespace.GetName())
4450
})
4551

4652
Context("Given an OperatorGroup that supports all namespaces", func() {
@@ -74,10 +80,10 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
7480
}
7581

7682
var err error
77-
cleanupCSV, err = createCSV(c, crc, failingCSV, testNamespace, false, false)
83+
cleanupCSV, err = createCSV(c, crc, failingCSV, generatedNamespace.GetName(), false, false)
7884
Expect(err).ToNot(HaveOccurred())
7985

80-
_, err = fetchCSV(crc, failingCSV.Name, testNamespace, csvFailedChecker)
86+
_, err = fetchCSV(crc, failingCSV.Name, generatedNamespace.GetName(), csvFailedChecker)
8187
Expect(err).ToNot(HaveOccurred())
8288
})
8389

@@ -127,12 +133,12 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
127133
BeforeEach(func() {
128134
packageName := genName("csv-test-")
129135
packageStable := fmt.Sprintf("%s-stable", packageName)
130-
csv = newCSV(packageStable, testNamespace, "", semver.MustParse("0.1.0"), nil, nil, nil)
136+
csv = newCSV(packageStable, generatedNamespace.GetName(), "", semver.MustParse("0.1.0"), nil, nil, nil)
131137

132138
var err error
133-
_, err = createCSV(c, crc, csv, testNamespace, false, false)
139+
_, err = createCSV(c, crc, csv, generatedNamespace.GetName(), false, false)
134140
Expect(err).ToNot(HaveOccurred())
135-
_, err = fetchCSV(crc, csv.Name, testNamespace, csvSucceededChecker)
141+
_, err = fetchCSV(crc, csv.Name, generatedNamespace.GetName(), csvSucceededChecker)
136142
Expect(err).ToNot(HaveOccurred())
137143
})
138144
AfterEach(func() {
@@ -170,7 +176,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
170176

171177
When("A subscription object is created", func() {
172178
BeforeEach(func() {
173-
subscriptionCleanup, _ = createSubscription(GinkgoT(), crc, testNamespace, "metric-subscription-for-create", testPackageName, stableChannel, v1alpha1.ApprovalManual)
179+
subscriptionCleanup, _ = createSubscription(GinkgoT(), crc, generatedNamespace.GetName(), "metric-subscription-for-create", testPackageName, stableChannel, v1alpha1.ApprovalManual)
174180
})
175181

176182
AfterEach(func() {
@@ -211,17 +217,17 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
211217
When("A subscription object is updated after emitting metrics", func() {
212218

213219
BeforeEach(func() {
214-
subscriptionCleanup, subscription = createSubscription(GinkgoT(), crc, testNamespace, "metric-subscription-for-update", testPackageName, stableChannel, v1alpha1.ApprovalManual)
220+
subscriptionCleanup, subscription = createSubscription(GinkgoT(), crc, generatedNamespace.GetName(), "metric-subscription-for-update", testPackageName, stableChannel, v1alpha1.ApprovalManual)
215221
Eventually(func() []Metric {
216222
return getMetricsFromPod(c, getPodWithLabel(c, "app=catalog-operator"))
217223
}).Should(ContainElement(LikeMetric(WithFamily("subscription_sync_total"), WithLabel("name", "metric-subscription-for-update"))))
218224
Eventually(func() error {
219-
s, err := crc.OperatorsV1alpha1().Subscriptions(subscription.GetNamespace()).Get(context.TODO(), subscription.GetName(), metav1.GetOptions{})
225+
s, err := crc.OperatorsV1alpha1().Subscriptions(subscription.GetNamespace()).Get(context.Background(), subscription.GetName(), metav1.GetOptions{})
220226
if err != nil {
221227
return err
222228
}
223229
s.Spec.Channel = betaChannel
224-
_, err = crc.OperatorsV1alpha1().Subscriptions(s.GetNamespace()).Update(context.TODO(), s, metav1.UpdateOptions{})
230+
_, err = crc.OperatorsV1alpha1().Subscriptions(s.GetNamespace()).Update(context.Background(), s, metav1.UpdateOptions{})
225231
return err
226232
}).Should(Succeed())
227233
})
@@ -256,12 +262,12 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
256262

257263
BeforeEach(func() {
258264
Eventually(func() error {
259-
s, err := crc.OperatorsV1alpha1().Subscriptions(subscription.GetNamespace()).Get(context.TODO(), subscription.GetName(), metav1.GetOptions{})
265+
s, err := crc.OperatorsV1alpha1().Subscriptions(subscription.GetNamespace()).Get(context.Background(), subscription.GetName(), metav1.GetOptions{})
260266
if err != nil {
261267
return err
262268
}
263269
s.Spec.Channel = alphaChannel
264-
_, err = crc.OperatorsV1alpha1().Subscriptions(s.GetNamespace()).Update(context.TODO(), s, metav1.UpdateOptions{})
270+
_, err = crc.OperatorsV1alpha1().Subscriptions(s.GetNamespace()).Update(context.Background(), s, metav1.UpdateOptions{})
265271
return err
266272
}).Should(Succeed())
267273
})
@@ -296,7 +302,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
296302
When("A subscription object is deleted after emitting metrics", func() {
297303

298304
BeforeEach(func() {
299-
subscriptionCleanup, subscription = createSubscription(GinkgoT(), crc, testNamespace, "metric-subscription-for-delete", testPackageName, stableChannel, v1alpha1.ApprovalManual)
305+
subscriptionCleanup, subscription = createSubscription(GinkgoT(), crc, generatedNamespace.GetName(), "metric-subscription-for-delete", testPackageName, stableChannel, v1alpha1.ApprovalManual)
300306
Eventually(func() []Metric {
301307
return getMetricsFromPod(c, getPodWithLabel(c, "app=catalog-operator"))
302308
}).Should(ContainElement(LikeMetric(WithFamily("subscription_sync_total"), WithLabel("name", "metric-subscription-for-delete"))))
@@ -334,7 +340,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
334340
stableChannel := "stable"
335341

336342
mainCRD := newCRD(genName("ins-"))
337-
mainCSV := newCSV(mainPackageStable, testNamespace, "", semver.MustParse("0.1.0"), []apiextensions.CustomResourceDefinition{mainCRD}, nil, nil)
343+
mainCSV := newCSV(mainPackageStable, generatedNamespace.GetName(), "", semver.MustParse("0.1.0"), []apiextensions.CustomResourceDefinition{mainCRD}, nil, nil)
338344

339345
mainManifests := []registry.PackageManifest{
340346
{
@@ -345,7 +351,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
345351
DefaultChannelName: stableChannel,
346352
},
347353
}
348-
cs, cleanupAll := createInternalCatalogSource(c, crc, name, testNamespace, mainManifests, []apiextensions.CustomResourceDefinition{mainCRD}, []v1alpha1.ClusterServiceVersion{mainCSV})
354+
cs, cleanupAll := createInternalCatalogSource(c, crc, name, generatedNamespace.GetName(), mainManifests, []apiextensions.CustomResourceDefinition{mainCRD}, []v1alpha1.ClusterServiceVersion{mainCSV})
349355
// Note(tflannag): Dependending on how ginkgo orders these test specs, and how bloated the cluster we're running
350356
// this test case against, we risk creating and then immediately deleting the catalogsource before the catalog
351357
// operator can generate all the requisite resources (e.g. the ServiceAccount), which can leave the underlying
@@ -373,7 +379,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
373379
ContainElement(LikeMetric(
374380
WithFamily("catalogsource_ready"),
375381
WithName(name),
376-
WithNamespace(testNamespace),
382+
WithNamespace(generatedNamespace.GetName()),
377383
WithValue(1),
378384
)),
379385
))
@@ -389,7 +395,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
389395
Not(ContainElement(LikeMetric(
390396
WithFamily("catalogsource_ready"),
391397
WithName(name),
392-
WithNamespace(testNamespace),
398+
WithNamespace(generatedNamespace.GetName()),
393399
)))))
394400
})
395401
})
@@ -401,7 +407,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
401407
cleanup func()
402408
)
403409
BeforeEach(func() {
404-
_, cleanup = createInvalidGRPCCatalogSource(crc, name, testNamespace)
410+
_, cleanup = createInvalidGRPCCatalogSource(crc, name, generatedNamespace.GetName())
405411
})
406412
AfterEach(func() {
407413
cleanup()
@@ -413,7 +419,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
413419
ContainElement(LikeMetric(
414420
WithFamily("catalogsource_ready"),
415421
WithName(name),
416-
WithNamespace(testNamespace),
422+
WithNamespace(generatedNamespace.GetName()),
417423
WithValue(0),
418424
)),
419425
))
@@ -423,7 +429,7 @@ var _ = Describe("Metrics are generated for OLM managed resources", func() {
423429
ContainElement(LikeMetric(
424430
WithFamily("catalogsource_ready"),
425431
WithName(name),
426-
WithNamespace(testNamespace),
432+
WithNamespace(generatedNamespace.GetName()),
427433
WithValue(0),
428434
)),
429435
))
@@ -436,7 +442,7 @@ func getPodWithLabel(client operatorclient.ClientInterface, label string) *corev
436442
listOptions := metav1.ListOptions{LabelSelector: label}
437443
var podList *corev1.PodList
438444
EventuallyWithOffset(1, func() (numPods int, err error) {
439-
podList, err = client.KubernetesInterface().CoreV1().Pods(operatorNamespace).List(context.TODO(), listOptions)
445+
podList, err = client.KubernetesInterface().CoreV1().Pods(operatorNamespace).List(context.Background(), listOptions)
440446
if podList != nil {
441447
numPods = len(podList.Items)
442448
}
@@ -451,7 +457,7 @@ func getDeploymentWithLabel(client operatorclient.ClientInterface, label string)
451457
listOptions := metav1.ListOptions{LabelSelector: label}
452458
var deploymentList *appsv1.DeploymentList
453459
EventuallyWithOffset(1, func() (numDeps int, err error) {
454-
deploymentList, err = client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).List(context.TODO(), listOptions)
460+
deploymentList, err = client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).List(context.Background(), listOptions)
455461
if deploymentList != nil {
456462
numDeps = len(deploymentList.Items)
457463
}
@@ -467,11 +473,11 @@ func restartDeploymentWithLabel(client operatorclient.ClientInterface, l string)
467473
z := int32(0)
468474
oldZ := *d.Spec.Replicas
469475
d.Spec.Replicas = &z
470-
_, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Update(context.TODO(), d, metav1.UpdateOptions{})
476+
_, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Update(context.Background(), d, metav1.UpdateOptions{})
471477
Expect(err).ToNot(HaveOccurred())
472478

473479
EventuallyWithOffset(1, func() (replicas int32, err error) {
474-
deployment, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Get(context.TODO(), d.Name, metav1.GetOptions{})
480+
deployment, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Get(context.Background(), d.Name, metav1.GetOptions{})
475481
if deployment != nil {
476482
replicas = deployment.Status.Replicas
477483
}
@@ -480,11 +486,11 @@ func restartDeploymentWithLabel(client operatorclient.ClientInterface, l string)
480486

481487
updated := getDeploymentWithLabel(client, l)
482488
updated.Spec.Replicas = &oldZ
483-
_, err = client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Update(context.TODO(), updated, metav1.UpdateOptions{})
489+
_, err = client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Update(context.Background(), updated, metav1.UpdateOptions{})
484490
Expect(err).ToNot(HaveOccurred())
485491

486492
EventuallyWithOffset(1, func() (replicas int32, err error) {
487-
deployment, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Get(context.TODO(), d.Name, metav1.GetOptions{})
493+
deployment, err := client.KubernetesInterface().AppsV1().Deployments(operatorNamespace).Get(context.Background(), d.Name, metav1.GetOptions{})
488494
if deployment != nil {
489495
replicas = deployment.Status.Replicas
490496
}

0 commit comments

Comments
 (0)