This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch fix/CAMEL-21935 in repository https://gitbox.apache.org/repos/asf/camel.git
commit c2619d5fcb6fc3923c34659487e14e263c20b17a Author: Claus Ibsen <[email protected]> AuthorDate: Fri Jun 5 23:49:11 2026 +0200 CAMEL-21935: Fix Knative Service missing container image on OpenShift Co-Authored-By: Claude <[email protected]> Signed-off-by: Claus Ibsen <[email protected]> --- .../core/commands/kubernetes/traits/TraitHelper.java | 1 + .../commands/kubernetes/KubernetesExportTest.java | 20 +++++++++++--------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/traits/TraitHelper.java b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/traits/TraitHelper.java index 6dbd1e73e9a5..32888b237571 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/traits/TraitHelper.java +++ b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/traits/TraitHelper.java @@ -306,6 +306,7 @@ public final class TraitHelper { buildProperties.add("jkube.container-image.name=%s".formatted(imageToUse)); Container containerTrait = Optional.ofNullable(traitsSpec.getContainer()).orElseGet(Container::new); + containerTrait.setImage(imageToUse); if (containerTrait.getImagePullPolicy() != null) { var imagePullPolicy = containerTrait.getImagePullPolicy().getValue(); diff --git a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExportTest.java b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExportTest.java index 07165fac9c02..c6b5025e6625 100644 --- a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExportTest.java +++ b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExportTest.java @@ -206,7 +206,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Assertions.assertEquals("route", labels.get("camel.apache.org/app")); Assertions.assertEquals("route", containers.get(0).getName()); Assertions.assertEquals("route", matchLabels.get(BaseTrait.KUBERNETES_LABEL_NAME)); - Assertions.assertNull(containers.get(0).getImage()); + Assertions.assertEquals("quay.io/camel-test/route:1.0-SNAPSHOT", containers.get(0).getImage()); Model model = readMavenModel(); Assertions.assertEquals("org.example.project", model.getGroupId()); @@ -299,7 +299,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Assertions.assertEquals("route", labels.get(BaseTrait.KUBERNETES_LABEL_NAME)); Assertions.assertEquals("route", containers.get(0).getName()); Assertions.assertEquals("route", matchLabels.get(BaseTrait.KUBERNETES_LABEL_NAME)); - Assertions.assertNull(containers.get(0).getImage()); + Assertions.assertEquals("camel-test/route:1.0-SNAPSHOT", containers.get(0).getImage()); Model model = readMavenModel(); Assertions.assertEquals("org.example.project", model.getGroupId()); @@ -340,7 +340,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Container container = deployment.getSpec().getTemplate().getSpec().getContainers().get(0); Assertions.assertEquals("route", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(container.getImage()); + Assertions.assertEquals("route:1.0-SNAPSHOT", container.getImage()); Assertions.assertEquals(1, container.getPorts().size()); Assertions.assertEquals("http", container.getPorts().get(0).getName()); Assertions.assertEquals(8080, container.getPorts().get(0).getContainerPort()); @@ -380,7 +380,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Container container = deployment.getSpec().getTemplate().getSpec().getContainers().get(0); Assertions.assertEquals("route-service", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(container.getImage()); + Assertions.assertEquals("route-service:1.0-SNAPSHOT", container.getImage()); Assertions.assertEquals(1, container.getPorts().size()); Assertions.assertEquals("http", container.getPorts().get(0).getName()); Assertions.assertEquals(8080, container.getPorts().get(0).getContainerPort()); @@ -429,7 +429,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Container container = deployment.getSpec().getTemplate().getSpec().getContainers().get(0); Assertions.assertEquals("route-service", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(container.getImage()); + Assertions.assertEquals("route-service:1.0-SNAPSHOT", container.getImage()); Assertions.assertEquals(1, container.getPorts().size()); Assertions.assertEquals("http", container.getPorts().get(0).getName()); Assertions.assertEquals(8080, container.getPorts().get(0).getContainerPort()); @@ -487,7 +487,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Container container = deployment.getSpec().getTemplate().getSpec().getContainers().get(0); Assertions.assertEquals("route-service", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(container.getImage()); + Assertions.assertEquals("route-service:1.0-SNAPSHOT", container.getImage()); Assertions.assertEquals(1, container.getPorts().size()); Assertions.assertEquals("http", container.getPorts().get(0).getName()); Assertions.assertEquals(8080, container.getPorts().get(0).getContainerPort()); @@ -548,7 +548,8 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Deployment deployment = getDeployment(rt); Assertions.assertEquals("route-service", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getImage()); + Assertions.assertEquals("route-service:1.0.0", + deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getImage()); Assertions.assertEquals("IfNotPresent", deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getImagePullPolicy()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getPorts().size()); @@ -841,7 +842,8 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Deployment deployment = getDeployment(rt); Assertions.assertEquals("demo-app", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getImage()); + Assertions.assertEquals("quay.io/camel/demo-app:1.0", + deployment.getSpec().getTemplate().getSpec().getContainers().get(0).getImage()); Model model = readMavenModel(); Assertions.assertEquals("org.example.project", model.getGroupId()); @@ -872,7 +874,7 @@ class KubernetesExportTest extends KubernetesExportBaseTestSupport { Container container = deployment.getSpec().getTemplate().getSpec().getContainers().get(0); Assertions.assertEquals("route-service", deployment.getMetadata().getName()); Assertions.assertEquals(1, deployment.getSpec().getTemplate().getSpec().getContainers().size()); - Assertions.assertNull(container.getImage()); + Assertions.assertEquals("route-service:1.0-SNAPSHOT", container.getImage()); Assertions.assertEquals(2, container.getPorts().size()); Assertions.assertEquals("jolokia", container.getPorts().get(1).getName()); Assertions.assertEquals(8778, container.getPorts().get(1).getContainerPort());
