diff --git a/CHANGELOG.md b/CHANGELOG.md index baf1652018c..77844d65ce5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -96,6 +96,7 @@ New deprecation(s): ### Other +- **General**: Allow E2E tests to be run against existing KEDA and/or Kafka installation ([#5595](https://github.com/kedacore/keda/pull/5595)) - **General**: Introduce ENABLE_OPENTELEMETRY in deploying/testing process ([#5375](https://github.com/kedacore/keda/issues/5375)) ## v2.12.0 diff --git a/tests/helper/helper.go b/tests/helper/helper.go index eeb2643bac0..87da24b207c 100644 --- a/tests/helper/helper.go +++ b/tests/helper/helper.go @@ -84,6 +84,8 @@ var ( GcpIdentityTests = os.Getenv("GCP_RUN_IDENTITY_TESTS") EnableOpentelemetry = os.Getenv("ENABLE_OPENTELEMETRY") InstallCertManager = AwsIdentityTests == StringTrue || GcpIdentityTests == StringTrue + InstallKeda = os.Getenv("E2E_INSTALL_KEDA") + InstallKafka = os.Getenv("E2E_INSTALL_KAFKA") ) var ( diff --git a/tests/utils/cleanup_test.go b/tests/utils/cleanup_test.go index 3d0fcf4b5e9..957e67fde90 100644 --- a/tests/utils/cleanup_test.go +++ b/tests/utils/cleanup_test.go @@ -14,6 +14,10 @@ import ( ) func TestRemoveKEDA(t *testing.T) { + // default to true + if InstallKeda == StringFalse { + t.Skip("skipping as requested -- KEDA not installed via these tests") + } out, err := ExecuteCommandWithDir("make undeploy", "../..") require.NoErrorf(t, err, "error removing KEDA - %s", err) @@ -100,6 +104,10 @@ func TestRemoveAzureManagedPrometheusComponents(t *testing.T) { } func TestRemoveStrimzi(t *testing.T) { + // default to true + if InstallKafka == StringFalse { + t.Skip("skipping as requested -- Kafka not managed by E2E tests") + } _, err := ExecuteCommand(fmt.Sprintf(`helm uninstall --namespace %s %s`, StrimziNamespace, StrimziChartName)) diff --git a/tests/utils/setup_test.go b/tests/utils/setup_test.go index e304e4fd7d6..06b765a3243 100644 --- a/tests/utils/setup_test.go +++ b/tests/utils/setup_test.go @@ -201,6 +201,10 @@ func TestSetupOpentelemetryComponents(t *testing.T) { } func TestDeployKEDA(t *testing.T) { + // default to true + if InstallKeda == StringFalse { + t.Skip("skipping as requested -- KEDA assumed to be already installed") + } KubeClient = GetKubernetesClient(t) CreateNamespace(t, KubeClient, KEDANamespace) @@ -226,6 +230,10 @@ func TestDeployKEDA(t *testing.T) { } func TestVerifyKEDA(t *testing.T) { + // default to true + if InstallKeda == StringFalse { + t.Skip("skipping as requested -- KEDA assumed to be already installed") + } assert.True(t, WaitForDeploymentReplicaReadyCount(t, KubeClient, KEDAOperator, KEDANamespace, 1, 30, 6), "replica count should be 1 after 3 minutes") assert.True(t, WaitForDeploymentReplicaReadyCount(t, KubeClient, KEDAMetricsAPIServer, KEDANamespace, 1, 30, 6), @@ -265,6 +273,10 @@ func TestSetupAadPodIdentityComponents(t *testing.T) { } func TestSetUpStrimzi(t *testing.T) { + // default to true + if InstallKafka == StringFalse { + t.Skip("skipping as requested -- Kafka assumed to be unneeded or already installed") + } t.Log("--- installing kafka operator ---") _, err := ExecuteCommand("helm repo add strimzi https://strimzi.io/charts/") assert.NoErrorf(t, err, "cannot execute command - %s", err)