diff --git a/operator/src/main/java/org/keycloak/operator/controllers/KeycloakRealmImportJobDependentResource.java b/operator/src/main/java/org/keycloak/operator/controllers/KeycloakRealmImportJobDependentResource.java index 6aafc2a9028..2a769b350ad 100644 --- a/operator/src/main/java/org/keycloak/operator/controllers/KeycloakRealmImportJobDependentResource.java +++ b/operator/src/main/java/org/keycloak/operator/controllers/KeycloakRealmImportJobDependentResource.java @@ -151,14 +151,9 @@ public class KeycloakRealmImportJobDependentResource extends KubernetesDependent private void buildKeycloakJobContainer(Container keycloakContainer, KeycloakRealmImport keycloakRealmImport, String volumeName, Config config) { var importMntPath = "/mnt/realm-import/"; - var command = List.of("/bin/bash"); + var command = List.of("/opt/keycloak/bin/kc.sh"); - var override = "--override=false"; - - var runBuild = !keycloakContainer.getArgs().contains(KeycloakDeploymentDependentResource.OPTIMIZED_ARG) ? "/opt/keycloak/bin/kc.sh --verbose build && " : ""; - - var commandArgs = List.of("-c", - runBuild + "/opt/keycloak/bin/kc.sh --verbose import --optimized --file='" + importMntPath + keycloakRealmImport.getRealmName() + "-realm.json' " + override); + var commandArgs = List.of("--verbose", "import", "--file=" + importMntPath + keycloakRealmImport.getRealmName() + "-realm.json", "--override=false"); keycloakContainer.setCommand(command); keycloakContainer.setArgs(commandArgs); diff --git a/operator/src/test/java/org/keycloak/operator/testsuite/integration/RealmImportTest.java b/operator/src/test/java/org/keycloak/operator/testsuite/integration/RealmImportTest.java index da25aebdeef..a5538008959 100644 --- a/operator/src/test/java/org/keycloak/operator/testsuite/integration/RealmImportTest.java +++ b/operator/src/test/java/org/keycloak/operator/testsuite/integration/RealmImportTest.java @@ -20,7 +20,6 @@ package org.keycloak.operator.testsuite.integration; import java.util.Arrays; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import jakarta.inject.Inject; @@ -87,7 +86,7 @@ public class RealmImportTest extends BaseOperatorTest { k8sclient.resource(getResourceFromFile("example-smtp-secret.yaml", Secret.class)).delete(); } - private String getJobArgs() { + private List getJobArgs() { return k8sclient .batch() .v1() @@ -100,16 +99,13 @@ public class RealmImportTest extends BaseOperatorTest { .getSpec() .getContainers() .get(0) - .getArgs() - .stream() - .collect(Collectors.joining()); + .getArgs(); } protected static void deploySmtpSecret() { K8sUtils.set(k8sclient, getResourceFromFile("example-smtp-secret.yaml", Secret.class)); } - @DisabledIfApiServerTest @Test public void testWorkingRealmImport() { // Arrange @@ -126,7 +122,6 @@ public class RealmImportTest extends BaseOperatorTest { assertWorkingRealmImport(kc); } - @DisabledIfApiServerTest @Test public void testWorkingRealmImportWithReplacement() { // Arrange @@ -209,7 +204,7 @@ public class RealmImportTest extends BaseOperatorTest { assertThat(curlOutput).isEqualTo("200"); }); - assertThat(getJobArgs()).contains("build"); + assertThat(getJobArgs()).contains("import"); assertThat(job.getMetadata().getLabels().get("example")).isEqualTo("test"); return envvars;