diff --git a/horreum-integration-tests/src/test/java/io/hyperfoil/tools/horreum/it/ItResource.java b/horreum-integration-tests/src/test/java/io/hyperfoil/tools/horreum/it/ItResource.java index a84eafc5f..c13a16f17 100644 --- a/horreum-integration-tests/src/test/java/io/hyperfoil/tools/horreum/it/ItResource.java +++ b/horreum-integration-tests/src/test/java/io/hyperfoil/tools/horreum/it/ItResource.java @@ -24,6 +24,8 @@ import java.util.Map; +import org.eclipse.microprofile.config.Config; +import org.eclipse.microprofile.config.ConfigProvider; import org.jboss.logging.Logger; import io.hyperfoil.tools.horreum.infra.common.SelfSignedCert; @@ -53,6 +55,8 @@ public Map start() { SelfSignedCert postgresSelfSignedCert = new SelfSignedCert("RSA", "SHA256withRSA", "localhost", 123); + Config config = ConfigProvider.getConfig(); + //todo: pick up from configuration Map containerArgs = Map.ofEntries( Map.entry(HORREUM_DEV_KEYCLOAK_ENABLED, "true"), @@ -67,8 +71,11 @@ public Map start() { Map.entry(HORREUM_DEV_KEYCLOAK_DB_PASSWORD, DEFAULT_KC_DB_PASSWORD), Map.entry(HORREUM_DEV_KEYCLOAK_ADMIN_USERNAME, DEFAULT_KC_ADMIN_USERNAME), Map.entry(HORREUM_DEV_KEYCLOAK_ADMIN_PASSWORD, DEFAULT_KC_ADMIN_PASSWORD), - Map.entry("horreum.bootstrap.password", HORREUM_BOOTSTRAP_PASSWORD) // well known bootstrap password instead of a random one - ); + Map.entry("horreum.bootstrap.password", HORREUM_BOOTSTRAP_PASSWORD), // well known bootstrap password instead of a random one + Map.entry("quarkus.http.port", + config.getOptionalValue("quarkus.http.port", String.class).orElse("8080")), + Map.entry("quarkus.http.host", + config.getOptionalValue("quarkus.http.host", String.class).orElse("localhost"))); return startContainers(containerArgs); } catch (Exception e) { log.fatal("Could not start Horreum services", e); diff --git a/infra/horreum-dev-services/deployment/src/main/java/io/hyperfoil/tools/horreum/dev/services/deployment/HorreumDevServicesProcessor.java b/infra/horreum-dev-services/deployment/src/main/java/io/hyperfoil/tools/horreum/dev/services/deployment/HorreumDevServicesProcessor.java index 598c48972..9f41a10da 100644 --- a/infra/horreum-dev-services/deployment/src/main/java/io/hyperfoil/tools/horreum/dev/services/deployment/HorreumDevServicesProcessor.java +++ b/infra/horreum-dev-services/deployment/src/main/java/io/hyperfoil/tools/horreum/dev/services/deployment/HorreumDevServicesProcessor.java @@ -10,6 +10,8 @@ import java.util.Optional; import java.util.function.BooleanSupplier; +import org.eclipse.microprofile.config.Config; +import org.eclipse.microprofile.config.ConfigProvider; import org.jboss.logging.Logger; import io.hyperfoil.tools.horreum.dev.services.deployment.config.DevServicesConfig; @@ -106,6 +108,12 @@ public void startHorreumContainers( containerArgs.put(HORREUM_DEV_POSTGRES_SSL_CERTIFICATE_KEY, postgresSelfSignedCert.getKeyString()); } + Config config = ConfigProvider.getConfig(); + containerArgs.put("quarkus.http.port", + config.getOptionalValue("quarkus.http.port", String.class).orElse("8080")); + containerArgs.put("quarkus.http.host", + config.getOptionalValue("quarkus.http.host", String.class).orElse("localhost")); + Map envvars = HorreumResources .startContainers(Collections.unmodifiableMap(containerArgs)); diff --git a/infra/horreum-infra-common/pom.xml b/infra/horreum-infra-common/pom.xml index ba515574b..cef7e740b 100644 --- a/infra/horreum-infra-common/pom.xml +++ b/infra/horreum-infra-common/pom.xml @@ -34,8 +34,9 @@ - io.quarkus - quarkus-keycloak-admin-resteasy-client + org.keycloak + keycloak-admin-client + ${keycloak.version} diff --git a/infra/horreum-infra-common/src/main/java/io/hyperfoil/tools/horreum/infra/common/HorreumResources.java b/infra/horreum-infra-common/src/main/java/io/hyperfoil/tools/horreum/infra/common/HorreumResources.java index d6df827a6..5c0820449 100644 --- a/infra/horreum-infra-common/src/main/java/io/hyperfoil/tools/horreum/infra/common/HorreumResources.java +++ b/infra/horreum-infra-common/src/main/java/io/hyperfoil/tools/horreum/infra/common/HorreumResources.java @@ -21,8 +21,6 @@ import org.bouncycastle.openssl.PEMKeyPair; import org.bouncycastle.openssl.PEMParser; import org.bouncycastle.openssl.jcajce.JcaPEMKeyConverter; -import org.eclipse.microprofile.config.Config; -import org.eclipse.microprofile.config.ConfigProvider; import org.jboss.logging.Logger; import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder; import org.keycloak.admin.client.Keycloak; @@ -149,9 +147,8 @@ public static Map startContainers(Map initArgs) //update running keycloak realm with dev services configuration try { - Config config = ConfigProvider.getConfig(); - String httpPort = config.getOptionalValue("quarkus.http.port", String.class).orElse("8080"); - String httpHost = config.getOptionalValue("quarkus.http.host", String.class).orElse("localhost"); + String httpPort = initArgs.get("quarkus.http.port"); + String httpHost = initArgs.get("quarkus.http.host"); ClientRepresentation uiClient = keycloak.realm(HORREUM_REALM).clients().findByClientId("horreum-ui").get(0); uiClient.getWebOrigins().add("http://".concat(httpHost).concat(":").concat(httpPort)); diff --git a/pom.xml b/pom.xml index 3a8d07985..94d484954 100644 --- a/pom.xml +++ b/pom.xml @@ -93,8 +93,9 @@ false + 25.0.2 postgres:16 - quay.io/keycloak/keycloak:25.0.2 + quay.io/keycloak/keycloak:${keycloak.version} ${project.version} 0.15