This is an automated email from the ASF dual-hosted git repository.

cdeppisch pushed a commit to branch release-2.3.x
in repository https://gitbox.apache.org/repos/asf/camel-k.git


The following commit(s) were added to refs/heads/release-2.3.x by this push:
     new c6c1f743a chore(e2e): Allow to disable copy optimizations on E2E tests
c6c1f743a is described below

commit c6c1f743ac4511a8dedd6c250fb80ee816ce1e48
Author: Christoph Deppisch <cdeppi...@redhat.com>
AuthorDate: Tue Apr 30 10:24:02 2024 +0200

    chore(e2e): Allow to disable copy optimizations on E2E tests
    
    - Provide envvars to the user to enable/disable copy catalog e2e test 
optimization
    - Provide envvars to the user to enable/disable copy integration kit e2e 
test optimization
    - Add some documentation on available e2e test envvars
---
 e2e/README.md               | 35 +++++++++++++++++++++++++++++++----
 e2e/support/test_support.go | 10 ++++++++++
 2 files changed, 41 insertions(+), 4 deletions(-)

diff --git a/e2e/README.md b/e2e/README.md
index a4ddf63d3..4119885a9 100644
--- a/e2e/README.md
+++ b/e2e/README.md
@@ -1,4 +1,4 @@
-# Camel K End To End tests
+# Camel K End-To-End tests
 
 This directory contains the suite of test that are run on a CI to ensure the 
stability of the product and no regression are introduced at each PR. The full 
documentation can be found at 
https://camel.apache.org/camel-k/next/contributing/e2e.html
 
@@ -31,9 +31,9 @@ Additional set of test that cover the main common features 
but that requires som
 
 Test suite that cover the different installation procedures we offer and any 
upgrade scenario.
 
-### KNative
+### Knative
 
-Test suite that cover the features associated with KNative. This test will 
assume the presence of a namespaced operator (installation provided by the same 
test execution suite) togheter with KNative operator configuration.
+Test suite that cover the features associated with Knative. This test will 
assume the presence of a namespaced operator (installation provided by the same 
test execution suite) togheter with Knative operator configuration.
 
 ### Native
 
@@ -45,4 +45,31 @@ Test suite that cover the features associated with Telemetry 
feature. The test e
 
 ### Yaks
 
-Test suite that cover certain KNative features togheter with YAKS operator.
+Test suite that cover certain Knative features togheter with YAKS operator.
+
+## Environment variables
+
+You can set some environment variables to change the behavior of the E2E test 
suite.
+
+| Env                                     | Default                            
     | Description                                                              
                                                                     |
+|-----------------------------------------|-----------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
+| CAMEL_K_TEST_SKIP_PROBLEMATIC           | false                              
     | Skips tests that are marked to be problematic (flaky) on certain 
environments (e.g. on OpenShift).                                            |
+| CAMEL_K_TEST_SAVE_FAILED_TEST_NAMESPACE | false                              
     | Used to not remove the temporary test namespaces after the test run. 
Enables better analysis of resources after the test                      |
+| CAMEL_K_TEST_LOG_LEVEL                  | info                               
     | Logging level used to run the tests and used in Maven commands run by 
the operator (if level is `debug` the Maven commands use `-X` option).  |
+| CAMEL_K_TEST_MAVEN_CLI_OPTIONS          | {}                                 
     | Maven CLI options used to run Camel K integrations during the tests.     
                                                                     |
+| CAMEL_K_TEST_OPERATOR_IMAGE             | 
docker.io/apache/camel-k:2.4.0-SNAPSHOT | Camel K operator image used in 
operator installation.                                                          
                               |
+| CAMEL_K_TEST_OPERATOR_IMAGE_PULL_POLICY | -                                  
     | Operator image pull policy.                                              
                                                                     |
+| CAMEL_K_TEST_IMAGE_NAME                 | docker.io/apache/camel-k           
     | Camel K operator image name used in operator installation.               
                                                                     |
+| CAMEL_K_TEST_IMAGE_VERSION              | 2.4.0-SNAPSHOT                     
     | Camel K operator image version used in operator installation. Value is 
retrieved from `pkg/util/defaults/defaults.go`                         |
+| CAMEL_K_TEST_NO_OLM_OPERATOR_IMAGE      | 
docker.io/apache/camel-k:2.4.0-SNAPSHOT | Camel K operator image used in non 
OLM based operator installation.                                                
                           |
+| CAMEL_K_TEST_RUNTIME_VERSION            | 3.8.1                              
     | Camel K runtime version used for the integrations. Value is retrieved 
from `pkg/util/defaults/defaults.go`                                    |
+| CAMEL_K_TEST_BASE_IMAGE                 | eclipse-temurin:17                 
     | Camel K runtime base image used for the integrations. Value is retrieved 
from `pkg/util/defaults/defaults.go`                                 |
+| CAMEL_K_TEST_TIMEOUT_SHORT              | 1                                  
     | Customize the timeouts (in minutes) used in test assertions.             
                                                                     |
+| CAMEL_K_TEST_TIMEOUT_MEDIUM             | 5                                  
     | Customize the timeouts (in minutes) used in test assertions.             
                                                                     |
+| CAMEL_K_TEST_TIMEOUT_LONG               | 15                                 
     | Customize the timeouts (in minutes) used in test assertions.             
                                                                     |
+| CAMEL_K_TEST_MAVEN_CA_PEM_PATH          | -                                  
     | Optional Maven certificate path.                                         
                                                                     |
+| CAMEL_K_TEST_COPY_CATALOG               | true                               
     | Enable/disable the optimization to copy the Camel Catalog from default 
operator namespace for each test namespace.                            |
+| CAMEL_K_TEST_COPY_INTEGRATION_KITS      | true                               
     | Enable/disable the optimization to copy integration kits from default 
operator namespace for each test namespace.                             |
+| CAMEL_K_TEST_NS                         | -                                  
     | Custom test namespace name used to create temporary namespaces.          
                                                                     |
+| CAMEL_K_TEST_MAKE_DIR                   | -                                  
     | Used in Helm and Kustomize install tests as Makefile root dir.           
                                                                     |
+| CAMEL_K_TEST_MAKE_ARGS                  | -                                  
     | Used in Helm and Kustomize install tests as Makefile arguments.          
                                                                     |
diff --git a/e2e/support/test_support.go b/e2e/support/test_support.go
index e98b0895f..fcbad7696 100644
--- a/e2e/support/test_support.go
+++ b/e2e/support/test_support.go
@@ -1999,6 +1999,11 @@ func PlatformByName(t *testing.T, ctx context.Context, 
ns string, name string) f
 }
 
 func CopyIntegrationKits(t *testing.T, ctx context.Context, ns, operatorID 
string) error {
+       if value, ok := os.LookupEnv("CAMEL_K_TEST_COPY_INTEGRATION_KITS"); ok 
&& value == "false" {
+               fmt.Println("Copy integration kits optimization is disabled")
+               return nil
+       }
+
        opns := GetEnvOrDefault("CAMEL_K_GLOBAL_OPERATOR_NS", 
TestDefaultNamespace)
 
        lst := v1.NewIntegrationKitList()
@@ -2034,6 +2039,11 @@ func CopyIntegrationKits(t *testing.T, ctx 
context.Context, ns, operatorID strin
 }
 
 func CopyCamelCatalog(t *testing.T, ctx context.Context, ns, operatorID 
string) error {
+       if value, ok := os.LookupEnv("CAMEL_K_TEST_COPY_CATALOG"); ok && value 
== "false" {
+               fmt.Println("Copy catalog optimization is disabled")
+               return nil
+       }
+
        catalogName := fmt.Sprintf("camel-catalog-%s", 
strings.ToLower(defaults.DefaultRuntimeVersion))
        opns := GetEnvOrDefault("CAMEL_K_GLOBAL_OPERATOR_NS", 
TestDefaultNamespace)
 

Reply via email to