From 45e91be07cc19659b68119e8d1219d7dc0776dfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20S=C4=99k?= Date: Thu, 2 Jan 2020 12:43:48 +0100 Subject: [PATCH] Improve logging in e2e tests --- test/e2e/main_test.go | 7 +++++++ test/e2e/operator.go | 16 ++++++++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/test/e2e/main_test.go b/test/e2e/main_test.go index a58506a2..2a9adc75 100644 --- a/test/e2e/main_test.go +++ b/test/e2e/main_test.go @@ -44,6 +44,13 @@ func setupTest(t *testing.T) (string, *framework.TestCtx) { t.Fatalf("could not initialize cluster resources: %v", err) } + defer func() { + showLogsIfTestHasFailed(t, ctx) + if t.Failed() && ctx != nil { + ctx.Cleanup() + } + }() + jenkinsServiceList := &v1alpha2.JenkinsList{ TypeMeta: metav1.TypeMeta{ Kind: v1alpha2.Kind, diff --git a/test/e2e/operator.go b/test/e2e/operator.go index 3434eabe..4fd94231 100644 --- a/test/e2e/operator.go +++ b/test/e2e/operator.go @@ -125,7 +125,7 @@ func printKubernetesPods(t *testing.T, namespace string) { } } -func showLogsAndCleanup(t *testing.T, ctx *framework.TestCtx) { +func showLogsIfTestHasFailed(t *testing.T, ctx *framework.TestCtx) { namespace, err := ctx.GetNamespace() if err != nil { t.Fatalf("Failed to get '%s' namespace", err) @@ -134,14 +134,22 @@ func showLogsAndCleanup(t *testing.T, ctx *framework.TestCtx) { if t.Failed() { t.Log("Test failed. Bellow here you can check logs:") - printOperatorLogs(t, namespace) printKubernetesEvents(t, namespace) printKubernetesPods(t, namespace) + printOperatorLogs(t, namespace) + } +} + +func showLogsAndCleanup(t *testing.T, ctx *framework.TestCtx) { + namespace, err := ctx.GetNamespace() + if err != nil { + t.Fatalf("Failed to get '%s' namespace", err) } + showLogsIfTestHasFailed(t, ctx) + ctx.Cleanup() - err = waitUntilNamespaceDestroyed(namespace) - if err != nil { + if err = waitUntilNamespaceDestroyed(namespace); err != nil { t.Fatalf("Failed to wait for namespace until destroyed '%s'", err) } }