This is an automated email from the ASF dual-hosted git repository. marat pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-karavan.git
The following commit(s) were added to refs/heads/main by this push: new 2c72955a Fix #1291 2c72955a is described below commit 2c72955a78974a0a5327ac8800488024d6929fbb Author: Marat Gubaidullin <ma...@talismancloud.io> AuthorDate: Tue May 21 20:37:11 2024 -0400 Fix #1291 --- karavan-app/pom.xml | 4 -- .../org/apache/camel/karavan/code/CodeService.java | 56 ++++++++++------------ .../{snippets => templates}/builder-env.properties | 0 .../components-blocklist.txt | 0 .../{snippets => templates}/configmap.jkube.yaml | 0 .../database-bean-template.camel.yaml | 0 .../{snippets => templates}/deployment.jkube.yaml | 0 .../docker-application.properties | 0 .../{snippets => templates}/docker-build.sh | 0 .../{snippets => templates}/docker-compose.yaml | 0 .../{snippets => templates}/ingress.jkube.yaml | 0 .../{snippets => templates}/kamelets-blocklist.txt | 0 .../kubernetes-application.properties | 0 .../{snippets => templates}/kubernetes-build.sh | 0 .../messaging-bean-template.camel.yaml | 0 .../openshift-application.properties | 0 .../{snippets => templates}/openshift-build.sh | 0 .../org.apache.camel.AggregationStrategy.java | 0 .../org.apache.camel.Processor.java | 0 .../{snippets => templates}/service.jkube.yaml | 0 20 files changed, 24 insertions(+), 36 deletions(-) diff --git a/karavan-app/pom.xml b/karavan-app/pom.xml index 89e62149..e8503d8d 100644 --- a/karavan-app/pom.xml +++ b/karavan-app/pom.xml @@ -116,10 +116,6 @@ <groupId>io.quarkus</groupId> <artifactId>quarkus-smallrye-health</artifactId> </dependency> - <dependency> - <groupId>io.quarkus</groupId> - <artifactId>quarkus-qute</artifactId> - </dependency> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/code/CodeService.java b/karavan-app/src/main/java/org/apache/camel/karavan/code/CodeService.java index 93ea951a..37498319 100644 --- a/karavan-app/src/main/java/org/apache/camel/karavan/code/CodeService.java +++ b/karavan-app/src/main/java/org/apache/camel/karavan/code/CodeService.java @@ -18,9 +18,6 @@ package org.apache.camel.karavan.code; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; -import io.quarkus.qute.Engine; -import io.quarkus.qute.Template; -import io.quarkus.qute.TemplateInstance; import io.smallrye.mutiny.tuples.Tuple3; import io.vertx.core.Vertx; import io.vertx.core.buffer.Buffer; @@ -66,7 +63,7 @@ public class CodeService { public static final String MARKDOWN_EXTENSION = ".md"; public static final String PROJECT_JKUBE_EXTENSION = ".jkube.yaml"; public static final String PROJECT_DEPLOYMENT_JKUBE_FILENAME = "deployment" + PROJECT_JKUBE_EXTENSION; - private static final String SNIPPETS_PATH = "/snippets/"; + private static final String TEMPLATES_PATH = "/templates/"; private static final String DATA_FOLDER = System.getProperty("user.dir") + File.separator + "data"; public static final String BUILDER_ENV_MAPPING_FILENAME = "builder-env.properties"; private static final int INTERNAL_PORT = 8080; @@ -83,9 +80,6 @@ public class CodeService { @Inject KaravanCacheService karavanCacheService; - @Inject - Engine engine; - @Inject Vertx vertx; @@ -135,16 +129,15 @@ public class CodeService { } public ProjectFile getApplicationProperties(Project project) { - String templateText = getTemplateText(APPLICATION_PROPERTIES_FILENAME); - Template result = engine.parse(templateText); - TemplateInstance instance = result - .data("projectId", project.getProjectId()) - .data("projectName", project.getName()) - .data("projectDescription", project.getDescription()); - if (ConfigService.inKubernetes()) { - instance.data("namespace", kubernetesService.getNamespace()); + String code = getTemplateText(APPLICATION_PROPERTIES_FILENAME); + if (code != null) { + code = code.replace("{projectId}", project.getProjectId()); + code = code.replace("{projectName}", project.getName()); + code = code.replace("{projectDescription}", project.getDescription()); + if (ConfigService.inKubernetes()) { + code = code.replace("{namespace}", kubernetesService.getNamespace()); + } } - String code = instance.render(); return new ProjectFile(APPLICATION_PROPERTIES_FILENAME, code, project.getProjectId(), Instant.now().toEpochMilli()); } @@ -189,16 +182,16 @@ public class CodeService { if (ConfigService.inKubernetes()) { if (kubernetesService.isOpenshift()) { - result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(SNIPPETS_PATH + "openshift-" + APPLICATION_PROPERTIES_FILENAME)); - result.put(BUILD_SCRIPT_FILENAME, getResourceFile(SNIPPETS_PATH + "openshift-" + BUILD_SCRIPT_FILENAME)); + result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(TEMPLATES_PATH + "openshift-" + APPLICATION_PROPERTIES_FILENAME)); + result.put(BUILD_SCRIPT_FILENAME, getResourceFile(TEMPLATES_PATH + "openshift-" + BUILD_SCRIPT_FILENAME)); } else { - result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(SNIPPETS_PATH + "kubernetes-" + APPLICATION_PROPERTIES_FILENAME)); - result.put(BUILD_SCRIPT_FILENAME, getResourceFile(SNIPPETS_PATH + "kubernetes-" + BUILD_SCRIPT_FILENAME)); + result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(TEMPLATES_PATH + "kubernetes-" + APPLICATION_PROPERTIES_FILENAME)); + result.put(BUILD_SCRIPT_FILENAME, getResourceFile(TEMPLATES_PATH + "kubernetes-" + BUILD_SCRIPT_FILENAME)); } - result.put(BUILDER_ENV_MAPPING_FILENAME, getResourceFile(SNIPPETS_PATH + BUILDER_ENV_MAPPING_FILENAME)); + result.put(BUILDER_ENV_MAPPING_FILENAME, getResourceFile(TEMPLATES_PATH + BUILDER_ENV_MAPPING_FILENAME)); } else { - result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(SNIPPETS_PATH + "docker-" + APPLICATION_PROPERTIES_FILENAME)); - result.put(BUILD_SCRIPT_FILENAME, getResourceFile(SNIPPETS_PATH + "docker-" + BUILD_SCRIPT_FILENAME)); + result.put(APPLICATION_PROPERTIES_FILENAME, getResourceFile(TEMPLATES_PATH + "docker-" + APPLICATION_PROPERTIES_FILENAME)); + result.put(BUILD_SCRIPT_FILENAME, getResourceFile(TEMPLATES_PATH + "docker-" + BUILD_SCRIPT_FILENAME)); } List<String> files = new ArrayList<>(interfaces); @@ -206,14 +199,14 @@ public class CodeService { files.addAll(getBeanTemplateNames()); files.forEach(file -> { - String templatePath = SNIPPETS_PATH + file; + String templatePath = TEMPLATES_PATH + file; String templateText = getResourceFile(templatePath); if (templateText != null) { result.put(file, templateText); } }); - result.put(PROJECT_COMPOSE_FILENAME, getResourceFile(SNIPPETS_PATH + PROJECT_COMPOSE_FILENAME)); + result.put(PROJECT_COMPOSE_FILENAME, getResourceFile(TEMPLATES_PATH + PROJECT_COMPOSE_FILENAME)); return result; } @@ -288,13 +281,12 @@ public class CodeService { public ProjectFile createInitialProjectCompose(Project project) { int port = getNextAvailablePort(); - String templateText = getTemplateText(PROJECT_COMPOSE_FILENAME); - Template result = engine.parse(templateText); - TemplateInstance instance = result - .data("projectId", project.getProjectId()) - .data("projectPort", port) - .data("projectImage", project.getProjectId()); - String code = instance.render(); + String code = getTemplateText(PROJECT_COMPOSE_FILENAME); + if (code != null) { + code = code.replace("{projectId}", project.getProjectId()); + code = code.replace("{projectPort}", String.valueOf(port)); + code = code.replace("{projectImage}", project.getProjectId()); + } return new ProjectFile(PROJECT_COMPOSE_FILENAME, code, project.getProjectId(), Instant.now().toEpochMilli()); } diff --git a/karavan-app/src/main/resources/snippets/builder-env.properties b/karavan-app/src/main/resources/templates/builder-env.properties similarity index 100% rename from karavan-app/src/main/resources/snippets/builder-env.properties rename to karavan-app/src/main/resources/templates/builder-env.properties diff --git a/karavan-app/src/main/resources/snippets/components-blocklist.txt b/karavan-app/src/main/resources/templates/components-blocklist.txt similarity index 100% rename from karavan-app/src/main/resources/snippets/components-blocklist.txt rename to karavan-app/src/main/resources/templates/components-blocklist.txt diff --git a/karavan-app/src/main/resources/snippets/configmap.jkube.yaml b/karavan-app/src/main/resources/templates/configmap.jkube.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/configmap.jkube.yaml rename to karavan-app/src/main/resources/templates/configmap.jkube.yaml diff --git a/karavan-app/src/main/resources/snippets/database-bean-template.camel.yaml b/karavan-app/src/main/resources/templates/database-bean-template.camel.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/database-bean-template.camel.yaml rename to karavan-app/src/main/resources/templates/database-bean-template.camel.yaml diff --git a/karavan-app/src/main/resources/snippets/deployment.jkube.yaml b/karavan-app/src/main/resources/templates/deployment.jkube.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/deployment.jkube.yaml rename to karavan-app/src/main/resources/templates/deployment.jkube.yaml diff --git a/karavan-app/src/main/resources/snippets/docker-application.properties b/karavan-app/src/main/resources/templates/docker-application.properties similarity index 100% rename from karavan-app/src/main/resources/snippets/docker-application.properties rename to karavan-app/src/main/resources/templates/docker-application.properties diff --git a/karavan-app/src/main/resources/snippets/docker-build.sh b/karavan-app/src/main/resources/templates/docker-build.sh similarity index 100% rename from karavan-app/src/main/resources/snippets/docker-build.sh rename to karavan-app/src/main/resources/templates/docker-build.sh diff --git a/karavan-app/src/main/resources/snippets/docker-compose.yaml b/karavan-app/src/main/resources/templates/docker-compose.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/docker-compose.yaml rename to karavan-app/src/main/resources/templates/docker-compose.yaml diff --git a/karavan-app/src/main/resources/snippets/ingress.jkube.yaml b/karavan-app/src/main/resources/templates/ingress.jkube.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/ingress.jkube.yaml rename to karavan-app/src/main/resources/templates/ingress.jkube.yaml diff --git a/karavan-app/src/main/resources/snippets/kamelets-blocklist.txt b/karavan-app/src/main/resources/templates/kamelets-blocklist.txt similarity index 100% rename from karavan-app/src/main/resources/snippets/kamelets-blocklist.txt rename to karavan-app/src/main/resources/templates/kamelets-blocklist.txt diff --git a/karavan-app/src/main/resources/snippets/kubernetes-application.properties b/karavan-app/src/main/resources/templates/kubernetes-application.properties similarity index 100% rename from karavan-app/src/main/resources/snippets/kubernetes-application.properties rename to karavan-app/src/main/resources/templates/kubernetes-application.properties diff --git a/karavan-app/src/main/resources/snippets/kubernetes-build.sh b/karavan-app/src/main/resources/templates/kubernetes-build.sh similarity index 100% rename from karavan-app/src/main/resources/snippets/kubernetes-build.sh rename to karavan-app/src/main/resources/templates/kubernetes-build.sh diff --git a/karavan-app/src/main/resources/snippets/messaging-bean-template.camel.yaml b/karavan-app/src/main/resources/templates/messaging-bean-template.camel.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/messaging-bean-template.camel.yaml rename to karavan-app/src/main/resources/templates/messaging-bean-template.camel.yaml diff --git a/karavan-app/src/main/resources/snippets/openshift-application.properties b/karavan-app/src/main/resources/templates/openshift-application.properties similarity index 100% rename from karavan-app/src/main/resources/snippets/openshift-application.properties rename to karavan-app/src/main/resources/templates/openshift-application.properties diff --git a/karavan-app/src/main/resources/snippets/openshift-build.sh b/karavan-app/src/main/resources/templates/openshift-build.sh similarity index 100% rename from karavan-app/src/main/resources/snippets/openshift-build.sh rename to karavan-app/src/main/resources/templates/openshift-build.sh diff --git a/karavan-app/src/main/resources/snippets/org.apache.camel.AggregationStrategy.java b/karavan-app/src/main/resources/templates/org.apache.camel.AggregationStrategy.java similarity index 100% rename from karavan-app/src/main/resources/snippets/org.apache.camel.AggregationStrategy.java rename to karavan-app/src/main/resources/templates/org.apache.camel.AggregationStrategy.java diff --git a/karavan-app/src/main/resources/snippets/org.apache.camel.Processor.java b/karavan-app/src/main/resources/templates/org.apache.camel.Processor.java similarity index 100% rename from karavan-app/src/main/resources/snippets/org.apache.camel.Processor.java rename to karavan-app/src/main/resources/templates/org.apache.camel.Processor.java diff --git a/karavan-app/src/main/resources/snippets/service.jkube.yaml b/karavan-app/src/main/resources/templates/service.jkube.yaml similarity index 100% rename from karavan-app/src/main/resources/snippets/service.jkube.yaml rename to karavan-app/src/main/resources/templates/service.jkube.yaml