mirror of
https://github.com/coreos/prometheus-operator.git
synced 2026-02-05 15:46:31 +01:00
Replace t.Fatal with require package in tests-e2e (#6782)
* Replace t.Fatal-> require package in tests-e2e
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -17,6 +17,8 @@ package e2e
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
const testAnnotationControllerID = "42"
|
||||
@@ -30,17 +32,13 @@ func testMultipleOperatorsPrometheusServer(t *testing.T) {
|
||||
name := "test-op-1"
|
||||
p := framework.MakeBasicPrometheus(ns, name, name, 1)
|
||||
_, err := framework.CreatePrometheusAndWaitUntilReady(context.Background(), ns, p)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
name = "test-op-2"
|
||||
p = framework.MakeBasicPrometheus(ns, name, name, 1)
|
||||
p.Annotations["operator.prometheus.io/controller-id"] = testAnnotationControllerID
|
||||
_, err = framework.CreatePrometheusAndWaitUntilReady(context.Background(), ns, p)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
func testMultipleOperatorsPrometheusAgent(t *testing.T) {
|
||||
@@ -52,17 +50,13 @@ func testMultipleOperatorsPrometheusAgent(t *testing.T) {
|
||||
name := "test-op-1"
|
||||
p := framework.MakeBasicPrometheusAgent(ns, name, name, 1)
|
||||
_, err := framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, p)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
name = "test-op-2"
|
||||
p = framework.MakeBasicPrometheusAgent(ns, name, name, 1)
|
||||
p.Annotations["operator.prometheus.io/controller-id"] = testAnnotationControllerID
|
||||
_, err = framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, p)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
func testMultipleOperatorsAlertManager(t *testing.T) {
|
||||
@@ -74,17 +68,13 @@ func testMultipleOperatorsAlertManager(t *testing.T) {
|
||||
name := "test-op-1"
|
||||
a := framework.MakeBasicAlertmanager(ns, name, 1)
|
||||
_, err := framework.CreateAlertmanagerAndWaitUntilReady(context.Background(), a)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
name = "test-op-2"
|
||||
a = framework.MakeBasicAlertmanager(ns, name, 1)
|
||||
a.Annotations["operator.prometheus.io/controller-id"] = testAnnotationControllerID
|
||||
_, err = framework.CreateAlertmanagerAndWaitUntilReady(context.Background(), a)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
func testMultipleOperatorsThanosRuler(t *testing.T) {
|
||||
@@ -96,15 +86,11 @@ func testMultipleOperatorsThanosRuler(t *testing.T) {
|
||||
name := "test-op-1"
|
||||
thanos := framework.MakeBasicThanosRuler(name, 1, "http://test.example.com")
|
||||
_, err := framework.CreateThanosRulerAndWaitUntilReady(context.Background(), ns, thanos)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
name = "test-op-2"
|
||||
thanos = framework.MakeBasicThanosRuler(name, 1, "http://test.example.com")
|
||||
thanos.Annotations["operator.prometheus.io/controller-id"] = testAnnotationControllerID
|
||||
_, err = framework.CreateThanosRulerAndWaitUntilReady(context.Background(), ns, thanos)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/blang/semver/v4"
|
||||
"github.com/stretchr/testify/require"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/fields"
|
||||
|
||||
@@ -178,9 +179,7 @@ func TestAllNS(t *testing.T) {
|
||||
ns := framework.CreateNamespace(context.Background(), t, testCtx)
|
||||
|
||||
finalizers, err := framework.CreateOrUpdatePrometheusOperator(context.Background(), ns, nil, nil, nil, nil, true, true, true)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, f := range finalizers {
|
||||
testCtx.AddFinalizerFn(f)
|
||||
@@ -205,26 +204,13 @@ func TestAllNS(t *testing.T) {
|
||||
})).String()}
|
||||
|
||||
pl, err := framework.KubeClient.CoreV1().Pods(ns).List(context.Background(), opts)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if expected := 1; len(pl.Items) != expected {
|
||||
t.Fatalf("expected %v Prometheus Operator pods, but got %v", expected, len(pl.Items))
|
||||
}
|
||||
require.NoError(t, err)
|
||||
require.Len(t, pl.Items, 1, "expected %v Prometheus Operator pods, but got %v", 1, len(pl.Items))
|
||||
restarts, err := framework.GetPodRestartCount(context.Background(), ns, pl.Items[0].GetName())
|
||||
if err != nil {
|
||||
t.Fatalf("failed to retrieve restart count of Prometheus Operator pod: %v", err)
|
||||
}
|
||||
if len(restarts) != 1 {
|
||||
t.Fatalf("expected to have 1 container but got %d", len(restarts))
|
||||
}
|
||||
require.NoError(t, err)
|
||||
require.Len(t, restarts, 1)
|
||||
for _, restart := range restarts {
|
||||
if restart != 0 {
|
||||
t.Fatalf(
|
||||
"expected Prometheus Operator to never restart during entire test execution but got %d restarts",
|
||||
restart,
|
||||
)
|
||||
}
|
||||
require.Equal(t, int32(0), restart, "expected Prometheus Operator to never restart during entire test execution but got %d restarts", restart)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -440,9 +426,7 @@ func TestPrometheusVersionUpgrade(t *testing.T) {
|
||||
ns := framework.CreateNamespace(context.Background(), t, testCtx)
|
||||
|
||||
finalizers, err := framework.CreateOrUpdatePrometheusOperator(context.Background(), ns, nil, nil, nil, nil, true, true, true)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, f := range finalizers {
|
||||
testCtx.AddFinalizerFn(f)
|
||||
@@ -454,16 +438,13 @@ func TestPrometheusVersionUpgrade(t *testing.T) {
|
||||
func testServerTLS(ctx context.Context, namespace string) func(t *testing.T) {
|
||||
return func(t *testing.T) {
|
||||
skipPrometheusTests(t)
|
||||
if err := framework.WaitForServiceReady(context.Background(), namespace, prometheusOperatorServiceName); err != nil {
|
||||
t.Fatal("waiting for prometheus operator service: ", err)
|
||||
}
|
||||
err := framework.WaitForServiceReady(context.Background(), namespace, prometheusOperatorServiceName)
|
||||
require.NoError(t, err)
|
||||
|
||||
operatorService := framework.KubeClient.CoreV1().Services(namespace)
|
||||
request := operatorService.ProxyGet("https", prometheusOperatorServiceName, "https", "/healthz", make(map[string]string))
|
||||
_, err := request.DoRaw(ctx)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
_, err = request.DoRaw(ctx)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -481,9 +462,7 @@ func testMultipleOperators(testCtx *operatorFramework.TestCtx) func(t *testing.T
|
||||
EnableScrapeConfigs: true,
|
||||
AdditionalArgs: []string{testControllerID},
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, f := range finalizers {
|
||||
testCtx.AddFinalizerFn(f)
|
||||
|
||||
@@ -45,13 +45,11 @@ func testCreatePrometheusAgent(t *testing.T) {
|
||||
|
||||
prometheusAgentCRD := framework.MakeBasicPrometheusAgent(ns, name, name, 1)
|
||||
|
||||
if _, err := framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, prometheusAgentCRD); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
_, err := framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, prometheusAgentCRD)
|
||||
require.NoError(t, err)
|
||||
|
||||
if err := framework.DeletePrometheusAgentAndWaitUntilGone(context.Background(), ns, name); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
err = framework.DeletePrometheusAgentAndWaitUntilGone(context.Background(), ns, name)
|
||||
require.NoError(t, err)
|
||||
|
||||
}
|
||||
|
||||
@@ -93,19 +91,15 @@ func testAgentAndServerNameColision(t *testing.T) {
|
||||
prometheusAgentCRD := framework.MakeBasicPrometheusAgent(ns, name, name, 1)
|
||||
prometheusCRD := framework.MakeBasicPrometheus(ns, name, name, 1)
|
||||
|
||||
if _, err := framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, prometheusAgentCRD); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if _, err := framework.CreatePrometheusAndWaitUntilReady(context.Background(), ns, prometheusCRD); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
_, err := framework.CreatePrometheusAgentAndWaitUntilReady(context.Background(), ns, prometheusAgentCRD)
|
||||
require.NoError(t, err)
|
||||
_, err = framework.CreatePrometheusAndWaitUntilReady(context.Background(), ns, prometheusCRD)
|
||||
require.NoError(t, err)
|
||||
|
||||
if err := framework.DeletePrometheusAgentAndWaitUntilGone(context.Background(), ns, name); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(context.Background(), ns, name); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
err = framework.DeletePrometheusAgentAndWaitUntilGone(context.Background(), ns, name)
|
||||
require.NoError(t, err)
|
||||
err = framework.DeletePrometheusAndWaitUntilGone(context.Background(), ns, name)
|
||||
require.NoError(t, err)
|
||||
|
||||
}
|
||||
|
||||
@@ -122,9 +116,7 @@ func testAgentCheckStorageClass(t *testing.T) {
|
||||
prometheusAgentCRD := framework.MakeBasicPrometheusAgent(ns, name, name, 1)
|
||||
|
||||
prometheusAgentCRD, err := framework.CreatePrometheusAgentAndWaitUntilReady(ctx, ns, prometheusAgentCRD)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
// Invalid storageclass e2e test
|
||||
|
||||
@@ -149,10 +141,7 @@ func testAgentCheckStorageClass(t *testing.T) {
|
||||
},
|
||||
},
|
||||
)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
require.NoError(t, err)
|
||||
var loopError error
|
||||
err = wait.PollUntilContextTimeout(ctx, 5*time.Second, framework.DefaultTimeout, true, func(ctx context.Context) (bool, error) {
|
||||
current, err := framework.MonClientV1alpha1.PrometheusAgents(ns).Get(ctx, name, metav1.GetOptions{})
|
||||
@@ -168,9 +157,7 @@ func testAgentCheckStorageClass(t *testing.T) {
|
||||
return false, nil
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
t.Fatalf("%v: %v", err, loopError)
|
||||
}
|
||||
require.NoError(t, err, "%v: %v", err, loopError)
|
||||
}
|
||||
|
||||
func testPrometheusAgentStatusScale(t *testing.T) {
|
||||
@@ -187,20 +174,12 @@ func testPrometheusAgentStatusScale(t *testing.T) {
|
||||
pAgent.Spec.CommonPrometheusFields.Shards = proto.Int32(1)
|
||||
|
||||
pAgent, err := framework.CreatePrometheusAgentAndWaitUntilReady(ctx, ns, pAgent)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
if pAgent.Status.Shards != 1 {
|
||||
t.Fatalf("expected scale of 1 shard, got %d", pAgent.Status.Shards)
|
||||
}
|
||||
require.Equal(t, int32(1), pAgent.Status.Shards)
|
||||
|
||||
pAgent, err = framework.ScalePrometheusAgentAndWaitUntilReady(ctx, name, ns, 2)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
if pAgent.Status.Shards != 2 {
|
||||
t.Fatalf("expected scale of 2 shards, got %d", pAgent.Status.Shards)
|
||||
}
|
||||
require.Equal(t, int32(2), pAgent.Status.Shards)
|
||||
}
|
||||
|
||||
@@ -479,9 +479,8 @@ func testScrapeConfigDNSSDConfig(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// Check that the targets appear in Prometheus and does proper scrapping
|
||||
if err := framework.WaitForHealthyTargets(context.Background(), ns, "prometheus-operated", 1); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
err = framework.WaitForHealthyTargets(context.Background(), ns, "prometheus-operated", 1)
|
||||
require.NoError(t, err)
|
||||
|
||||
// Remove the ScrapeConfig
|
||||
err = framework.DeleteScrapeConfig(context.Background(), ns, "scrape-config")
|
||||
@@ -955,19 +954,12 @@ func testScrapeConfigCRDValidations(t *testing.T) {
|
||||
|
||||
_, err := framework.MonClientV1alpha1.ScrapeConfigs(ns).Create(context.Background(), sc, metav1.CreateOptions{})
|
||||
if test.expectedError {
|
||||
if err == nil {
|
||||
t.Fatal("expected error but got nil")
|
||||
}
|
||||
if !apierrors.IsInvalid(err) {
|
||||
t.Fatalf("expected Invalid error but got %v", err)
|
||||
}
|
||||
require.Error(t, err)
|
||||
require.True(t, apierrors.IsInvalid(err))
|
||||
return
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error occurred %v", err)
|
||||
|
||||
}
|
||||
require.NoError(t, err)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
v1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/util/intstr"
|
||||
@@ -32,15 +33,11 @@ func testOperatorUpgrade(t *testing.T) {
|
||||
|
||||
// Delete cluster wide resources to make sure the environment is clean
|
||||
err := framework.DeletePrometheusOperatorClusterResource(context.Background())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
// Create Prometheus Operator with previous stable minor version
|
||||
_, err = previousVersionFramework.CreateOrUpdatePrometheusOperator(context.Background(), ns, nil, nil, nil, nil, true, true, false)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
name := "operator-upgrade"
|
||||
|
||||
@@ -124,43 +121,29 @@ func testOperatorUpgrade(t *testing.T) {
|
||||
|
||||
alertmanager := previousVersionFramework.MakeBasicAlertmanager(ns, name, 1)
|
||||
_, err = previousVersionFramework.CreateAlertmanagerAndWaitUntilReady(context.Background(), alertmanager)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
_, err = previousVersionFramework.CreateOrUpdateServiceAndWaitUntilReady(context.Background(), ns, &alertmanagerService)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
previousVersionFramework.SetupPrometheusRBAC(context.Background(), t, nil, ns)
|
||||
prometheus := previousVersionFramework.MakeBasicPrometheus(ns, name, name, 1)
|
||||
|
||||
_, err = previousVersionFramework.CreatePrometheusAndWaitUntilReady(context.Background(), ns, previousVersionFramework.MakeBasicPrometheus(ns, name, name, 1))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = previousVersionFramework.CreateOrUpdateServiceAndWaitUntilReady(context.Background(), ns, &prometheusService)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
thanosRuler := previousVersionFramework.MakeBasicThanosRuler(name, 1, "http://test.example.com")
|
||||
_, err = previousVersionFramework.CreateThanosRulerAndWaitUntilReady(context.Background(), ns, thanosRuler)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
_, err = previousVersionFramework.CreateOrUpdateServiceAndWaitUntilReady(context.Background(), ns, &thanosRulerService)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
framework.SetupPrometheusRBAC(context.Background(), t, testCtx, ns)
|
||||
// Update Prometheus Operator to current version
|
||||
finalizers, err := framework.CreateOrUpdatePrometheusOperator(context.Background(), ns, nil, nil, nil, nil, true, true, true)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
for _, f := range finalizers {
|
||||
testCtx.AddFinalizerFn(f)
|
||||
}
|
||||
@@ -169,29 +152,17 @@ func testOperatorUpgrade(t *testing.T) {
|
||||
time.Sleep(time.Minute)
|
||||
|
||||
_, err = framework.WaitForAlertmanagerReady(context.Background(), alertmanager)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
err = framework.WaitForServiceReady(context.Background(), ns, alertmanagerService.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = framework.WaitForPrometheusReady(context.Background(), prometheus, 5*time.Minute)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
err = framework.WaitForServiceReady(context.Background(), ns, prometheusService.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
|
||||
err = framework.WaitForThanosRulerReady(context.Background(), ns, thanosRuler, 5*time.Minute)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
err = framework.WaitForServiceReady(context.Background(), ns, thanosRulerService.Name)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user