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 8c86c43  Properties (#441)
8c86c43 is described below

commit 8c86c430485332b12891ee6495b98e6216970474
Author: Marat Gubaidullin <marat.gubaidul...@gmail.com>
AuthorDate: Mon Aug 1 16:48:59 2022 -0400

    Properties (#441)
---
 .../camel/karavan/service/GeneratorService.java    |  2 +-
 .../camel/karavan/service/KaravanService.java      | 32 +++++++++++++++++++++-
 .../openshift/karavan-quarkus-task.yaml            |  2 +-
 karavan-vscode/package.json                        |  2 +-
 4 files changed, 34 insertions(+), 4 deletions(-)

diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/GeneratorService.java
 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/GeneratorService.java
index c8227f2..0e64f19 100644
--- 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/GeneratorService.java
+++ 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/GeneratorService.java
@@ -64,8 +64,8 @@ public class GeneratorService {
         
s.append("camel.jbang.runtime=").append(runtime.toLowerCase()).append(System.lineSeparator());
         
s.append("camel.jbang.quarkusVersion=").append(runtimeVersion).append(System.lineSeparator());
         s.append("camel.jbang.dependencies=")
+                .append("camel:microprofile-health,")
                 .append("mvn:io.quarkus:quarkus-container-image-jib,")
-                
.append("mvn:org.apache.camel.quarkus:camel-quarkus-microprofile-health,")
                 
.append("mvn:io.quarkus:quarkus-openshift").append(System.lineSeparator());
 
         s.append("camel.health.enabled=true").append(System.lineSeparator());
diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/KaravanService.java
 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/KaravanService.java
index dff71f7..2a7d682 100644
--- 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/KaravanService.java
+++ 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/KaravanService.java
@@ -31,6 +31,7 @@ import javax.inject.Inject;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicReference;
 import java.util.stream.Collectors;
 
 @ApplicationScoped
@@ -64,10 +65,22 @@ public class KaravanService {
                 String name = Arrays.stream(folderName.split("-")).map(s -> 
capitalize(s)).collect(Collectors.joining(" "));
                 Project project = new Project(folderName, name, name, 
Project.CamelRuntime.valueOf(runtime.toUpperCase()), "");
                 infinispanService.saveProject(project);
+
+                AtomicReference<ProjectFile> properties = new 
AtomicReference<>();
                 p.getItem2().forEach((key, value) -> {
                     ProjectFile file = new ProjectFile(key, value, folderName);
                     infinispanService.saveProjectFile(file);
+                    if (isApplicationProperties(file)) {
+                        properties.set(file);
+                    }
                 });
+                // update project
+                if (properties != null){
+                    
project.setDescription(getProjectDescription(properties.get()));
+                    project.setDescription(getProjectName(properties.get()));
+                    infinispanService.saveProject(project);
+                }
+
             });
         } catch (Exception e) {
             LOGGER.error("Error during project import", e);
@@ -78,8 +91,25 @@ public class KaravanService {
         if(str == null || str.isEmpty()) {
             return str;
         }
-
         return str.substring(0, 1).toUpperCase() + str.substring(1);
     }
 
+    private static boolean isApplicationProperties(ProjectFile file) {
+        return file.getName().equalsIgnoreCase("application.properties");
+    }
+
+    private static String getProperty(ProjectFile file, String property) {
+        String prefix = property + "=";
+        return  
Arrays.stream(file.getCode().split(System.lineSeparator())).filter(s -> 
s.startsWith(prefix))
+                .findFirst().orElseGet(() -> "")
+                .replace(prefix, "");
+    }
+
+    private static String getProjectDescription(ProjectFile file) {
+        return getProperty(file, "camel.jbang.project-description");
+    }
+
+    private static String getProjectName(ProjectFile file) {
+        return getProperty(file, "camel.jbang.project-name");
+    }
 }
diff --git a/karavan-builder/openshift/karavan-quarkus-task.yaml 
b/karavan-builder/openshift/karavan-quarkus-task.yaml
index 51985e6..b2fa4bf 100644
--- a/karavan-builder/openshift/karavan-quarkus-task.yaml
+++ b/karavan-builder/openshift/karavan-quarkus-task.yaml
@@ -24,7 +24,7 @@ spec:
 
           cd ${CHECKOUT_DIR}/$(inputs.params.project) 
 
-          entrypoint -Dcamel.jbang.version=3.19.0-SNAPSHOT camel@apache/camel 
export
+          entrypoint -Dcamel.jbang.version=3.18.1-SNAPSHOT camel@apache/camel 
export
 
           export LAST_COMMIT=$(git rev-parse --short HEAD)
           export DATE=$(date '+%Y%m%d%H%M%S')
diff --git a/karavan-vscode/package.json b/karavan-vscode/package.json
index e4512dd..370fe0c 100644
--- a/karavan-vscode/package.json
+++ b/karavan-vscode/package.json
@@ -145,7 +145,7 @@
             "camel.jbang.project-description=$NAME",
             "camel.jbang.gav=$GAV",
             "camel.jbang.runtime=$RUNTIME",
-            
"camel.jbang.dependencies=mvn:io.quarkus:quarkus-container-image-jib,mvn:org.apache.camel.quarkus:camel-quarkus-microprofile-health,mvn:io.quarkus:quarkus-openshift",
+            
"camel.jbang.dependencies=mvn:io.quarkus:quarkus-container-image-jib,camel:microprofile-health,mvn:io.quarkus:quarkus-openshift",
             "camel.health.enabled=true",
             "camel.health.exposure-level=full"
           ],

Reply via email to