You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by pc...@apache.org on 2023/08/23 10:26:24 UTC
[camel-k] 01/02: chore(e2e): kustomize util refactoring
This is an automated email from the ASF dual-hosted git repository.
pcongiusti pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 78a0a06e1fcc02df722888da5a05973037512bed
Author: Pasquale Congiusti <pa...@gmail.com>
AuthorDate: Tue Aug 22 09:19:53 2023 +0200
chore(e2e): kustomize util refactoring
---
e2e/install/kustomize/common.go | 117 ------------------------------------
e2e/install/kustomize/setup_test.go | 26 ++++++++
e2e/support/test_util.go | 62 +++++++++++++++++++
3 files changed, 88 insertions(+), 117 deletions(-)
diff --git a/e2e/install/kustomize/common.go b/e2e/install/kustomize/common.go
deleted file mode 100644
index 88009ccfd..000000000
--- a/e2e/install/kustomize/common.go
+++ /dev/null
@@ -1,117 +0,0 @@
-//go:build integration
-// +build integration
-
-// To enable compilation of this file in Goland, go to "Settings -> Go -> Vendoring & Build Tags -> Custom Tags" and add "integration"
-
-/*
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements. See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-*/
-
-package kustomize
-
-import (
- "os/exec"
- "strings"
- "testing"
-
- . "github.com/apache/camel-k/v2/e2e/support"
- . "github.com/onsi/gomega"
- "github.com/onsi/gomega/gexec"
- "github.com/stretchr/testify/assert"
-)
-
-const (
- // v1.Build, v1.Integration
- // v1.IntegrationKit, v1.IntegrationPlatform
- // v1.Kamelet, v1.Pipe,
- // v1alpha1.Kamelet, v1alpha1.KameletBinding
- ExpectedCRDs = 8
-
- // camel-k-operator, camel-k-operator-events,
- // camel-k-operator-knative, camel-k-operator-leases,
- // camel-k-operator-podmonitors, camel-k-operator-strimzi,
- // camel-k-operator-keda
- ExpectedKubePromoteRoles = 7
-
- // camel-k-edit
- // camel-k-operator-custom-resource-definitions
- // camel-k-operator-bind-addressable-resolver
- // camel-k-operator-local-registry
- ExpectedKubeClusterRoles = 4
-
- // camel-k-operator-openshift
- ExpectedOSPromoteRoles = 1
-
- // camel-k-operator-console-openshift
- ExpectedOSClusterRoles = 1
-)
-
-func ExpectExecSucceed(t *testing.T, command *exec.Cmd) {
- t.Helper()
-
- var cmdOut strings.Builder
- var cmdErr strings.Builder
-
- defer func() {
- if t.Failed() {
- t.Logf("Output from make command:\n%s\n", cmdOut.String())
- t.Logf("Error from make command:\n%s\n", cmdErr.String())
- }
- }()
-
- session, err := gexec.Start(command, &cmdOut, &cmdErr)
- session.Wait()
- Eventually(session).Should(gexec.Exit(0))
- assert.NoError(t, err)
- assert.NotContains(t, strings.ToUpper(cmdErr.String()), "ERROR")
-}
-
-//
-// Expect a command error with an exit code of 1
-//
-func ExpectExecError(t *testing.T, command *exec.Cmd) {
- t.Helper()
-
- var cmdOut strings.Builder
- var cmdErr strings.Builder
-
- defer func() {
- if t.Failed() {
- t.Logf("Output from make command:\n%s\n", cmdOut.String())
- t.Logf("Error from make command:\n%s\n", cmdErr.String())
- }
- }()
-
- session, err := gexec.Start(command, &cmdOut, &cmdErr)
- session.Wait()
- Eventually(session).ShouldNot(gexec.Exit(0))
- assert.NoError(t, err)
- assert.Contains(t, strings.ToUpper(cmdErr.String()), "ERROR")
-}
-
-// Clean up the cluster ready for the next set of tests
-func Cleanup() {
- // Remove the locally installed operator
- UninstallAll()
-
- // Ensure the CRDs & ClusterRoles are reinstalled if not already
- Kamel("install", "--olm=false", "--cluster-setup").Execute()
-}
-
-// Removes all items
-func UninstallAll() {
- Kamel("uninstall", "--olm=false", "--all").Execute()
-}
diff --git a/e2e/install/kustomize/setup_test.go b/e2e/install/kustomize/setup_test.go
index 429f516e7..2c9fdb0d2 100644
--- a/e2e/install/kustomize/setup_test.go
+++ b/e2e/install/kustomize/setup_test.go
@@ -32,6 +32,32 @@ import (
. "github.com/onsi/gomega"
)
+const (
+ // v1.Build, v1.Integration
+ // v1.IntegrationKit, v1.IntegrationPlatform
+ // v1.Kamelet, v1.Pipe,
+ // v1alpha1.Kamelet, v1alpha1.KameletBinding
+ ExpectedCRDs = 8
+
+ // camel-k-operator, camel-k-operator-events,
+ // camel-k-operator-knative, camel-k-operator-leases,
+ // camel-k-operator-podmonitors, camel-k-operator-strimzi,
+ // camel-k-operator-keda
+ ExpectedKubePromoteRoles = 7
+
+ // camel-k-edit
+ // camel-k-operator-custom-resource-definitions
+ // camel-k-operator-bind-addressable-resolver
+ // camel-k-operator-local-registry
+ ExpectedKubeClusterRoles = 4
+
+ // camel-k-operator-openshift
+ ExpectedOSPromoteRoles = 1
+
+ // camel-k-operator-console-openshift
+ ExpectedOSClusterRoles = 1
+)
+
func TestSetupKustomizeBasic(t *testing.T) {
RegisterTestingT(t)
makeDir := testutil.MakeTempCopyDir(t, "../../../install")
diff --git a/e2e/support/test_util.go b/e2e/support/test_util.go
index b85e93060..7a6cca019 100644
--- a/e2e/support/test_util.go
+++ b/e2e/support/test_util.go
@@ -24,10 +24,15 @@ package support
import (
"os"
+ "os/exec"
+ "strings"
+ "testing"
. "github.com/onsi/gomega"
+ "github.com/onsi/gomega/gexec"
. "github.com/onsi/gomega/gstruct"
"github.com/onsi/gomega/types"
+ "github.com/stretchr/testify/assert"
)
func init() {
@@ -50,3 +55,60 @@ func GetEnvOrDefault(key string, deflt string) string {
return deflt
}
}
+
+func ExpectExecSucceed(t *testing.T, command *exec.Cmd) {
+ t.Helper()
+
+ var cmdOut strings.Builder
+ var cmdErr strings.Builder
+
+ defer func() {
+ if t.Failed() {
+ t.Logf("Output from make command:\n%s\n", cmdOut.String())
+ t.Logf("Error from make command:\n%s\n", cmdErr.String())
+ }
+ }()
+
+ session, err := gexec.Start(command, &cmdOut, &cmdErr)
+ session.Wait()
+ Eventually(session).Should(gexec.Exit(0))
+ assert.NoError(t, err)
+ assert.NotContains(t, strings.ToUpper(cmdErr.String()), "ERROR")
+}
+
+//
+// Expect a command error with an exit code of 1
+//
+func ExpectExecError(t *testing.T, command *exec.Cmd) {
+ t.Helper()
+
+ var cmdOut strings.Builder
+ var cmdErr strings.Builder
+
+ defer func() {
+ if t.Failed() {
+ t.Logf("Output from make command:\n%s\n", cmdOut.String())
+ t.Logf("Error from make command:\n%s\n", cmdErr.String())
+ }
+ }()
+
+ session, err := gexec.Start(command, &cmdOut, &cmdErr)
+ session.Wait()
+ Eventually(session).ShouldNot(gexec.Exit(0))
+ assert.NoError(t, err)
+ assert.Contains(t, strings.ToUpper(cmdErr.String()), "ERROR")
+}
+
+// Clean up the cluster ready for the next set of tests
+func Cleanup() {
+ // Remove the locally installed operator
+ UninstallAll()
+
+ // Ensure the CRDs & ClusterRoles are reinstalled if not already
+ Kamel("install", "--olm=false", "--cluster-setup").Execute()
+}
+
+// Removes all items
+func UninstallAll() {
+ Kamel("uninstall", "--olm=false", "--all").Execute()
+}