From a97d4bf7bb1cad404a8351cb31b18c0a1936d8f7 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Sat, 11 Jan 2025 17:16:30 +0100 Subject: [PATCH 01/11] [issue-222] - Add EAP XP 6 and EAP 8.1 Helm Charts values schema files and adapters --- provisioners/pom.xml | 27 + .../eap81/Eap81HelmChartReleaseAdapter.java | 746 +++++++++++++++++ .../xp6/EapXp6HelmChartReleaseAdapter.java | 763 ++++++++++++++++++ .../schema/eap81/helm-eap81-release.json | 633 +++++++++++++++ .../values/schema/xp6/helm-xp6-release.json | 754 +++++++++++++++++ .../EapHelmChartReleaseAdapterTest.java | 260 +++++- 6 files changed, 3159 insertions(+), 24 deletions(-) create mode 100644 provisioners/src/main/java/org/jboss/intersmash/provision/helm/wildfly/eap81/Eap81HelmChartReleaseAdapter.java create mode 100644 provisioners/src/main/java/org/jboss/intersmash/provision/helm/wildfly/xp6/EapXp6HelmChartReleaseAdapter.java create mode 100644 provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/eap81/helm-eap81-release.json create mode 100644 provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6/helm-xp6-release.json diff --git a/provisioners/pom.xml b/provisioners/pom.xml index 55b4e86d..192a9490 100644 --- a/provisioners/pom.xml +++ b/provisioners/pom.xml @@ -289,6 +289,20 @@ org.jboss.intersmash.model.helm.charts.values.eap8 + + + charts.values.generate-schema-model.eap81 + + generate + + + + ${basedir}/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/eap81 + ${project.build.directory}/generated-sources/ + org.jboss.intersmash.model.helm.charts.values.eap81 + + + charts.values.generate-schema-model.xp5 @@ -302,6 +316,19 @@ + + charts.values.generate-schema-model.xp6 + + generate + + + + ${basedir}/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6 + ${project.build.directory}/generated-sources/ + org.jboss.intersmash.model.helm.charts.values.xp6 + + + - 32.0.0.Final + 35.0.0.Final - 5.0.0.Final + 5.1.1.Final ${version.wildfly-server} org.wildfly:wildfly-galleon-pack:${version.wildfly-server} org.wildfly:wildfly-ee-galleon-pack:${version.wildfly-server} - org.wildfly.cloud:wildfly-cloud-galleon-pack:6.0.0.Final + org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.2.Final org.keycloak diff --git a/examples/ws-bootable-jar-example/pom.xml b/examples/ws-bootable-jar-example/pom.xml index db1c97bb..7b19755d 100644 --- a/examples/ws-bootable-jar-example/pom.xml +++ b/examples/ws-bootable-jar-example/pom.xml @@ -30,15 +30,15 @@ 1.3 - 4.0.0.Final + 5.1.1.Final 3.3.2 - 10.0.0.Final + 12.0.0.Beta1 - 29.0.1.Final + 35.0.0.Final diff --git a/examples/wstrust/pom.xml b/examples/wstrust/pom.xml index 6eccb7ad..5c0ef82c 100644 --- a/examples/wstrust/pom.xml +++ b/examples/wstrust/pom.xml @@ -37,7 +37,7 @@ Default version for the Bootable JAR Plugin is set here and can be overridden, e.g. also for pulling the productized version --> - 10.0.0.Final + 12.0.0.Beta1 diff --git a/examples/wstrust/service/pom.xml b/examples/wstrust/service/pom.xml index 7ad1f5a7..c42ff517 100644 --- a/examples/wstrust/service/pom.xml +++ b/examples/wstrust/service/pom.xml @@ -44,7 +44,7 @@ 3.3.2 - 29.0.1.Final + 35.0.0.Final diff --git a/examples/wstrust/sts/pom.xml b/examples/wstrust/sts/pom.xml index 61b1531b..f099010d 100644 --- a/examples/wstrust/sts/pom.xml +++ b/examples/wstrust/sts/pom.xml @@ -44,7 +44,7 @@ 3.3.2 - 29.0.1.Final + 35.0.0.Final diff --git a/provisioners/pom.xml b/provisioners/pom.xml index 192a9490..89c78cfb 100644 --- a/provisioners/pom.xml +++ b/provisioners/pom.xml @@ -271,7 +271,7 @@ generate - + ${basedir}/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/wildfly target/generated-sources org.jboss.intersmash.model.helm.charts.values.wildfly diff --git a/testsuite/deployments/eap7-shared/pom.xml b/testsuite/deployments/eap7-shared/pom.xml index 79d5e9a6..1f6cdfbe 100644 --- a/testsuite/deployments/eap7-shared/pom.xml +++ b/testsuite/deployments/eap7-shared/pom.xml @@ -20,14 +20,14 @@ 1.8 UTF-8 - 7.4.13.GA - 4.0.1.GA-7.4.13.GA + 7.4.20.GA + 4.0.2.GA-7.4.20.GA org.jboss.bom jboss-eap-jakartaee8 ${jboss-eap7.version} - org.jboss.eap:wildfly-galleon-pack:4.0.1.GA-redhat-00007 + org.jboss.eap:wildfly-galleon-pack:4.0.2.GA-redhat-00009 diff --git a/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml b/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml index a97013f5..48e5d193 100644 --- a/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml +++ b/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml @@ -20,11 +20,11 @@ 1.1 2.21.0 - 32.0.0.Final + 35.0.0.Final org.wildfly.plugins wildfly-maven-plugin - 5.0.0.Final + 5.1.1.Final org.wildfly.bom wildfly-ee diff --git a/testsuite/deployments/wildfly-shared/pom.xml b/testsuite/deployments/wildfly-shared/pom.xml index ce42894a..bfeab505 100644 --- a/testsuite/deployments/wildfly-shared/pom.xml +++ b/testsuite/deployments/wildfly-shared/pom.xml @@ -17,18 +17,18 @@ 1.3 - 32.0.0.Final + 35.0.0.Final org.wildfly.plugins wildfly-maven-plugin - 5.0.0.Final + 5.1.1.Final org.wildfly.bom wildfly-ee ${version.wildfly-server} org.wildfly.bom - wildfly-microprofile + wildfly-expansion ${version.wildfly-server} org.wildfly:wildfly-galleon-pack:${version.wildfly-server} org.wildfly:wildfly-ee-galleon-pack:${version.wildfly-server} - org.wildfly.cloud:wildfly-cloud-galleon-pack:6.0.0.Final + org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.2.Final - 11.0.1.Final + 12.0.0.Beta1 From c10393faf366f9bd735ffd47a74fed8faacd033e Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Tue, 14 Jan 2025 15:49:22 +0100 Subject: [PATCH 04/11] [issue-222] (Unrelated) - Yet another update of documentation about latest supported versions, based on the defaults provided by OpenShift as of today --- README.md | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 8cf840ef..629eb526 100644 --- a/README.md +++ b/README.md @@ -31,28 +31,28 @@ having their own release cadence - it _could_ happen that a service version is p Feel free to submit an issue in such a case, Intersmash welcomes community contributions to keep the tooling up to date. -| Service | Supported version | Notes | -|:---------------------------------|:-----------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| ActiveMQ Artemis | 2.38.0 | The one provided by the custom index image, i.e. quay.io/jbossqe-eap/intersmash-activemq-operator-index:1.2.9, which lists to images in https://quay.io/organization/arkmq-org | -| Red Hat AMQ Broker | 7.12.z | Or _latest_ in the `:7.12` tag image stream, see registry.redhat.io/amq7/amq-broker-init-rhel8 | -| | | | -| Infinispan | 15.1.1.Final | Or _default_ provided by the default Infinispan Operator `stable` channel | -| Red Hat Data Grid | 8.5.2.GA | Or _default_ provided by the Red Hat DataGrid Operator `stable` channel | -| | | | -| Kafka provided by Strimzi | 3.8.0 | Provided by the Strimzi Operator `stable` channel | -| Red Hat AMQ Streams | 3.8.0.redhat-00007 | Or _default_, as provided by the Red Hat AMQ Streams Operator `stable` channel | -| | | | -| Keycloak | 26.0.7 | Or _default_, as provided by default by the Keycloak Operator `fast` channel | -| Red Hat Build of keycloak (RHBK) | 26.0.7.redhat-00001 | Or _latest_ in the `:26.0` tag image stream, see registry.redhat.io/rhbk/keycloak-rhel9 | -| Red Hat SSO - **DEPRECATED** | 7.6.z | The _latest_ in the `:7.6` tag image stream, see registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 | -| | | | -| WildFly | 32.0.0.Final | | -| Red Hat JBoss EAP 8 | JBoss EAP 8.0.x (and XP 5.x) | | -| Red Hat JBoss EAP 7 | JBoss EAP 7.4.z (and XP 4.z) | | -| | | | -| Hyperfoil | 0.24.2 | Supports provisioning via the Operator, both on **Kubernetes** and **OpenShift** | -| | | | -| Open Data Hub | 2.22.0 | Supports provisioning on OpenShift via the Operator | +| Service | Supported version | Notes | +|:---------------------------------|:-----------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ActiveMQ Artemis | 2.38.0 | The one provided by the custom index image, i.e. quay.io/jbossqe-eap/intersmash-activemq-operator-index:1.2.9, which lists to images in https://quay.io/organization/arkmq-org | +| Red Hat AMQ Broker | 7.12.z | Or _latest_ in the `:7.12` tag image stream, see registry.redhat.io/amq7/amq-broker-init-rhel8 | +| | | | +| Infinispan | 15.1.3.Final | Or _default_ provided by the default Infinispan Operator `stable` channel | +| Red Hat Data Grid | 8.5.2.GA | Or _default_ provided by the Red Hat DataGrid Operator `stable` channel | +| | | | +| Kafka provided by Strimzi | 3.9.0 | Provided by the Strimzi Operator `stable` channel | +| Streams for Apache Kafka | 3.8.0.redhat-00007 | Or _default_, as provided by the Red Hat Streams for Apache Kafka Operator `stable` channel | +| | | | +| Keycloak | 26.0.8 | Or _default_, as provided by default by the Keycloak Operator `fast` channel | +| Red Hat Build of keycloak (RHBK) | 26.0.8.redhat-00001 | Or _latest_ in the `:26.0` tag image stream, see registry.redhat.io/rhbk/keycloak-rhel9 | +| Red Hat SSO - **DEPRECATED** | 7.6.z | The _latest_ in the `:7.6` tag image stream, see registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 | +| | | | +| WildFly | 32.0.0.Final | | +| Red Hat JBoss EAP 8 | JBoss EAP 8.0.x (and XP 5.x) | | +| Red Hat JBoss EAP 7 | JBoss EAP 7.4.z (and XP 4.z) | | +| | | | +| Hyperfoil | 0.24.2 | Supports provisioning via the Operator, both on **Kubernetes** and **OpenShift** | +| | | | +| Open Data Hub | 2.22.0 | Supports provisioning on OpenShift via the Operator | Since multiple deliverables can be bound to a given service version, e.g.: container images, operator CRs, or Helm Charts, more information can be found in [the provisioners' documentation](./provisioners/README.md), or in the resources there linked. From 7548a0b0390dc91a060b97124e9c978579c66b31 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Wed, 15 Jan 2025 15:12:05 +0100 Subject: [PATCH 05/11] [issue-222] - Add profiles for building EAP XP 5 and EAP XP 6 deployments --- README.md | 8 ++ .../deployments/TestDeploymentProperties.java | 42 ++++++- .../src/main/resources/.properties | 1 + testsuite/deployments/wildfly-shared/pom.xml | 110 ++++++++++++++++-- 4 files changed, 147 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 629eb526..46a9649a 100644 --- a/README.md +++ b/README.md @@ -134,6 +134,14 @@ artifacts, which is done by enabling the `ts.wildfly.target-distribution.eap` or mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eap ``` +Regarding the EAP XP version, Intersmash supports provisioning both XP 5 and XP 6, and the deployments used by the +Intersmash testsuite can be built by using related artifacts and feature packs by enabling either the `ts.wildfly.eapxp.stream.xp6`, +or the `ts.wildfly.eapxp.stream.xp5` profile, e.g.: + +```shell +mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eapxp -Pts.wildfly.eapxp.stream.xp5 +``` + * Run Kubernetes integration tests: ```shell mvn test -pl testsuite/ -Pts.execution-profile.community -Pts.k8s diff --git a/testsuite/deployments/deployments-provider/src/main/java/org/jboss/intersmash/test/deployments/TestDeploymentProperties.java b/testsuite/deployments/deployments-provider/src/main/java/org/jboss/intersmash/test/deployments/TestDeploymentProperties.java index 396a36b4..f7c3265a 100644 --- a/testsuite/deployments/deployments-provider/src/main/java/org/jboss/intersmash/test/deployments/TestDeploymentProperties.java +++ b/testsuite/deployments/deployments-provider/src/main/java/org/jboss/intersmash/test/deployments/TestDeploymentProperties.java @@ -23,12 +23,18 @@ */ public class TestDeploymentProperties { static Properties properties; - private static String VERSION = "version"; - private static String GROUPD_ID = "groupID"; - private static String DEPLOYMENTS_PROVIDER_PATH = "deploymentsProviderPath"; - private static String WILDFLY_DEPLOYMENTS_BUILD_PROFILE = "wildflyDeploymentsBuildProfile"; - public static String WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP = "eap"; - public static String WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP_XP = "eapxp"; + private static final String VERSION = "version"; + private static final String GROUPD_ID = "groupID"; + private static final String DEPLOYMENTS_PROVIDER_PATH = "deploymentsProviderPath"; + private static final String WILDFLY_DEPLOYMENTS_BUILD_PROFILE = "wildflyDeploymentsBuildProfile"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP = "eap"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP_XP = "eapxp"; + private static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM = "wildflyDeploymentsBuildStream"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_COMMUNITY = "community"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_80 = "eap80"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_81 = "eap81"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_XP5 = "eapxp5"; + public static final String WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_XP6 = "eapxp6"; static { properties = new Properties(); @@ -55,15 +61,39 @@ public static String getWildflyDeploymentsBuildProfile() { return properties.getProperty(WILDFLY_DEPLOYMENTS_BUILD_PROFILE); } + public static String getWildflyDeploymentsBuildStream() { + return properties.getProperty(WILDFLY_DEPLOYMENTS_BUILD_STREAM); + } + public static Boolean isWildFlyDeploymentsBuildProfileEnabled() { return "".equals(getWildflyDeploymentsBuildProfile()); } + public static Boolean isCommunityDeploymentsBuildStreamEnabled() { + return WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_COMMUNITY.equals(getWildflyDeploymentsBuildStream()); + } + public static Boolean isEapDeploymentsBuildProfileEnabled() { return WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP.equals(getWildflyDeploymentsBuildProfile()); } + public static Boolean isEap80DeploymentsBuildStreamEnabled() { + return WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_80.equals(getWildflyDeploymentsBuildStream()); + } + + public static Boolean isEap81DeploymentsBuildStreamEnabled() { + return WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_81.equals(getWildflyDeploymentsBuildStream()); + } + public static Boolean isEapXpDeploymentsBuildProfileEnabled() { return WILDFLY_DEPLOYMENTS_BUILD_PROFILE_VALUE_EAP_XP.equals(getWildflyDeploymentsBuildProfile()); } + + public static Boolean isEapXp5DeploymentsBuildStreamEnabled() { + return WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_XP5.equals(getWildflyDeploymentsBuildStream()); + } + + public static Boolean isEapXp6DeploymentsBuildStreamEnabled() { + return WILDFLY_DEPLOYMENTS_BUILD_STREAM_VALUE_EAP_XP6.equals(getWildflyDeploymentsBuildStream()); + } } diff --git a/testsuite/deployments/deployments-provider/src/main/resources/.properties b/testsuite/deployments/deployments-provider/src/main/resources/.properties index 1fed79fc..3faf2d8e 100644 --- a/testsuite/deployments/deployments-provider/src/main/resources/.properties +++ b/testsuite/deployments/deployments-provider/src/main/resources/.properties @@ -2,3 +2,4 @@ version=${project.version} groupID=${project.groupId} deploymentsProviderPath=${project.basedir} wildflyDeploymentsBuildProfile=${intersmash.deployments.wildfly.build.profile} +wildflyDeploymentsBuildStream=${intersmash.deployments.wildfly.build.stream} diff --git a/testsuite/deployments/wildfly-shared/pom.xml b/testsuite/deployments/wildfly-shared/pom.xml index bfeab505..60cef634 100644 --- a/testsuite/deployments/wildfly-shared/pom.xml +++ b/testsuite/deployments/wildfly-shared/pom.xml @@ -47,6 +47,13 @@ the productized version --> 12.0.0.Beta1 + + + + + + + @@ -149,8 +156,14 @@ - ts.wildfly.target-distribution.eap + + ts.eap-stream.eap81 + + eap81 org.jboss.eap.plugins eap-maven-plugin @@ -177,6 +190,45 @@ eap-8.0 1.0.1.GA-redhat-00003 + + + + ts.eap-stream.eap80 + + + eap80 + + org.jboss.eap.plugins + eap-maven-plugin + 1.0.0.Final-redhat-00014 + + org.jboss.bom + jboss-eap-ee + 8.0.0.GA-redhat-00009 + + org.jboss.eap:wildfly-ee-galleon-pack:8.0.0.GA-redhat-00011 + org.jboss.eap:wildfly-ee-galleon-pack:8.0.0.GA-redhat-00011 + org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + org.jboss.eap.channels + eap-8.0 + 1.0.1.GA-redhat-00003 + + + + ts.wildfly.target-distribution.eap @@ -260,30 +312,72 @@ + - - ts.wildfly.target-distribution.eapxp + + ts.eapxp-stream.xp6 - + + xp6 + org.jboss.eap.plugins eap-maven-plugin 1.0.0.Final-redhat-00014 - + org.jboss.bom jboss-eap-xp-microprofile 5.0.0.GA-redhat-00009 - + org.jboss.eap.channels eap-8.0 1.0.1.GA-redhat-00003 - + org.jboss.eap.channels eap-xp-5.0 1.0.0.GA-redhat-00006 - + org.jboss.eap.xp:wildfly-galleon-pack:5.0.0.GA-redhat-00005 org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + + + + ts.eapxp-stream.xp5 + + + xp5 + + org.jboss.eap.plugins + eap-maven-plugin + 1.0.0.Final-redhat-00014 + + org.jboss.bom + jboss-eap-xp-microprofile + 5.0.0.GA-redhat-00009 + + org.jboss.eap.channels + eap-8.0 + 1.0.1.GA-redhat-00003 + + org.jboss.eap.channels + eap-xp-5.0 + 1.0.0.GA-redhat-00006 + + org.jboss.eap.xp:wildfly-galleon-pack:5.0.0.GA-redhat-00005 + org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + + + + + ts.wildfly.target-distribution.eapxp From e189699a3f6b3cd4d604b3bf9853e5a2f54375e8 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Thu, 16 Jan 2025 12:36:11 +0100 Subject: [PATCH 06/11] [issue-222] (TEMP) - Fix XP 6 schema file --- .../values/schema/xp6/helm-xp6-release.json | 769 ++++++++---------- 1 file changed, 329 insertions(+), 440 deletions(-) diff --git a/provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6/helm-xp6-release.json b/provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6/helm-xp6-release.json index 6ff17e16..5e5c3dd7 100644 --- a/provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6/helm-xp6-release.json +++ b/provisioners/src/main/resources/org/jboss/intersmash/provision/helm/values/schema/xp6/helm-xp6-release.json @@ -3,24 +3,15 @@ "type": "object", "properties": { "image": { - "type": [ - "object", - "null" - ], + "type": ["object", "null"], "properties": { "name": { "description": "Name of the application image. If not specified, the name of the Helm release will be used.", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "tag": { "description": "Tag of the application image", - "type": [ - "string", - "null" - ], + "type": ["string", "null"], "default": "latest" } } @@ -37,10 +28,7 @@ "mode": { "description": "Which mode to use to build the application", "type": "string", - "enum": [ - "s2i", - "bootable-jar" - ], + "enum": ["s2i", "bootable-jar"], "default": "bootable-jar" }, "uri": { @@ -49,31 +37,19 @@ }, "ref": { "description": "Git reference", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "contextDir": { "description": "Context directory within your Git repo to use as the root for the build", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "sourceSecret": { "description": "Name of the Secret to use when cloning Git source project", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "pullSecret": { "description": "Name of the Pull Secret", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "output": { "description": "Configuration for the built application image", @@ -82,18 +58,12 @@ "kind": { "description": "Determines where the application images will be pushed", "type": "string", - "enum": [ - "ImageStreamTag", - "DockerImage" - ], + "enum": ["ImageStreamTag", "DockerImage"], "default": "ImageStreamTag" }, "pushSecret": { "description": "Name of the Push Secret", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] } } }, @@ -239,10 +209,7 @@ }, "triggers": { "description": "Webhooks to trigger building the application image", - "type": [ - "object", - "null" - ], + "type": ["object", "null"], "properties": { "githubSecret": { "description": "Name of the secret containing the WebHookSecretKey for the GitHub Webhook", @@ -256,27 +223,18 @@ }, "s2i": { "description": "Configuration specific to S2I Build (applicable only if build mode is set to s2i)", - "type": [ - "object", - "null" - ], + "type": ["object", "null"], "properties": { "kind": { "description": "Determines the type of images for S2I Builder and Runtime images", "type": "string", - "enum": [ - "ImageStreamTag", - "DockerImage", - "ImageStreamImage" - ], + "enum": ["ImageStreamTag", "DockerImage", "ImageStreamImage"], "default": "DockerImage" }, "jdk": { "description": "JDK Version of the EAP S2I images", "type": "string", - "enum": [ - "17" - ], + "enum": ["17"], "default": "17" }, "jdk17": { @@ -300,64 +258,35 @@ }, "builderKind": { "description": "Determines the type of images for S2I Builder image. If omitted, the value of the kind properties is used", - "type": [ - "string", - "null" - ], - "enum": [ - "ImageStreamTag", - "DockerImage", - "ImageStreamImage" - ] + "type": ["string", "null"], + "enum": ["ImageStreamTag", "DockerImage", "ImageStreamImage"] }, "runtimeKind": { "description": "Determines the type of images for S2I Runtime image. If omitted, the value of the kind properties is used", - "type": [ - "string", - "null" - ], - "enum": [ - "ImageStreamTag", - "DockerImage", - "ImageStreamImage" - ] + "type": ["string", "null"], + "enum": ["ImageStreamTag", "DockerImage", "ImageStreamImage"] }, "featurePacks": { "description": "List of Galleon feature-packs identified by Maven coordinates (`::`). Deprecated, the recommended way to provision EAP is to use the eap-maven-plugin in the application pom.xml", - "type": [ - "string", - "array", - "null" - ], + "type": ["string", "array", "null"], "items": { "type": "string" } }, "galleonDir": { "description": "Directory relative to the root directory for the build that contains custom content for Galleon.", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] }, "galleonLayers": { "description": "List of Galleon Layers to provision. If galleonLayers are configured, the featurePacks that provides the layers must be specified (including EAP feature pack). Deprecated, the recommended way to provision EAP is to use the eap-maven-plugin in the application pom.xml", - "type": [ - "string", - "array", - "null" - ], + "type": ["string", "array", "null"], "items": { "type": "string" } }, "channels": { "description": "List of Channels identified by Maven coordinates (`:`). If featurePacks are configured without any versioning, the channels that provides the latest feature packs can be specified. Deprecated, the recommended way to provision EAP is to use the eap-maven-plugin in the application pom.xml", - "type": [ - "string", - "array", - "null" - ], + "type": ["string", "array", "null"], "items": { "type": "string" } @@ -366,385 +295,345 @@ }, "bootableJar": { "description": "Configuration specific to Bootable Jar Build (applicable only if build mode is set to bootable-jar)", - "type": [ - "object", - "null" - ], + "type": ["object", "null"], "properties": { "builderImage": { "description": "The JDK Builder image", - "type": [ - "string", - "null" - ] + "type": ["string", "null"] } } } } - } - }, - "deploy": { - "description": "Configuration to deploy the application", - "type": "object", - "properties": { - "annotations": { - "type": "object", - "description": "Annotations that are applied to the deployed application and its pods", - "additionalProperties": { - "type": "string" - } - }, - "enabled": { - "description": "Enable/Disable deploying the application image", - "type": "boolean", - "default": true - }, - "replicas": { - "type": "integer", - "description": "Number of pod replicas to deploy" - }, - "labels": { - "type": "object", - "description": "Labels that are applied to the deployed application and its pods", - "additionalProperties": { - "type": "string" - } - }, - "resources": { - "description": "Freeform resources requirements to deploy the application image" - }, - "env": { - "description": "List of environment variables to set in the container. Cannot be updated.", - "items": { - "description": "EnvVar represents an environment variable present in a Container.", - "properties": { - "name": { - "description": "Name of the environment variable. Must be a C_IDENTIFIER.", - "type": "string" - }, - "value": { - "description": "Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\".", - "type": [ - "string", - "null" - ] - }, - "valueFrom": { - "description": "EnvVarSource represents a source for the value of an EnvVar.", - "properties": { - "configMapKeyRef": { - "description": "Selects a key from a ConfigMap.", - "properties": { - "key": { - "description": "The key to select.", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": [ - "string", - "null" - ] + }, + "deploy": { + "description": "Configuration to deploy the application", + "type": "object", + "properties": { + "annotations": { + "type": "object", + "description": "Annotations that are applied to the deployed application and its pods", + "additionalProperties": { + "type": "string" + } + }, + "enabled": { + "description": "Enable/Disable deploying the application image", + "type": "boolean", + "default": true + }, + "replicas": { + "type": "integer", + "description": "Number of pod replicas to deploy" + }, + "labels": { + "type": "object", + "description": "Labels that are applied to the deployed application and its pods", + "additionalProperties": { + "type":"string" + } + }, + "resources": { + "description": "Freeform resources requirements to deploy the application image" + }, + "env": { + "description": "List of environment variables to set in the container. Cannot be updated.", + "items": { + "description": "EnvVar represents an environment variable present in a Container.", + "properties": { + "name": { + "description": "Name of the environment variable. Must be a C_IDENTIFIER.", + "type": "string" + }, + "value": { + "description": "Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\".", + "type": [ + "string", + "null" + ] + }, + "valueFrom": { + "description": "EnvVarSource represents a source for the value of an EnvVar.", + "properties": { + "configMapKeyRef": { + "description": "Selects a key from a ConfigMap.", + "properties": { + "key": { + "description": "The key to select.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": [ + "string", + "null" + ] + }, + "optional": { + "description": "Specify whether the ConfigMap or its key must be defined", + "type": "boolean" + } }, - "optional": { - "description": "Specify whether the ConfigMap or its key must be defined", - "type": "boolean" - } + "required": [ + "key" + ], + "type": "object" }, - "required": [ - "key" - ], - "type": "object" - }, - "fieldRef": { - "description": "ObjectFieldSelector selects an APIVersioned field of an object.", - "properties": { - "apiVersion": { - "description": "Version of the schema the FieldPath is written in terms of, defaults to \"v1\".", - "type": [ - "string", - "null" - ] + "fieldRef": { + "description": "ObjectFieldSelector selects an APIVersioned field of an object.", + "properties": { + "apiVersion": { + "description": "Version of the schema the FieldPath is written in terms of, defaults to \"v1\".", + "type": [ + "string", + "null" + ] + }, + "fieldPath": { + "description": "Path of the field to select in the specified API version.", + "type": "string" + } }, - "fieldPath": { - "description": "Path of the field to select in the specified API version.", - "type": "string" - } + "required": [ + "fieldPath" + ], + "type": "object" }, - "required": [ - "fieldPath" - ], - "type": "object" - }, - "resourceFieldRef": { - "description": "ResourceFieldSelector represents container resources (cpu, memory) and their output format", - "properties": { - "containerName": { - "description": "Container name: required for volumes, optional for env vars", - "type": [ - "string", - "null" - ] - }, - "divisor": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": "integer" - } - ] + "resourceFieldRef": { + "description": "ResourceFieldSelector represents container resources (cpu, memory) and their output format", + "properties": { + "containerName": { + "description": "Container name: required for volumes, optional for env vars", + "type": [ + "string", + "null" + ] + }, + "divisor": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": "integer" + } + ] + }, + "resource": { + "description": "Required: resource to select", + "type": "string" + } }, - "resource": { - "description": "Required: resource to select", - "type": "string" - } + "required": [ + "resource" + ], + "type": "object" }, - "required": [ - "resource" - ], - "type": "object" - }, - "secretKeyRef": { - "description": "SecretKeySelector selects a key of a Secret.", - "properties": { - "key": { - "description": "The key of the secret to select from. Must be a valid secret key.", - "type": "string" - }, - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": [ - "string", - "null" - ] + "secretKeyRef": { + "description": "SecretKeySelector selects a key of a Secret.", + "properties": { + "key": { + "description": "The key of the secret to select from. Must be a valid secret key.", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": [ + "string", + "null" + ] + }, + "optional": { + "description": "Specify whether the Secret or its key must be defined", + "type": "boolean" + } }, - "optional": { - "description": "Specify whether the Secret or its key must be defined", - "type": "boolean" - } + "required": [ + "key" + ], + "type": "object" + } + }, + "type": "object" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "type": [ + "array", + "null" + ] + }, + "envFrom": { + "description": "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.", + "items": { + "description": "EnvFromSource represents the source of a set of ConfigMaps", + "properties": { + "configMapRef": { + "description": "ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.\n\nThe contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.", + "properties": { + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": [ + "string", + "null" + ] }, - "required": [ - "key" - ], - "type": "object" - } + "optional": { + "description": "Specify whether the ConfigMap must be defined", + "type": "boolean" + } + }, + "type": "object" }, - "type": "object" - } + "prefix": { + "description": "An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.", + "type": [ + "string", + "null" + ] + }, + "secretRef": { + "description": "SecretEnvSource selects a Secret to populate the environment variables with.\n\nThe contents of the target Secret's Data field will represent the key-value pairs as environment variables.", + "properties": { + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": [ + "string", + "null" + ] + }, + "optional": { + "description": "Specify whether the Secret must be defined", + "type": "boolean" + } + }, + "type": "object" + } + }, + "type": "object" }, - "required": [ - "name" - ], - "type": "object" + "type": [ + "array", + "null" + ] }, - "type": [ - "array", - "null" - ] - }, - "envFrom": { - "description": "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.", - "items": { - "description": "EnvFromSource represents the source of a set of ConfigMaps", + "route": { + "description": "Route configuration", + "type": "object", "properties": { - "configMapRef": { - "description": "ConfigMapEnvSource selects a ConfigMap to populate the environment variables with.\n\nThe contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.", - "properties": { - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": [ - "string", - "null" - ] - }, - "optional": { - "description": "Specify whether the ConfigMap must be defined", - "type": "boolean" - } - }, - "type": "object" + "enabled": { + "description": "Enable/Disable creating a Route for the application", + "default": true, + "type": "boolean" }, - "prefix": { - "description": "An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.", - "type": [ - "string", - "null" - ] + "host": { + "description": "alias/DNS that points to the service. If not specified a route name will typically be automatically chosen", + "type": "string" }, - "secretRef": { - "description": "SecretEnvSource selects a Secret to populate the environment variables with.\n\nThe contents of the target Secret's Data field will represent the key-value pairs as environment variables.", + "tls": { + "description": "TLS Configuration for the Route", + "type": "object", "properties": { - "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "type": [ - "string", - "null" - ] - }, - "optional": { - "description": "Specify whether the Secret must be defined", + "enabled" : { + "description": "Determines if the Route should be TLS-encrypted. If deploy.tls.enabled is true, the route will use the secure service to acess to the deployment", + "default": true, "type": "boolean" + }, + "termination": { + "description": "Determines the type of TLS termination to use", + "type": "string", + "enum": ["edge", "reencrypt", "passthrough"], + "default": "edge" + }, + "insecureEdgeTerminationPolicy": { + "description": "Determines if insecure traffic should be redirected", + "type": "string", + "enum": ["Allow", "Disable", "Redirect"], + "default": "Redirect" } - }, - "type": "object" + } } - }, - "type": "object" + } }, - "type": [ - "array", - "null" - ] - }, - "route": { - "description": "Route configuration", - "type": "object", - "properties": { - "enabled": { - "description": "Enable/Disable creating a Route for the application", - "default": true, - "type": "boolean" - }, - "host": { - "description": "alias/DNS that points to the service. If not specified a route name will typically be automatically chosen", - "type": "string" - }, - "tls": { - "description": "TLS Configuration for the Route", - "type": "object", + "tls": { + "description": "TLS Configuration", + "type": "object", + "properties": { + "enabled": { + "description": "Enable the creation of a secure service to access the application.", + "default": false, + "type": "boolean" + } + } + }, + "livenessProbe": { + "description": "Freeform livenessProbe configuration" + }, + "readinessProbe": { + "description": "Freeform readinessProbe configuration" + }, + "startupProbe": { + "description": "Freeform startupProbe configuration" + }, + "volumeMounts": { + "description": "Freeform array of volumeMounts", + "type": ["array", "null"], + "items": { + "description": "VolumeMount describes a mounting of a Volume within a container.", + "required": ["name", "mountPath"], "properties": { - "enabled": { - "description": "Determines if the Route should be TLS-encrypted. If deploy.tls.enabled is true, the route will use the secure service to acess to the deployment", - "default": true, - "type": "boolean" + "mountPath": { + "description": "Path within the container at which the volume should be mounted. Must not contain ':'.", + "type": "string" }, - "termination": { - "description": "Determines the type of TLS termination to use", - "type": "string", - "enum": [ - "edge", - "reencrypt", - "passthrough" - ], - "default": "edge" + "mountPropagation": { + "description": "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationHostToContainer is used. This field is alpha in 1.8 and can be reworked or removed in a future release.", + "type": ["string", "null"] }, - "insecureEdgeTerminationPolicy": { - "description": "Determines if insecure traffic should be redirected", - "type": "string", - "enum": [ - "Allow", - "Disable", - "Redirect" - ], - "default": "Redirect" + "name": { + "description": "This must match the Name of a Volume.", + "type": "string" + }, + "readOnly": { + "description": "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false.", + "type": "boolean" + }, + "subPath": { + "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).", + "type": ["string","null"] } } } - } - }, - "tls": { - "description": "TLS Configuration", - "type": "object", - "properties": { - "enabled": { - "description": "Enable the creation of a secure service to access the application.", - "default": false, - "type": "boolean" - } - } - }, - "livenessProbe": { - "description": "Freeform livenessProbe configuration" - }, - "readinessProbe": { - "description": "Freeform readinessProbe configuration" - }, - "startupProbe": { - "description": "Freeform startupProbe configuration" - }, - "volumeMounts": { - "description": "Freeform array of volumeMounts", - "type": [ - "array", - "null" - ], - "items": { - "description": "VolumeMount describes a mounting of a Volume within a container.", - "required": [ - "name", - "mountPath" - ], - "properties": { - "mountPath": { - "description": "Path within the container at which the volume should be mounted. Must not contain ':'.", - "type": "string" - }, - "mountPropagation": { - "description": "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationHostToContainer is used. This field is alpha in 1.8 and can be reworked or removed in a future release.", - "type": [ - "string", - "null" - ] - }, - "name": { - "description": "This must match the Name of a Volume.", - "type": "string" - }, - "readOnly": { - "description": "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false.", - "type": "boolean" - }, - "subPath": { - "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).", - "type": [ - "string", - "null" - ] - } - } - } - }, - "volumes": { - "description": "Freeform array of volumes", - "type": [ - "array", - "null" - ] - }, - "initContainers": { - "description": "Freeform array of initContainers", - "type": [ - "array", - "null" - ] - }, - "extraContainers": { - "description": "Freeform array of extra containers", - "type": [ - "array", - "null" - ] - }, - "imagePullSecrets:": { - "description": "ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling the application image", - "type": [ - "array", - "null" - ], - "items": { - "description": "Reference to a secret in the same namespace.", - "required": [ - "name" - ], - "properties": { - "name": { - "description": "Name of the referenced secret", - "type": "string" + }, + "volumes": { + "description": "Freeform array of volumes", + "type": [ "array", "null"] + }, + "initContainers": { + "description": "Freeform array of initContainers", + "type": [ "array", "null"] + }, + "extraContainers": { + "description": "Freeform array of extra containers", + "type": [ "array", "null"] + }, + "imagePullSecrets:": { + "description": "ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling the application image", + "type": [ "array", "null"], + "items": { + "description": "Reference to a secret in the same namespace.", + "required": ["name"], + "properties": { + "name": { + "description": "Name of the referenced secret", + "type": "string" + } } } } From 724d46aee11d012d68749649dcf034be5b40a7f5 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Thu, 16 Jan 2025 13:34:26 +0100 Subject: [PATCH 07/11] [issue-222] - Add EAP XP 6 and EAP 8.1 cases to Helm Charts integration tests --- ...tingValuesOpenShiftExampleApplication.java | 41 ++++++++++++++++--- ...yHelmChartOpenShiftExampleApplication.java | 17 +++++++- .../openshift/eap81-helm-values.yaml | 19 +++++++++ .../provision/openshift/xp5-helm-values.yaml | 19 +++++++++ .../provision/openshift/xp6-helm-values.yaml | 19 +++++++++ 5 files changed, 109 insertions(+), 6 deletions(-) create mode 100644 testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/eap81-helm-values.yaml create mode 100644 testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp5-helm-values.yaml create mode 100644 testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp6-helm-values.yaml diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java index 1a4f7cee..b71822e4 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java @@ -25,11 +25,17 @@ import org.jboss.intersmash.application.openshift.helm.HelmChartRelease; import org.jboss.intersmash.application.openshift.helm.WildflyHelmChartOpenShiftApplication; import org.jboss.intersmash.model.helm.charts.values.eap8.HelmEap8Release; +import org.jboss.intersmash.model.helm.charts.values.eap81.HelmEap81Release; import org.jboss.intersmash.model.helm.charts.values.wildfly.HelmWildflyRelease; +import org.jboss.intersmash.model.helm.charts.values.xp5.HelmXp5Release; +import org.jboss.intersmash.model.helm.charts.values.xp6.HelmXp6Release; import org.jboss.intersmash.provision.helm.HelmChartReleaseAdapter; import org.jboss.intersmash.provision.helm.wildfly.WildFlyHelmChartReleaseAdapter; import org.jboss.intersmash.provision.helm.wildfly.WildflyHelmChartRelease; import org.jboss.intersmash.provision.helm.wildfly.eap8.Eap8HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.eap81.Eap81HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.xp5.EapXp5HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.xp6.EapXp6HelmChartReleaseAdapter; import org.jboss.intersmash.test.deployments.TestDeploymentProperties; import org.jboss.intersmash.test.deployments.WildflyDeploymentApplicationConfiguration; import org.jboss.intersmash.testsuite.IntersmashTestsuiteProperties; @@ -66,11 +72,36 @@ private HelmChartRelease loadRelease() { .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); } else if (IntersmashTestsuiteProperties.isProductizedTestExecutionProfileEnabled()) { - HelmEap8Release helmRelease = HelmChartReleaseAdapter. fromValuesFile( - this.getClass().getResource("eap8-helm-values.yaml"), HelmEap8Release.class); - wildflyHelmChartRelease = new Eap8HelmChartReleaseAdapter(helmRelease) - .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) - .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); + // EAP 8.0 + if (TestDeploymentProperties.isEap80DeploymentsBuildStreamEnabled()) { + HelmEap8Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + this.getClass().getResource("eap8-helm-values.yaml"), HelmEap8Release.class); + wildflyHelmChartRelease = new Eap8HelmChartReleaseAdapter(helmRelease) + .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) + .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); + } // EAP 8.1 + else if (TestDeploymentProperties.isEap81DeploymentsBuildStreamEnabled()) { + HelmEap81Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + this.getClass().getResource("eap81-helm-values.yaml"), HelmEap81Release.class); + wildflyHelmChartRelease = new Eap81HelmChartReleaseAdapter(helmRelease) + .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) + .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); + } // EAP XP 5 + else if (TestDeploymentProperties.isEapXp5DeploymentsBuildStreamEnabled()) { + HelmXp5Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + this.getClass().getResource("xp5-helm-values.yaml"), HelmXp5Release.class); + wildflyHelmChartRelease = new EapXp5HelmChartReleaseAdapter(helmRelease) + .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) + .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); + } // EAP XP 6 + else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { + HelmXp6Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + this.getClass().getResource("xp6-helm-values.yaml"), HelmXp6Release.class); + wildflyHelmChartRelease = new EapXp6HelmChartReleaseAdapter(helmRelease) + .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) + .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); + } else + throw new IllegalStateException("Not a valid WildFly deployments stream!"); } else throw new IllegalStateException("Not a valid testing profile!"); // let's compute some additional maven args for our s2i build to happen on a Pod diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java index dfada063..5286933a 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java @@ -25,10 +25,16 @@ import org.jboss.intersmash.application.openshift.helm.HelmChartRelease; import org.jboss.intersmash.application.openshift.helm.WildflyHelmChartOpenShiftApplication; import org.jboss.intersmash.model.helm.charts.values.eap8.HelmEap8Release; +import org.jboss.intersmash.model.helm.charts.values.eap81.HelmEap81Release; import org.jboss.intersmash.model.helm.charts.values.wildfly.HelmWildflyRelease; +import org.jboss.intersmash.model.helm.charts.values.xp5.HelmXp5Release; +import org.jboss.intersmash.model.helm.charts.values.xp6.HelmXp6Release; import org.jboss.intersmash.provision.helm.wildfly.WildFlyHelmChartReleaseAdapter; import org.jboss.intersmash.provision.helm.wildfly.WildflyHelmChartRelease; import org.jboss.intersmash.provision.helm.wildfly.eap8.Eap8HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.eap81.Eap81HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.xp5.EapXp5HelmChartReleaseAdapter; +import org.jboss.intersmash.provision.helm.wildfly.xp6.EapXp6HelmChartReleaseAdapter; import org.jboss.intersmash.test.deployments.TestDeploymentProperties; import org.jboss.intersmash.test.deployments.WildflyDeploymentApplicationConfiguration; import org.jboss.intersmash.testsuite.IntersmashTestsuiteProperties; @@ -45,7 +51,16 @@ public WildflyHelmChartOpenShiftExampleApplication() { if (IntersmashTestsuiteProperties.isCommunityTestExecutionProfileEnabled()) { release = loadRelease(new WildFlyHelmChartReleaseAdapter(new HelmWildflyRelease())); } else if (IntersmashTestsuiteProperties.isProductizedTestExecutionProfileEnabled()) { - release = loadRelease(new Eap8HelmChartReleaseAdapter(new HelmEap8Release())); + if (TestDeploymentProperties.isEap80DeploymentsBuildStreamEnabled()) { + release = loadRelease(new Eap8HelmChartReleaseAdapter(new HelmEap8Release())); + } else if (TestDeploymentProperties.isEap81DeploymentsBuildStreamEnabled()) { + release = loadRelease(new Eap81HelmChartReleaseAdapter(new HelmEap81Release())); + } else if (TestDeploymentProperties.isEapXp5DeploymentsBuildStreamEnabled()) { + release = loadRelease(new EapXp5HelmChartReleaseAdapter(new HelmXp5Release())); + } else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { + release = loadRelease(new EapXp6HelmChartReleaseAdapter(new HelmXp6Release())); + } else + throw new IllegalStateException("Not a valid WildFly deployments stream!"); } else throw new IllegalStateException("Not a valid testing profile!"); } diff --git a/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/eap81-helm-values.yaml b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/eap81-helm-values.yaml new file mode 100644 index 00000000..89d65233 --- /dev/null +++ b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/eap81-helm-values.yaml @@ -0,0 +1,19 @@ +build: + enabled: true + mode: "s2i" + # uri and ref will be specified via Helm --set arguments + contextDir: "testsuite/deployments/openshift-jakarta-sample-standalone" + s2i: + kind: "DockerImage" + buildApplicationImage: true + # builderImage and runtimeImage will be specified via the WildFly Helm Chart application descriptor APIs +deploy: + enabled: true + replicas: 1 + env: [] + envFrom: [] + volumeMounts: [] + volumes: [] + initContainers: [] + extraContainers: [] + 'imagePullSecrets:': [] diff --git a/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp5-helm-values.yaml b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp5-helm-values.yaml new file mode 100644 index 00000000..89d65233 --- /dev/null +++ b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp5-helm-values.yaml @@ -0,0 +1,19 @@ +build: + enabled: true + mode: "s2i" + # uri and ref will be specified via Helm --set arguments + contextDir: "testsuite/deployments/openshift-jakarta-sample-standalone" + s2i: + kind: "DockerImage" + buildApplicationImage: true + # builderImage and runtimeImage will be specified via the WildFly Helm Chart application descriptor APIs +deploy: + enabled: true + replicas: 1 + env: [] + envFrom: [] + volumeMounts: [] + volumes: [] + initContainers: [] + extraContainers: [] + 'imagePullSecrets:': [] diff --git a/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp6-helm-values.yaml b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp6-helm-values.yaml new file mode 100644 index 00000000..89d65233 --- /dev/null +++ b/testsuite/integration-tests/src/test/resources/org/jboss/intersmash/testsuite/provision/openshift/xp6-helm-values.yaml @@ -0,0 +1,19 @@ +build: + enabled: true + mode: "s2i" + # uri and ref will be specified via Helm --set arguments + contextDir: "testsuite/deployments/openshift-jakarta-sample-standalone" + s2i: + kind: "DockerImage" + buildApplicationImage: true + # builderImage and runtimeImage will be specified via the WildFly Helm Chart application descriptor APIs +deploy: + enabled: true + replicas: 1 + env: [] + envFrom: [] + volumeMounts: [] + volumes: [] + initContainers: [] + extraContainers: [] + 'imagePullSecrets:': [] From 0f345e692557dacf1061e069de002191f11d6d7e Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Thu, 16 Jan 2025 13:42:03 +0100 Subject: [PATCH 08/11] [issue-222] - Update documentation about testsuite profiles --- README.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 46a9649a..d8fd96c5 100644 --- a/README.md +++ b/README.md @@ -134,12 +134,20 @@ artifacts, which is done by enabling the `ts.wildfly.target-distribution.eap` or mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eap ``` -Regarding the EAP XP version, Intersmash supports provisioning both XP 5 and XP 6, and the deployments used by the -Intersmash testsuite can be built by using related artifacts and feature packs by enabling either the `ts.wildfly.eapxp.stream.xp6`, -or the `ts.wildfly.eapxp.stream.xp5` profile, e.g.: +Regarding EAP _minor_ version, Intersmash supports provisioning both EAP 8.0 and EAP 8.1, and the deployments used by the +Intersmash testsuite can be built on related artifacts and feature packs by enabling either the `ts.eap-stream.eap80`, +or the `ts.eap-stream.eap81` profile, e.g.: ```shell -mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eapxp -Pts.wildfly.eapxp.stream.xp5 +mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eap -Pts.eap-stream.eap80 +``` + +Regarding EAP XP _major_ version, Intersmash supports provisioning both XP 5 and XP 6, and the deployments used by the +Intersmash testsuite can be built on related artifacts and feature packs by enabling either the `ts.eapxp-stream.xp5`, +or the `ts.eapxp-stream.xp6` profile, e.g.: + +```shell +mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eapxp -Pts.eapxp-stream.xp5 ``` * Run Kubernetes integration tests: From df1b7f836128d87ba361d280b40401b452e91348 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Fri, 17 Jan 2025 11:00:07 +0100 Subject: [PATCH 09/11] [issue-122] - Update the Botable JAR MAven plugin version to 12.0.0.Final --- examples/ws-bootable-jar-example/pom.xml | 2 +- examples/wstrust/pom.xml | 2 +- pom.xml | 2 +- testsuite/deployments/pom.xml | 4 +++- testsuite/deployments/wildfly-shared/pom.xml | 2 +- 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/examples/ws-bootable-jar-example/pom.xml b/examples/ws-bootable-jar-example/pom.xml index 7b19755d..d7a16d32 100644 --- a/examples/ws-bootable-jar-example/pom.xml +++ b/examples/ws-bootable-jar-example/pom.xml @@ -36,7 +36,7 @@ Default version for the Bootable JAR Plugin is set here and can be overridden, e.g. also for pulling the productized version --> - 12.0.0.Beta1 + 12.0.0.Final 35.0.0.Final diff --git a/examples/wstrust/pom.xml b/examples/wstrust/pom.xml index 5c0ef82c..f2da8d03 100644 --- a/examples/wstrust/pom.xml +++ b/examples/wstrust/pom.xml @@ -37,7 +37,7 @@ Default version for the Bootable JAR Plugin is set here and can be overridden, e.g. also for pulling the productized version --> - 12.0.0.Beta1 + 12.0.0.Final diff --git a/pom.xml b/pom.xml index cf4be753..1939c21b 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ pom Intersmash Parent: Aggregator - Intersmash - Run your cloud-native tests with Java! + Intersmash - Cloud-native tests with Java! http://github.com/Intersmash/intersmash diff --git a/testsuite/deployments/pom.xml b/testsuite/deployments/pom.xml index c71583d8..c8a55a87 100644 --- a/testsuite/deployments/pom.xml +++ b/testsuite/deployments/pom.xml @@ -27,8 +27,10 @@ 3.0.0-M1 3.3.2 - + + + community diff --git a/testsuite/deployments/wildfly-shared/pom.xml b/testsuite/deployments/wildfly-shared/pom.xml index 60cef634..a3953a1f 100644 --- a/testsuite/deployments/wildfly-shared/pom.xml +++ b/testsuite/deployments/wildfly-shared/pom.xml @@ -46,7 +46,7 @@ Default version for the Bootable JAR Plugin is set here and can be overridden, e.g. also for pulling the productized version --> - 12.0.0.Beta1 + 12.0.0.Final From fa83b5990dc421043de586e8b3181a831ed4226e Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Fri, 17 Jan 2025 12:20:43 +0100 Subject: [PATCH 10/11] [issue-122] - Create separate configuration files and profiles to enable profiles that test against a given WildFly/EAP(8.0,8.1)/EAP XP(5,6) version and to build deployments with the expected bits --- README.md | 6 +- global-test.properties | 24 +++- pom.xml | 2 + .../pom.xml | 111 ++++++++++++++++-- testsuite/deployments/wildfly-shared/pom.xml | 10 +- .../eap80-global-test.properties | 64 ++++++++++ .../eap81-global-test.properties | 64 ++++++++++ .../eapxp5-global-test.properties | 63 ++++++++++ .../eapxp6-global-test.properties | 63 ++++++++++ .../openshift-global-test.properties | 60 ++++++++++ testsuite/integration-tests/pom.xml | 75 ++++++++++++ ...tingValuesOpenShiftExampleApplication.java | 6 +- ...yHelmChartOpenShiftExampleApplication.java | 4 +- 13 files changed, 527 insertions(+), 25 deletions(-) create mode 100644 testsuite/integration-tests/eap80-global-test.properties create mode 100644 testsuite/integration-tests/eap81-global-test.properties create mode 100644 testsuite/integration-tests/eapxp5-global-test.properties create mode 100644 testsuite/integration-tests/eapxp6-global-test.properties create mode 100644 testsuite/integration-tests/openshift-global-test.properties diff --git a/README.md b/README.md index d8fd96c5..36ba75cd 100644 --- a/README.md +++ b/README.md @@ -135,11 +135,11 @@ mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribu ``` Regarding EAP _minor_ version, Intersmash supports provisioning both EAP 8.0 and EAP 8.1, and the deployments used by the -Intersmash testsuite can be built on related artifacts and feature packs by enabling either the `ts.eap-stream.eap80`, -or the `ts.eap-stream.eap81` profile, e.g.: +Intersmash testsuite can be built on related artifacts and feature packs by enabling either the `ts.eap-stream.80`, +or the `ts.eap-stream.81` profile, e.g.: ```shell -mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eap -Pts.eap-stream.eap80 +mvn test -pl testsuite/ -Pts.execution-profile.prod -Pts.wildfly.target-distribution.eap -Pts.eap-stream.80 ``` Regarding EAP XP _major_ version, Intersmash supports provisioning both XP 5 and XP 6, and the deployments used by the diff --git a/global-test.properties b/global-test.properties index 557ac514..c98454e5 100644 --- a/global-test.properties +++ b/global-test.properties @@ -9,9 +9,6 @@ xtf.record.always=false # Avoid starting multiple builds at once as it might cause that builds starts to hang xtf.junit.prebuilder.synchronized=true -# Bootable JAR OpenJDK base image -intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 - # DB intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 @@ -25,16 +22,35 @@ intersmash.wildfly.operators.channel=alpha intersmash.wildfly.helm.charts.repo=https://github.com/wildfly/wildfly-charts.git intersmash.wildfly.helm.charts.branch=wildfly-2.4.0 intersmash.wildfly.helm.charts.name=wildfly +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ intersmash.activemq.operators.catalog_source=intersmash-activemq-operator-index intersmash.activemq.operators.index_image=quay.io/jbossqe-eap/intersmash-activemq-operator-index:1.2.9 intersmash.activemq.operators.package_manifest=activemq-artemis-operator intersmash.activemq.operators.channel=upstream -intersmash.keycloak.image=quay.io/keycloak/keycloak:26.0.7 +intersmash.keycloak.image=quay.io/keycloak/keycloak:26.0 intersmash.keycloak.operators.catalog_source=community-operators intersmash.keycloak.operators.channel=fast +intersmash.keycloak.operators.package_manifest=keycloak-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image= +intersmash.infinispan.operators.catalog_source=community-operators +intersmash.infinispan.operators.package_manifest=infinispan +intersmash.infinispan.operators.channel= +intersmash.kafka.operators.catalog_source=community-operators +intersmash.kafka.operators.package_manifest=strimzi-kafka-operator intersmash.kafka.operators.channel=stable intersmash.hyperfoil.operators.catalog_source=community-operators diff --git a/pom.xml b/pom.xml index 1939c21b..0e64e379 100644 --- a/pom.xml +++ b/pom.xml @@ -129,6 +129,8 @@ 3.3.9 1.7.0 3.24.2 + + ${client.jvm.jpms.args} diff --git a/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml b/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml index 48e5d193..74bc6acb 100644 --- a/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml +++ b/testsuite/deployments/openshift-jakarta-sample-standalone/pom.xml @@ -45,6 +45,13 @@ org.wildfly:wildfly-galleon-pack:${version.wildfly-server} org.wildfly:wildfly-ee-galleon-pack:${version.wildfly-server} org.wildfly.cloud:wildfly-cloud-galleon-pack:6.0.0.Final + + + + + + + 3.3.2 2.35.0 @@ -202,8 +209,14 @@ - ts.wildfly.target-distribution.eap + + ts.eap-stream.81 + + eap81 org.jboss.eap.plugins eap-maven-plugin @@ -230,6 +243,45 @@ eap-8.0 1.0.1.GA-redhat-00003 + + + + ts.eap-stream.80 + + + eap80 + + org.jboss.eap.plugins + eap-maven-plugin + 1.0.0.Final-redhat-00014 + + org.jboss.bom + jboss-eap-ee + 8.0.0.GA-redhat-00009 + + org.jboss.eap:wildfly-ee-galleon-pack:8.0.0.GA-redhat-00011 + org.jboss.eap:wildfly-ee-galleon-pack:8.0.0.GA-redhat-00011 + org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + org.jboss.eap.channels + eap-8.0 + 1.0.1.GA-redhat-00003 + + + + ts.wildfly.target-distribution.eap @@ -275,31 +327,72 @@ + - - ts.wildfly.target-distribution.eapxp + + ts.eapxp-stream.xp6 - + + eapxp6 + org.jboss.eap.plugins eap-maven-plugin 1.0.0.Final-redhat-00014 - + org.jboss.bom jboss-eap-xp-microprofile 5.0.0.GA-redhat-00009 - + org.jboss.eap.channels eap-8.0 1.0.1.GA-redhat-00003 - + org.jboss.eap.channels eap-xp-5.0 1.0.0.GA-redhat-00006 - + org.jboss.eap.xp:wildfly-galleon-pack:5.0.0.GA-redhat-00005 - org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + + + + ts.eapxp-stream.xp5 + + + eapxp5 + + org.jboss.eap.plugins + eap-maven-plugin + 1.0.0.Final-redhat-00014 + + org.jboss.bom + jboss-eap-xp-microprofile + 5.0.0.GA-redhat-00009 + + org.jboss.eap.channels + eap-8.0 + 1.0.1.GA-redhat-00003 + + org.jboss.eap.channels + eap-xp-5.0 + 1.0.0.GA-redhat-00006 + + org.jboss.eap.xp:wildfly-galleon-pack:5.0.0.GA-redhat-00005 + org.jboss.eap.cloud:eap-cloud-galleon-pack:1.0.0.Final-redhat-00008 + + + + + + ts.wildfly.target-distribution.eapxp diff --git a/testsuite/deployments/wildfly-shared/pom.xml b/testsuite/deployments/wildfly-shared/pom.xml index a3953a1f..b2c0994b 100644 --- a/testsuite/deployments/wildfly-shared/pom.xml +++ b/testsuite/deployments/wildfly-shared/pom.xml @@ -157,7 +157,7 @@ - ts.eap-stream.eap81 + ts.eap-stream.81 - ts.eap-stream.eap80 + ts.eap-stream.80 ts.eapxp-stream.xp6 @@ -321,7 +321,7 @@ When this profile is active, the following property is set to have it available at runtime, see TestDeploymentProperties --> - xp6 + eapxp6 org.jboss.eap.plugins eap-maven-plugin @@ -352,7 +352,7 @@ When this profile is active, the following property is set to have it available at runtime, see TestDeploymentProperties --> - xp5 + eapxp5 org.jboss.eap.plugins eap-maven-plugin diff --git a/testsuite/integration-tests/eap80-global-test.properties b/testsuite/integration-tests/eap80-global-test.properties new file mode 100644 index 00000000..3a8bf22d --- /dev/null +++ b/testsuite/integration-tests/eap80-global-test.properties @@ -0,0 +1,64 @@ +xtf.waiting.timeout.cleanup=60000 +xtf.waiting.timeout=600000 + +# OpenShift logs +xtf.record.dir=log +xtf.record.before=true +xtf.record.always=false + +# Avoid starting multiple builds at once as it might cause that builds starts to hang +xtf.junit.prebuilder.synchronized=true + +# DB +intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 +intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 + +intersmash.wildfly.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8:1.0.1.GA +intersmash.wildfly.runtime.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8:1.0.1.GA +intersmash.wildfly.operators.catalog_source=redhat-operators +intersmash.wildfly.operators.index_image= +intersmash.wildfly.operators.package_manifest=eap +intersmash.wildfly.operators.channel=stable +intersmash.wildfly.helm.charts.repo=https://github.com/jbossas/eap-charts.git +intersmash.wildfly.helm.charts.branch=eap8-1.1.2 +intersmash.wildfly.helm.charts.name=eap8 +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ + +intersmash.activemq.image=registry.redhat.io/amq7/amq-broker-rhel8:7.12 +intersmash.activemq.init.image=registry.redhat.io/amq7/amq-broker-init-rhel8:7.12 +intersmash.activemq.operators.catalog_source=redhat-operators +intersmash.activemq.operators.index_image= +intersmash.activemq.operators.package_manifest=amq-broker-rhel8 +intersmash.activemq.operators.channel=7.12.x + +intersmash.keycloak.image=registry.redhat.io/rhbk/keycloak-rhel9:26.0 +intersmash.keycloak.operators.index_image= +intersmash.keycloak.operators.catalog_source=redhat-operators +intersmash.keycloak.operators.channel=stable-v26.0 +intersmash.keycloak.operators.package_manifest=rhbk-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image=registry.redhat.io/datagrid/datagrid-8-rhel9:1.5 +intersmash.infinispan.operators.catalog_source=redhat-operators +intersmash.infinispan.operators.package_manifest=datagrid +intersmash.infinispan.operators.channel=stable + +intersmash.kafka.operators.catalog_source=redhat-operators +intersmash.kafka.operators.package_manifest=amq-streams +intersmash.kafka.operators.channel=stable + +intersmash.hyperfoil.operators.catalog_source=community-operators +intersmash.hyperfoil.operators.package_manifest=hyperfoil-bundle + +intersmash.olm.operators.catalog_source=openshift-marketplace +intersmash.olm.operators.namespace=redhat-operators + diff --git a/testsuite/integration-tests/eap81-global-test.properties b/testsuite/integration-tests/eap81-global-test.properties new file mode 100644 index 00000000..be86f033 --- /dev/null +++ b/testsuite/integration-tests/eap81-global-test.properties @@ -0,0 +1,64 @@ +xtf.waiting.timeout.cleanup=60000 +xtf.waiting.timeout=600000 + +# OpenShift logs +xtf.record.dir=log +xtf.record.before=true +xtf.record.always=false + +# Avoid starting multiple builds at once as it might cause that builds starts to hang +xtf.junit.prebuilder.synchronized=true + +# DB +intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 +intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 + +intersmash.wildfly.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8:1.0.1.GA +intersmash.wildfly.runtime.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8:1.0.1.GA +intersmash.wildfly.operators.catalog_source=redhat-operators +intersmash.wildfly.operators.index_image= +intersmash.wildfly.operators.package_manifest=eap +intersmash.wildfly.operators.channel=stable +intersmash.wildfly.helm.charts.repo=https://github.com/jbossas/eap-charts.git +intersmash.wildfly.helm.charts.branch=eap81-dev +intersmash.wildfly.helm.charts.name=eap81 +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ + +intersmash.activemq.image=registry.redhat.io/amq7/amq-broker-rhel8:7.12 +intersmash.activemq.init.image=registry.redhat.io/amq7/amq-broker-init-rhel8:7.12 +intersmash.activemq.operators.catalog_source=redhat-operators +intersmash.activemq.operators.index_image= +intersmash.activemq.operators.package_manifest=amq-broker-rhel8 +intersmash.activemq.operators.channel=7.12.x + +intersmash.keycloak.image=registry.redhat.io/rhbk/keycloak-rhel9:26.0 +intersmash.keycloak.operators.index_image= +intersmash.keycloak.operators.catalog_source=redhat-operators +intersmash.keycloak.operators.channel=stable-v26.0 +intersmash.keycloak.operators.package_manifest=rhbk-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image=registry.redhat.io/datagrid/datagrid-8-rhel9:1.5 +intersmash.infinispan.operators.catalog_source=redhat-operators +intersmash.infinispan.operators.package_manifest=datagrid +intersmash.infinispan.operators.channel=stable + +intersmash.kafka.operators.catalog_source=redhat-operators +intersmash.kafka.operators.package_manifest=amq-streams +intersmash.kafka.operators.channel=stable + +intersmash.hyperfoil.operators.catalog_source=community-operators +intersmash.hyperfoil.operators.package_manifest=hyperfoil-bundle + +intersmash.olm.operators.catalog_source=openshift-marketplace +intersmash.olm.operators.namespace=redhat-operators + diff --git a/testsuite/integration-tests/eapxp5-global-test.properties b/testsuite/integration-tests/eapxp5-global-test.properties new file mode 100644 index 00000000..b41fd646 --- /dev/null +++ b/testsuite/integration-tests/eapxp5-global-test.properties @@ -0,0 +1,63 @@ +xtf.waiting.timeout.cleanup=60000 +xtf.waiting.timeout=600000 + +# OpenShift logs +xtf.record.dir=log +xtf.record.before=true +xtf.record.always=false + +# Avoid starting multiple builds at once as it might cause that builds starts to hang +xtf.junit.prebuilder.synchronized=true + +# DB +intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 +intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 + +intersmash.wildfly.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8:1.0.1.GA +intersmash.wildfly.runtime.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8:1.0.1.GA +intersmash.wildfly.operators.catalog_source=redhat-operators +intersmash.wildfly.operators.index_image= +intersmash.wildfly.operators.package_manifest=eap +intersmash.wildfly.operators.channel=stable +intersmash.wildfly.helm.charts.repo=https://github.com/jbossas/eap-charts.git +intersmash.wildfly.helm.charts.branch=eap-xp5-1.0.0 +intersmash.wildfly.helm.charts.name=eap-xp5 +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ + +intersmash.activemq.image=registry.redhat.io/amq7/amq-broker-rhel8:7.12 +intersmash.activemq.init.image=registry.redhat.io/amq7/amq-broker-init-rhel8:7.12 +intersmash.activemq.operators.catalog_source=redhat-operators +intersmash.activemq.operators.index_image= +intersmash.activemq.operators.package_manifest=amq-broker-rhel8 +intersmash.activemq.operators.channel=7.12.x + +intersmash.keycloak.image=registry.redhat.io/rhbk/keycloak-rhel9:26.0 +intersmash.keycloak.operators.index_image= +intersmash.keycloak.operators.catalog_source=redhat-operators +intersmash.keycloak.operators.channel=stable-v26.0 +intersmash.keycloak.operators.package_manifest=rhbk-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image=registry.redhat.io/datagrid/datagrid-8-rhel9:1.5 +intersmash.infinispan.operators.catalog_source=redhat-operators +intersmash.infinispan.operators.package_manifest=datagrid +intersmash.infinispan.operators.channel=stable + +intersmash.kafka.operators.catalog_source=redhat-operators +intersmash.kafka.operators.package_manifest=amq-streams +intersmash.kafka.operators.channel=stable + +intersmash.hyperfoil.operators.catalog_source=community-operators +intersmash.hyperfoil.operators.package_manifest=hyperfoil-bundle + +intersmash.olm.operators.catalog_source=openshift-marketplace +intersmash.olm.operators.namespace=redhat-operators \ No newline at end of file diff --git a/testsuite/integration-tests/eapxp6-global-test.properties b/testsuite/integration-tests/eapxp6-global-test.properties new file mode 100644 index 00000000..69cf9eb9 --- /dev/null +++ b/testsuite/integration-tests/eapxp6-global-test.properties @@ -0,0 +1,63 @@ +xtf.waiting.timeout.cleanup=60000 +xtf.waiting.timeout=600000 + +# OpenShift logs +xtf.record.dir=log +xtf.record.before=true +xtf.record.always=false + +# Avoid starting multiple builds at once as it might cause that builds starts to hang +xtf.junit.prebuilder.synchronized=true + +# DB +intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 +intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 + +intersmash.wildfly.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8:1.0.1.GA +intersmash.wildfly.runtime.image=registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8:1.0.1.GA +intersmash.wildfly.operators.catalog_source=redhat-operators +intersmash.wildfly.operators.index_image= +intersmash.wildfly.operators.package_manifest=eap +intersmash.wildfly.operators.channel=stable +intersmash.wildfly.helm.charts.repo=https://github.com/jbossas/eap-charts.git +intersmash.wildfly.helm.charts.branch=eap-xp5-dev +intersmash.wildfly.helm.charts.name=eap-xp6 +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ + +intersmash.activemq.image=registry.redhat.io/amq7/amq-broker-rhel8:7.12 +intersmash.activemq.init.image=registry.redhat.io/amq7/amq-broker-init-rhel8:7.12 +intersmash.activemq.operators.catalog_source=redhat-operators +intersmash.activemq.operators.index_image= +intersmash.activemq.operators.package_manifest=amq-broker-rhel8 +intersmash.activemq.operators.channel=7.12.x + +intersmash.keycloak.image=registry.redhat.io/rhbk/keycloak-rhel9:26.0 +intersmash.keycloak.operators.index_image= +intersmash.keycloak.operators.catalog_source=redhat-operators +intersmash.keycloak.operators.channel=stable-v26.0 +intersmash.keycloak.operators.package_manifest=rhbk-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image=registry.redhat.io/datagrid/datagrid-8-rhel9:1.5 +intersmash.infinispan.operators.catalog_source=redhat-operators +intersmash.infinispan.operators.package_manifest=datagrid +intersmash.infinispan.operators.channel=stable + +intersmash.kafka.operators.catalog_source=redhat-operators +intersmash.kafka.operators.package_manifest=amq-streams +intersmash.kafka.operators.channel=stable + +intersmash.hyperfoil.operators.catalog_source=community-operators +intersmash.hyperfoil.operators.package_manifest=hyperfoil-bundle + +intersmash.olm.operators.catalog_source=openshift-marketplace +intersmash.olm.operators.namespace=redhat-operators \ No newline at end of file diff --git a/testsuite/integration-tests/openshift-global-test.properties b/testsuite/integration-tests/openshift-global-test.properties new file mode 100644 index 00000000..162c3069 --- /dev/null +++ b/testsuite/integration-tests/openshift-global-test.properties @@ -0,0 +1,60 @@ +xtf.waiting.timeout.cleanup=60000 +xtf.waiting.timeout=600000 + +# OpenShift logs +xtf.record.dir=log +xtf.record.before=true +xtf.record.always=false + +# Avoid starting multiple builds at once as it might cause that builds starts to hang +xtf.junit.prebuilder.synchronized=true + +# DB +intersmash.mysql.image=quay.io/centos7/mysql-80-centos7:centos7 +intersmash.postgresql.image=quay.io/centos7/postgresql-13-centos7:centos7 + +intersmash.wildfly.image=quay.io/wildfly/wildfly-s2i:2.1.0-jdk21 +intersmash.wildfly.runtime.image=quay.io/wildfly/wildfly-runtime:2.1.0-jdk21 +intersmash.wildfly.operators.catalog_source=community-operators-wildfly-operator +intersmash.wildfly.operators.index_image=quay.io/operatorhubio/catalog:latest +intersmash.wildfly.operators.package_manifest=wildfly +intersmash.wildfly.operators.channel=alpha +intersmash.wildfly.helm.charts.repo=https://github.com/wildfly/wildfly-charts.git +intersmash.wildfly.helm.charts.branch=wildfly-2.4.0 +intersmash.wildfly.helm.charts.name=wildfly +intersmash.bootable.jar.image=registry.access.redhat.com/ubi8/openjdk-17 + +intersmash.eap7.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-openshift-rhel8:latest +intersmash.eap7.runtime.image=registry.redhat.io/jboss-eap-7/eap74-openjdk17-runtime-openshift-rhel8:latest +intersmash.eap7.templates.base.url=https://raw.githubusercontent.com/jboss-container-images/jboss-eap-openshift-templates/eap74/ +intersmash.eap7.templates.path=templates/ + +intersmash.activemq.operators.catalog_source=intersmash-activemq-operator-index +intersmash.activemq.operators.index_image=quay.io/jbossqe-eap/intersmash-activemq-operator-index:1.2.9 +intersmash.activemq.operators.package_manifest=activemq-artemis-operator +intersmash.activemq.operators.channel=upstream + +intersmash.keycloak.image=quay.io/keycloak/keycloak:26.0 +intersmash.keycloak.operators.catalog_source=community-operators +intersmash.keycloak.operators.channel=fast +intersmash.keycloak.operators.package_manifest=keycloak-operator + +intersmash.rhsso.image=registry.redhat.io/rh-sso-7/sso76-openshift-rhel8:7.6 +intersmash.rhsso.operators.catalog_source=redhat-operators +intersmash.rhsso.operators.package_manifest=rhsso-operator +intersmash.rhsso.templates=https://raw.githubusercontent.com/jboss-container-images/redhat-sso-7-openshift-image/sso76-dev/templates/ + +intersmash.infinispan.image= +intersmash.infinispan.operators.catalog_source=community-operators +intersmash.infinispan.operators.package_manifest=infinispan +intersmash.infinispan.operators.channel= + +intersmash.kafka.operators.catalog_source=community-operators +intersmash.kafka.operators.package_manifest=strimzi-kafka-operator +intersmash.kafka.operators.channel=stable + +intersmash.hyperfoil.operators.catalog_source=community-operators +intersmash.hyperfoil.operators.package_manifest=hyperfoil-bundle + +intersmash.olm.operators.catalog_source=openshift-marketplace +intersmash.olm.operators.namespace=community-operators diff --git a/testsuite/integration-tests/pom.xml b/testsuite/integration-tests/pom.xml index 42982a68..26b4a51b 100644 --- a/testsuite/integration-tests/pom.xml +++ b/testsuite/integration-tests/pom.xml @@ -97,6 +97,9 @@ maven-surefire-plugin ${intersmash.test.excludedGroups.by.execution-profile},${intersmash.test.excludedGroups.by.wildfly-target-distribution},${intersmash.test.excludedGroups.by.target-platform} + + ${project.basedir}/openshift-global-test.properties + @@ -148,6 +151,78 @@ ts.k8s + + + ts.eap-stream.80 + + + + org.apache.maven.plugins + maven-surefire-plugin + + ${intersmash.test.excludedGroups.by.execution-profile},${intersmash.test.excludedGroups.by.wildfly-target-distribution},${intersmash.test.excludedGroups.by.target-platform} + + ${project.basedir}/eap80-global-test.properties + + + + + + + + + ts.eap-stream.81 + + + + org.apache.maven.plugins + maven-surefire-plugin + + ${intersmash.test.excludedGroups.by.execution-profile},${intersmash.test.excludedGroups.by.wildfly-target-distribution},${intersmash.test.excludedGroups.by.target-platform} + + ${project.basedir}/eap81-global-test.properties + + + + + + + + + ts.eapxp-stream.xp5 + + + + org.apache.maven.plugins + maven-surefire-plugin + + ${intersmash.test.excludedGroups.by.execution-profile},${intersmash.test.excludedGroups.by.wildfly-target-distribution},${intersmash.test.excludedGroups.by.target-platform} + + ${project.basedir}/eapxp5-global-test.properties + + + + + + + + + ts.eapxp-stream.xp6 + + + + org.apache.maven.plugins + maven-surefire-plugin + + ${intersmash.test.excludedGroups.by.execution-profile},${intersmash.test.excludedGroups.by.wildfly-target-distribution},${intersmash.test.excludedGroups.by.target-platform} + + ${project.basedir}/eapxp6-global-test.properties + + + + + + diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java index b71822e4..9150c99b 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java @@ -101,9 +101,11 @@ else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); } else - throw new IllegalStateException("Not a valid WildFly deployments stream!"); + throw new IllegalStateException(String.format("Not a valid WildFly deployments stream! (%s)", + TestDeploymentProperties.getWildflyDeploymentsBuildStream())); } else - throw new IllegalStateException("Not a valid testing profile!"); + throw new IllegalStateException(String.format("Not a valid testing profile! (%s)", + TestDeploymentProperties.getWildflyDeploymentsBuildProfile())); // let's compute some additional maven args for our s2i build to happen on a Pod String mavenAdditionalArgs = "-Denforcer.skip=true"; // let's add configurable deployment additional args: diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java index 5286933a..5ee34f15 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java @@ -60,9 +60,9 @@ public WildflyHelmChartOpenShiftExampleApplication() { } else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { release = loadRelease(new EapXp6HelmChartReleaseAdapter(new HelmXp6Release())); } else - throw new IllegalStateException("Not a valid WildFly deployments stream!"); + throw new IllegalStateException(String.format("Not a valid WildFly deployments stream! (%s)", TestDeploymentProperties.getWildflyDeploymentsBuildStream())); } else - throw new IllegalStateException("Not a valid testing profile!"); + throw new IllegalStateException(String.format("Not a valid testing profile! (%s)", TestDeploymentProperties.getWildflyDeploymentsBuildProfile())); } private HelmChartRelease loadRelease(final WildflyHelmChartRelease release) { From af77b67dbdc6312c763350e9413e69aa596ef302 Mon Sep 17 00:00:00 2001 From: Fabio Burzigotti Date: Fri, 17 Jan 2025 12:22:04 +0100 Subject: [PATCH 11/11] [issue-122] (Unrelated) - Fix formatting --- .../helm/wildfly/EapHelmChartReleaseAdapterTest.java | 6 ++++-- ...elmChartExistingValuesOpenShiftExampleApplication.java | 8 ++++---- .../WildflyHelmChartOpenShiftExampleApplication.java | 6 ++++-- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/provisioners/src/test/java/org/jboss/intersmash/provision/helm/wildfly/EapHelmChartReleaseAdapterTest.java b/provisioners/src/test/java/org/jboss/intersmash/provision/helm/wildfly/EapHelmChartReleaseAdapterTest.java index 0953d58f..543dd6f5 100644 --- a/provisioners/src/test/java/org/jboss/intersmash/provision/helm/wildfly/EapHelmChartReleaseAdapterTest.java +++ b/provisioners/src/test/java/org/jboss/intersmash/provision/helm/wildfly/EapHelmChartReleaseAdapterTest.java @@ -191,7 +191,8 @@ public void verifyEap81DynamicallyFilledAdapterTest() { Assertions.assertEquals("url", eap81HelmChartRelease.getSourceRepositoryUrl()); Assertions.assertEquals("ref", eap81HelmChartRelease.getSourceRepositoryRef()); Assertions.assertEquals("context-dir", eap81HelmChartRelease.getContextDir()); - Assertions.assertEquals("fp1,fp2", eap81HelmChartRelease.getS2iFeaturePacks().stream().collect(Collectors.joining(","))); + Assertions.assertEquals("fp1,fp2", + eap81HelmChartRelease.getS2iFeaturePacks().stream().collect(Collectors.joining(","))); Assertions.assertEquals("gl1,gl2", eap81HelmChartRelease.getS2iGalleonLayers().stream().collect(Collectors.joining(","))); Assertions.assertEquals("ch1", eap81HelmChartRelease.getS2iChannels().stream().collect(Collectors.joining(","))); @@ -285,7 +286,8 @@ public void verifyWildFlyDynamicallyFilledAdapterTest() { Assertions.assertEquals("url", wildflyHelmChartRelease.getSourceRepositoryUrl()); Assertions.assertEquals("ref", wildflyHelmChartRelease.getSourceRepositoryRef()); Assertions.assertEquals("context-dir", wildflyHelmChartRelease.getContextDir()); - Assertions.assertEquals("fp1,fp2", wildflyHelmChartRelease.getS2iFeaturePacks().stream().collect(Collectors.joining(","))); + Assertions.assertEquals("fp1,fp2", + wildflyHelmChartRelease.getS2iFeaturePacks().stream().collect(Collectors.joining(","))); Assertions.assertEquals("gl1,gl2", wildflyHelmChartRelease.getS2iGalleonLayers().stream().collect(Collectors.joining(","))); Assertions.assertEquals(Boolean.TRUE, wildflyHelmChartRelease.isBuildEnabled()); diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java index 9150c99b..ffce4454 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartExistingValuesOpenShiftExampleApplication.java @@ -74,28 +74,28 @@ private HelmChartRelease loadRelease() { } else if (IntersmashTestsuiteProperties.isProductizedTestExecutionProfileEnabled()) { // EAP 8.0 if (TestDeploymentProperties.isEap80DeploymentsBuildStreamEnabled()) { - HelmEap8Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + HelmEap8Release helmRelease = HelmChartReleaseAdapter. fromValuesFile( this.getClass().getResource("eap8-helm-values.yaml"), HelmEap8Release.class); wildflyHelmChartRelease = new Eap8HelmChartReleaseAdapter(helmRelease) .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); } // EAP 8.1 else if (TestDeploymentProperties.isEap81DeploymentsBuildStreamEnabled()) { - HelmEap81Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + HelmEap81Release helmRelease = HelmChartReleaseAdapter. fromValuesFile( this.getClass().getResource("eap81-helm-values.yaml"), HelmEap81Release.class); wildflyHelmChartRelease = new Eap81HelmChartReleaseAdapter(helmRelease) .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); } // EAP XP 5 else if (TestDeploymentProperties.isEapXp5DeploymentsBuildStreamEnabled()) { - HelmXp5Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + HelmXp5Release helmRelease = HelmChartReleaseAdapter. fromValuesFile( this.getClass().getResource("xp5-helm-values.yaml"), HelmXp5Release.class); wildflyHelmChartRelease = new EapXp5HelmChartReleaseAdapter(helmRelease) .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) .withJdk17RuntimeImage(IntersmashConfig.wildflyRuntimeImageURL()); } // EAP XP 6 else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { - HelmXp6Release helmRelease = HelmChartReleaseAdapter.fromValuesFile( + HelmXp6Release helmRelease = HelmChartReleaseAdapter. fromValuesFile( this.getClass().getResource("xp6-helm-values.yaml"), HelmXp6Release.class); wildflyHelmChartRelease = new EapXp6HelmChartReleaseAdapter(helmRelease) .withJdk17BuilderImage(IntersmashConfig.wildflyImageURL()) diff --git a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java index 5ee34f15..0ed6ec64 100644 --- a/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java +++ b/testsuite/integration-tests/src/test/java/org/jboss/intersmash/testsuite/provision/openshift/WildflyHelmChartOpenShiftExampleApplication.java @@ -60,9 +60,11 @@ public WildflyHelmChartOpenShiftExampleApplication() { } else if (TestDeploymentProperties.isEapXp6DeploymentsBuildStreamEnabled()) { release = loadRelease(new EapXp6HelmChartReleaseAdapter(new HelmXp6Release())); } else - throw new IllegalStateException(String.format("Not a valid WildFly deployments stream! (%s)", TestDeploymentProperties.getWildflyDeploymentsBuildStream())); + throw new IllegalStateException(String.format("Not a valid WildFly deployments stream! (%s)", + TestDeploymentProperties.getWildflyDeploymentsBuildStream())); } else - throw new IllegalStateException(String.format("Not a valid testing profile! (%s)", TestDeploymentProperties.getWildflyDeploymentsBuildProfile())); + throw new IllegalStateException(String.format("Not a valid testing profile! (%s)", + TestDeploymentProperties.getWildflyDeploymentsBuildProfile())); } private HelmChartRelease loadRelease(final WildflyHelmChartRelease release) {