diff --git a/quarkus/deployment/src/main/java/org/keycloak/quarkus/deployment/KeycloakProcessor.java b/quarkus/deployment/src/main/java/org/keycloak/quarkus/deployment/KeycloakProcessor.java index 94591541d7a..092f8e526e0 100644 --- a/quarkus/deployment/src/main/java/org/keycloak/quarkus/deployment/KeycloakProcessor.java +++ b/quarkus/deployment/src/main/java/org/keycloak/quarkus/deployment/KeycloakProcessor.java @@ -328,7 +328,8 @@ class KeycloakProcessor { } } } else if (mapper.isBuildTime()) { - value = Configuration.getConfigValue(mapper.getFrom()); + name = mapper.getFrom(); + value = Configuration.getConfigValue(name); } if (value != null && value.getValue() != null) { diff --git a/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/cli/Picocli.java b/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/cli/Picocli.java index 963c943f67d..381db8e8934 100644 --- a/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/cli/Picocli.java +++ b/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/cli/Picocli.java @@ -238,6 +238,13 @@ public final class Picocli { String runtimeValue = getRuntimeProperty(propertyName).orElse(null); if (runtimeValue == null && isNotBlank(persistedValue)) { + PropertyMapper mapper = PropertyMappers.getMapper(propertyName); + + if (mapper != null && persistedValue.equals(mapper.getDefaultValue())) { + // same as default + continue; + } + // probably because it was unset return true; } diff --git a/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/StartAutoBuildDistTest.java b/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/StartAutoBuildDistTest.java index ed7674357ac..58242b4b316 100644 --- a/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/StartAutoBuildDistTest.java +++ b/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/StartAutoBuildDistTest.java @@ -76,4 +76,21 @@ public class StartAutoBuildDistTest { cliResult.assertNoBuild(); cliResult.assertStarted(); } + + @Test + @Launch({ "build", "--db=postgres" }) + @Order(5) + void testBuildForReAugWhenAutoBuild(LaunchResult result) { + CLIResult cliResult = (CLIResult) result; + cliResult.assertBuild(); + } + + @Test + @Launch({ "start", "--auto-build", "--http-enabled=true", "--hostname-strict=false", "--cache=local" }) + @Order(6) + void testReAugWhenNoOptionAfterBuild(LaunchResult result) { + CLIResult cliResult = (CLIResult) result; + cliResult.assertBuild(); + cliResult.assertStarted(); + } }