You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ts...@apache.org on 2022/10/07 03:48:09 UTC
[camel-k] 07/13: (e2e): check if namespace already exists
This is an automated email from the ASF dual-hosted git repository.
tsato pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 7591e0fb7a1bc3bcbca7a5d767101a4290623580
Author: phantomjinx <p....@phantomjinx.co.uk>
AuthorDate: Fri Sep 23 13:44:40 2022 +0100
(e2e): check if namespace already exists
* If test namespace exists then create a different one with extra suffix
---
e2e/support/test_support.go | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/e2e/support/test_support.go b/e2e/support/test_support.go
index 4e4f0013f..aa1761d75 100644
--- a/e2e/support/test_support.go
+++ b/e2e/support/test_support.go
@@ -2161,6 +2161,19 @@ func deleteTestNamespace(t *testing.T, ns ctrl.Object) {
}
}
+func testNamespaceExists(ns string) (bool, error) {
+ _, err := TestClient().CoreV1().Namespaces().Get(TestContext, ns, metav1.GetOptions{})
+ if err != nil {
+ if k8serrors.IsNotFound(err) {
+ return false, nil
+ } else {
+ return false, err
+ }
+ }
+
+ return true, nil
+}
+
func newTestNamespace(injectKnativeBroker bool) ctrl.Object {
brokerLabel := "eventing.knative.dev/injection"
name := os.Getenv("CAMEL_K_TEST_NS")
@@ -2169,6 +2182,13 @@ func newTestNamespace(injectKnativeBroker bool) ctrl.Object {
}
c := TestClient()
+ if exists, err := testNamespaceExists(name); err != nil {
+ failTest(err)
+ } else if exists {
+ fmt.Println("Warning: namespace ", name, " already exists so using different namespace name")
+ name = fmt.Sprintf("%s-%d", name, time.Now().Second())
+ }
+
if oc, err := openshift.IsOpenShift(TestClient()); err != nil {
failTest(err)
} else if oc {