You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gf...@apache.org on 2025/02/19 16:51:25 UTC
(camel) branch main updated: camel-jbang-plugin-kubernetes - jkube to generate Deployment instead of DeploymentConfig
This is an automated email from the ASF dual-hosted git repository.
gfournier pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 144d059470f camel-jbang-plugin-kubernetes - jkube to generate Deployment instead of DeploymentConfig
144d059470f is described below
commit 144d059470f7bee5d108d334d99376498a138103
Author: Claudio Miranda <cl...@claudius.com.br>
AuthorDate: Wed Feb 19 12:06:53 2025 +0000
camel-jbang-plugin-kubernetes - jkube to generate Deployment instead of DeploymentConfig
when the target is an openshift cluster
---
.../jbang/core/commands/kubernetes/KubernetesExport.java | 3 +++
.../core/commands/kubernetes/KubernetesExportTest.java | 15 +++++++++++++++
2 files changed, 18 insertions(+)
diff --git a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExport.java b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExport.java
index 786a9d36bbb..4e55e823916 100644
--- a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExport.java
+++ b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/main/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesExport.java
@@ -292,6 +292,9 @@ public class KubernetesExport extends Export {
printer().printf("OpenShift forcing --image-builder=docker%n");
imageBuilder = "docker";
}
+ // the deployment trait already generates the src/main/jkube/deployment.yml
+ // but we also have to set in the jkube to generate Deployment instead of DeploymentConfig
+ buildProperties.add("jkube.build.switchToDeployment=true");
buildProperties.add("jkube.maven.plugin=%s".formatted("openshift-maven-plugin"));
} else {
buildProperties.add("jkube.maven.plugin=%s".formatted("kubernetes-maven-plugin"));
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 a786b627d61..c49cf8b7359 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
@@ -312,6 +312,21 @@ class KubernetesExportTest extends KubernetesExportBaseTest {
Assertions.assertTrue(key.startsWith(route.getSpec().getTls().getKey()));
}
+ @ParameterizedTest
+ @MethodSource("runtimeProvider")
+ public void shouldAddJkubeOpenshiftDeploymentProperty(RuntimeType rt) throws Exception {
+ KubernetesExport command = createCommand(new String[] { "classpath:route-service.yaml" },
+ "--cluster-type", "openshift",
+ "--runtime=" + rt.runtime());
+ var exit = command.doCall();
+ Assertions.assertEquals(0, exit);
+
+ Model model = readMavenModel();
+ Properties props = model.getProperties();
+ Assertions.assertEquals("true", props.get("jkube.build.switchToDeployment"),
+ "property jkube.build.switchToDeployment=true not set in pom.xml");
+ }
+
@ParameterizedTest
@MethodSource("runtimeProvider")
public void shouldAddContainerSpec(RuntimeType rt) throws Exception {