You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2023/05/09 13:26:47 UTC

[camel] branch camel-3.20.x updated (32d7f59f262 -> 695405485ae)

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a change to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git


    from 32d7f59f262 Update camel releases
     new c323dcb4d6f CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 28e74c55691 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new c063a1ae504 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new c04f7396d89 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 16ae9e4b6bb CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 6c264887535 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new e45f7864bcd CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 1959eba8503 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 6523f79c748 CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
     new 695405485ae CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

The 10 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../camel/dsl/jbang/core/commands/Export.java      |  6 ++
 .../dsl/jbang/core/commands/ExportBaseCommand.java | 55 +++++++++++++
 .../dsl/jbang/core/commands/ExportCamelMain.java   | 56 ++++++++++++++
 .../dsl/jbang/core/commands/ExportQuarkus.java     | 87 ++++++++++++++++++++-
 .../dsl/jbang/core/commands/ExportSpringBoot.java  | 90 ++++++++++++++++++++++
 5 files changed, 293 insertions(+), 1 deletion(-)


[camel] 10/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 695405485ae63de95fc048cf3cbb65639fb501ce
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 13:46:18 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../dsl/jbang/core/commands/ExportBaseCommand.java     |  2 +-
 .../camel/dsl/jbang/core/commands/ExportCamelMain.java | 12 ++++++------
 .../camel/dsl/jbang/core/commands/ExportQuarkus.java   | 18 +++++++++---------
 .../dsl/jbang/core/commands/ExportSpringBoot.java      | 18 +++++++++---------
 4 files changed, 25 insertions(+), 25 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 80d81c71d4d..f99d213ad00 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -155,7 +155,7 @@ abstract class ExportBaseCommand extends CamelCommand {
     protected boolean secretsRefresh;
 
     @CommandLine.Option(names = { "--secrets-refresh-providers" },
-                        description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
+                        description = "Comma separated list of providers in the set aws,gcp and azure, to use in combination with --secrets-refresh option")
     protected String secretsRefreshProviders;
 
     @CommandLine.Option(names = { "--logging" }, defaultValue = "false",
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index 1485d0dfef1..3a49af210da 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -202,20 +202,20 @@ class ExportCamelMain extends Export {
                 List<String> providers = getSecretProviders();
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-aws-secrets-manager").append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "GCP":
+                        case "gcp":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-google-secret-manager")
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "Azure":
+                        case "azure":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-azure-key-vault").append("</artifactId>\n");
@@ -288,13 +288,13 @@ class ExportCamelMain extends Export {
 
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             exportAwsSecretsRefreshProp(properties);
                             break;
-                        case "GCP":
+                        case "gcp":
                             exportGcpSecretsRefreshProp(properties);
                             break;
-                        case "Azure":
+                        case "azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
                         default:
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index 43886ea1f85..0c37359f05e 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -191,13 +191,13 @@ class ExportQuarkus extends Export {
 
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             exportAwsSecretsRefreshProp(properties);
                             break;
-                        case "GCP":
+                        case "gcp":
                             exportGcpSecretsRefreshProp(properties);
                             break;
-                        case "Azure":
+                        case "azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
                         default:
@@ -311,21 +311,21 @@ class ExportQuarkus extends Export {
                 List<String> providers = getSecretProviders();
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             MavenGav awsGav = new MavenGav();
                             awsGav.setGroupId("org.apache.camel.quarkus");
                             awsGav.setArtifactId("camel-quarkus-aws-secrets-manager");
                             awsGav.setVersion(null);
                             gavs.add(awsGav);
                             break;
-                        case "GCP":
+                        case "gcp":
                             MavenGav gcpGav = new MavenGav();
                             gcpGav.setGroupId("org.apache.camel.quarkus");
                             gcpGav.setArtifactId("camel-quarkus-google-secret-manager");
                             gcpGav.setVersion(null);
                             gavs.add(gcpGav);
                             break;
-                        case "Azure":
+                        case "azure":
                             MavenGav azureGav = new MavenGav();
                             azureGav.setGroupId("org.apache.camel.quarkus");
                             azureGav.setArtifactId("camel-quarkus-azure-key-vault");
@@ -477,21 +477,21 @@ class ExportQuarkus extends Export {
                 List<String> providers = getSecretProviders();
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-quarkus-aws-secrets-manager")
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "GCP":
+                        case "gcp":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-quarkus-google-secret-manager")
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "Azure":
+                        case "azure":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-quarkus-azure-key-vault")
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index a7639359dcb..c6539f6babc 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -262,21 +262,21 @@ class ExportSpringBoot extends Export {
                 List<String> providers = getSecretProviders();
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-aws-secrets-manager-starter")
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "GCP":
+                        case "gcp":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-google-secret-manager-starter")
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
-                        case "Azure":
+                        case "azure":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
                             sb.append("            <artifactId>").append("camel-azure-key-vault-starter")
@@ -365,21 +365,21 @@ class ExportSpringBoot extends Export {
                 List<String> providers = getSecretProviders();
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             MavenGav awsGav = new MavenGav();
                             awsGav.setGroupId("org.apache.camel.springboot");
                             awsGav.setArtifactId("camel-aws-secrets-manager-starter");
                             awsGav.setVersion(null);
                             gavs.add(awsGav);
                             break;
-                        case "GCP":
+                        case "gcp":
                             MavenGav gcpGav = new MavenGav();
                             gcpGav.setGroupId("org.apache.camel.springboot");
                             gcpGav.setArtifactId("camel-google-secret-manager-starter");
                             gcpGav.setVersion(null);
                             gavs.add(gcpGav);
                             break;
-                        case "Azure":
+                        case "azure":
                             MavenGav azureGav = new MavenGav();
                             azureGav.setGroupId("org.apache.camel.springboot");
                             azureGav.setArtifactId("camel-azure-key-vault-starter");
@@ -458,13 +458,13 @@ class ExportSpringBoot extends Export {
 
                 for (String provider : providers) {
                     switch (provider) {
-                        case "AWS":
+                        case "aws":
                             exportAwsSecretsRefreshProp(properties);
                             break;
-                        case "GCP":
+                        case "gcp":
                             exportGcpSecretsRefreshProp(properties);
                             break;
-                        case "Azure":
+                        case "azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
                         default:


[camel] 03/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c063a1ae504c0951484e7fe9a0cd9b892a09076b
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 10:44:28 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../dsl/jbang/core/commands/ExportSpringBoot.java  | 90 ++++++++++++++++++++--
 1 file changed, 85 insertions(+), 5 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index dcb50fd593d..923bee9c293 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -21,11 +21,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Properties;
-import java.util.Set;
+import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
@@ -257,6 +253,34 @@ class ExportSpringBoot extends Export {
             }
             sb.append("        </dependency>\n");
         }
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-aws-secrets-manager-starter").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "GCP":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-google-secret-manager-starter").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "Azure":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-azure-key-vault-starter").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                    }
+                }
+            }
+        }
         context = context.replaceFirst("\\{\\{ \\.CamelDependencies }}", sb.toString());
 
         // add jkube profiles if there is jkube version property
@@ -328,6 +352,38 @@ class ExportSpringBoot extends Export {
             gavs.add(gav);
         }
 
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            MavenGav awsGav = new MavenGav();
+                            awsGav.setGroupId("org.apache.camel.springboot");
+                            awsGav.setArtifactId("camel-aws-secrets-manager-starter");
+                            awsGav.setVersion(null);
+                            gavs.add(awsGav);
+                            break;
+                        case "GCP":
+                            MavenGav gcpGav = new MavenGav();
+                            gcpGav.setGroupId("org.apache.camel.springboot");
+                            gcpGav.setArtifactId("camel-google-secret-manager-starter");
+                            gcpGav.setVersion(null);
+                            gavs.add(gcpGav);
+                            break;
+                        case "Azure":
+                            MavenGav azureGav = new MavenGav();
+                            azureGav.setGroupId("org.apache.camel.springboot");
+                            azureGav.setArtifactId("camel-azure-key-vault-starter");
+                            azureGav.setVersion(null);
+                            gavs.add(azureGav);
+                            break;
+                    }
+                }
+            }
+        }
+
         // sort artifacts
         gavs.sort(mavenGavComparator());
 
@@ -385,6 +441,30 @@ class ExportSpringBoot extends Export {
         }
     }
 
+    @Override
+    protected void prepareApplicationProperties(Properties properties) {
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            exportAwsSecretsRefreshProp(properties);
+                            break;
+                        case "GCP":
+                            exportGcpSecretsRefreshProp(properties);
+                            break;
+                        case "Azure":
+                            exportAzureSecretsRefreshProp(properties);
+                            break;
+                    }
+                }
+            }
+        }
+    }
+
     @Override
     protected String applicationPropertyLine(String key, String value) {
         // camel.main.x should be renamed to camel.springboot.x


[camel] 09/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 6523f79c7480f50378257253c6024e88812094ee
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:14:05 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java  | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index 3ae63594824..a7639359dcb 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -21,7 +21,11 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.nio.charset.StandardCharsets;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;


[camel] 06/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 6c264887535a1b440959427a78058386019e81a2
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:04:24 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java   | 4 ++++
 .../org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java     | 6 ++++++
 .../org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java  | 4 ++++
 3 files changed, 14 insertions(+)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index 6185a503844..1485d0dfef1 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -221,6 +221,8 @@ class ExportCamelMain extends Export {
                             sb.append("            <artifactId>").append("camel-azure-key-vault").append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
+                        default:
+                            break;
                     }
                 }
             }
@@ -295,6 +297,8 @@ class ExportCamelMain extends Export {
                         case "Azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
+                        default:
+                            break;
                     }
                 }
             }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index 97bc3d1f67f..43886ea1f85 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -200,6 +200,8 @@ class ExportQuarkus extends Export {
                         case "Azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
+                        default:
+                            break;
                     }
                 }
             }
@@ -330,6 +332,8 @@ class ExportQuarkus extends Export {
                             azureGav.setVersion(null);
                             gavs.add(azureGav);
                             break;
+                        default:
+                            break;
                     }
                 }
             }
@@ -494,6 +498,8 @@ class ExportQuarkus extends Export {
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
+                        default:
+                            break;
                     }
                 }
             }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index f8f92a2dbc2..de6dab18e31 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -380,6 +380,8 @@ class ExportSpringBoot extends Export {
                             azureGav.setVersion(null);
                             gavs.add(azureGav);
                             break;
+                        default:
+                            break;
                     }
                 }
             }
@@ -459,6 +461,8 @@ class ExportSpringBoot extends Export {
                         case "Azure":
                             exportAzureSecretsRefreshProp(properties);
                             break;
+                        default:
+                            break;
                     }
                 }
             }


[camel] 07/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit e45f7864bcd8b35e7a856899260952c91fd0b608
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:05:45 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../camel/dsl/jbang/core/commands/ExportBaseCommand.java   | 14 +++++++-------
 .../camel/dsl/jbang/core/commands/ExportSpringBoot.java    |  2 ++
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 04ce8f46978..cbed118586f 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -151,6 +151,13 @@ abstract class ExportBaseCommand extends CamelCommand {
                         description = "Additional maven properties, ex. --additional-properties=prop1=foo,prop2=bar")
     protected String additionalProperties;
 
+    @CommandLine.Option(names = { "--secrets-refresh" }, defaultValue = "false", description = "Enabling secrets refresh")
+    protected boolean secretsRefresh;
+
+    @CommandLine.Option(names = { "--secrets-refresh-providers" },
+            description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
+    protected String secretsRefreshProviders;
+    
     @CommandLine.Option(names = { "--logging" }, defaultValue = "false",
                         description = "Can be used to turn on logging (logs to file in <user home>/.camel directory)")
     boolean logging;
@@ -159,13 +166,6 @@ abstract class ExportBaseCommand extends CamelCommand {
                         description = "Will be quiet, only print when error occurs")
     boolean quiet;
 
-    @CommandLine.Option(names = { "--secrets-refresh" }, defaultValue = "false", description = "Enabling secrets refresh")
-    protected boolean secretsRefresh;
-
-    @CommandLine.Option(names = { "--secrets-refresh-providers" },
-                        description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
-    protected String secretsRefreshProviders;
-
     public ExportBaseCommand(CamelJBangMain main) {
         super(main);
     }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index de6dab18e31..3ae63594824 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -279,6 +279,8 @@ class ExportSpringBoot extends Export {
                                     .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
+                        default:
+                            break;
                     }
                 }
             }


[camel] 04/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c04f7396d89e4bdb7bb013930f46f2bbabebe9a9
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:01:06 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../dsl/jbang/core/commands/ExportCamelMain.java   | 53 ++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index f25284eb43a..2005c27950f 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -196,6 +196,36 @@ class ExportCamelMain extends Export {
             }
             sb.append("        </dependency>\n");
         }
+
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-aws-secrets-manager").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "GCP":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-google-secret-manager").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "Azure":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-azure-key-vault").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                    }
+                }
+            }
+        }
+
         context = context.replaceFirst("\\{\\{ \\.CamelDependencies }}", sb.toString());
 
         IOHelper.writeText(context, new FileOutputStream(pom, false));
@@ -248,4 +278,27 @@ class ExportCamelMain extends Export {
         safeCopy(is, new File(srcResourcesDir, "assembly/runner.xml"));
     }
 
+    @Override
+    protected void prepareApplicationProperties(Properties properties) {
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            exportAwsSecretsRefreshProp(properties);
+                            break;
+                        case "GCP":
+                            exportGcpSecretsRefreshProp(properties);
+                            break;
+                        case "Azure":
+                            exportAzureSecretsRefreshProp(properties);
+                            break;
+                    }
+                }
+            }
+        }
+    }
 }


[camel] 08/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 1959eba85039c147347f63f725b889b1c010bcc5
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:06:35 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java   | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index cbed118586f..80d81c71d4d 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -155,9 +155,9 @@ abstract class ExportBaseCommand extends CamelCommand {
     protected boolean secretsRefresh;
 
     @CommandLine.Option(names = { "--secrets-refresh-providers" },
-            description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
+                        description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
     protected String secretsRefreshProviders;
-    
+
     @CommandLine.Option(names = { "--logging" }, defaultValue = "false",
                         description = "Can be used to turn on logging (logs to file in <user home>/.camel directory)")
     boolean logging;


[camel] 05/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 16ae9e4b6bbd1321ae0fa04126a55b4cad9617d3
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 11:01:41 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../apache/camel/dsl/jbang/core/commands/Export.java  |  3 ++-
 .../dsl/jbang/core/commands/ExportBaseCommand.java    |  4 ++--
 .../dsl/jbang/core/commands/ExportCamelMain.java      |  9 ++++-----
 .../camel/dsl/jbang/core/commands/ExportQuarkus.java  | 19 +++++++++----------
 .../dsl/jbang/core/commands/ExportSpringBoot.java     | 18 +++++++++---------
 5 files changed, 26 insertions(+), 27 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
index d4afbf84098..18ef501b3fa 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
@@ -64,7 +64,8 @@ public class Export extends ExportBaseCommand {
             this.buildTool = prop.getProperty("camel.jbang.buildTool", this.buildTool);
             this.secretsRefresh
                     = "true".equals(prop.getProperty("camel.jbang.secretsRefresh", this.secretsRefresh ? "true" : "false"));
-            this.secretsRefreshProviders = prop.getProperty("camel.jbang.secretsRefreshProviders", this.secretsRefreshProviders);
+            this.secretsRefreshProviders
+                    = prop.getProperty("camel.jbang.secretsRefreshProviders", this.secretsRefreshProviders);
         }
 
         if (runtime == null) {
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 304dbef14fa..04ce8f46978 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -162,7 +162,8 @@ abstract class ExportBaseCommand extends CamelCommand {
     @CommandLine.Option(names = { "--secrets-refresh" }, defaultValue = "false", description = "Enabling secrets refresh")
     protected boolean secretsRefresh;
 
-    @CommandLine.Option(names = { "--secrets-refresh-providers" }, description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
+    @CommandLine.Option(names = { "--secrets-refresh-providers" },
+                        description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
     protected String secretsRefreshProviders;
 
     public ExportBaseCommand(CamelJBangMain main) {
@@ -733,7 +734,6 @@ abstract class ExportBaseCommand extends CamelCommand {
         }
     }
 
-
     protected void exportAwsSecretsRefreshProp(Properties properties) {
         properties.setProperty("camel.vault.aws.accessKey", "<accessKey>");
         properties.setProperty("camel.vault.aws.secretKey", "<secretKey>");
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index 2005c27950f..6185a503844 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -200,8 +200,7 @@ class ExportCamelMain extends Export {
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             sb.append("        <dependency>\n");
@@ -212,7 +211,8 @@ class ExportCamelMain extends Export {
                         case "GCP":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-google-secret-manager").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-google-secret-manager")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                         case "Azure":
@@ -284,8 +284,7 @@ class ExportCamelMain extends Export {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
 
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             exportAwsSecretsRefreshProp(properties);
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index 30f6e49856f..97bc3d1f67f 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -26,7 +26,6 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.StringJoiner;
-import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 import org.apache.camel.catalog.CamelCatalog;
@@ -190,8 +189,7 @@ class ExportQuarkus extends Export {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
 
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             exportAwsSecretsRefreshProp(properties);
@@ -309,8 +307,7 @@ class ExportQuarkus extends Export {
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             MavenGav awsGav = new MavenGav();
@@ -474,25 +471,27 @@ class ExportQuarkus extends Export {
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-quarkus-aws-secrets-manager").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-aws-secrets-manager")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                         case "GCP":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-quarkus-google-secret-manager").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-google-secret-manager")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                         case "Azure":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-quarkus-azure-key-vault").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-azure-key-vault")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                     }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index 923bee9c293..f8f92a2dbc2 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -256,25 +256,27 @@ class ExportSpringBoot extends Export {
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-aws-secrets-manager-starter").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-aws-secrets-manager-starter")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                         case "GCP":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-google-secret-manager-starter").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-google-secret-manager-starter")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                         case "Azure":
                             sb.append("        <dependency>\n");
                             sb.append("            <groupId>").append("org.apache.camel.springboot").append("</groupId>\n");
-                            sb.append("            <artifactId>").append("camel-azure-key-vault-starter").append("</artifactId>\n");
+                            sb.append("            <artifactId>").append("camel-azure-key-vault-starter")
+                                    .append("</artifactId>\n");
                             sb.append("        </dependency>\n");
                             break;
                     }
@@ -355,8 +357,7 @@ class ExportSpringBoot extends Export {
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             MavenGav awsGav = new MavenGav();
@@ -447,8 +448,7 @@ class ExportSpringBoot extends Export {
             if (secretsRefreshProviders != null) {
                 List<String> providers = getSecretProviders();
 
-                for (String provider : providers
-                ) {
+                for (String provider : providers) {
                     switch (provider) {
                         case "AWS":
                             exportAwsSecretsRefreshProp(properties);


[camel] 01/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit c323dcb4d6fe4f0d4489e6d0289e8d98622cd981
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 10:22:42 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../camel/dsl/jbang/core/commands/Export.java      |  5 ++
 .../dsl/jbang/core/commands/ExportBaseCommand.java |  6 +++
 .../dsl/jbang/core/commands/ExportQuarkus.java     | 59 ++++++++++++++++++++++
 3 files changed, 70 insertions(+)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
index 867a668bd3e..d4afbf84098 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
@@ -62,6 +62,9 @@ public class Export extends ExportBaseCommand {
                     = "true".equals(prop.getProperty("camel.jbang.gradleWrapper", this.gradleWrapper ? "true" : "false"));
             this.exportDir = prop.getProperty("camel.jbang.exportDir", this.exportDir);
             this.buildTool = prop.getProperty("camel.jbang.buildTool", this.buildTool);
+            this.secretsRefresh
+                    = "true".equals(prop.getProperty("camel.jbang.secretsRefresh", this.secretsRefresh ? "true" : "false"));
+            this.secretsRefreshProviders = prop.getProperty("camel.jbang.secretsRefreshProviders", this.secretsRefreshProviders);
         }
 
         if (runtime == null) {
@@ -111,6 +114,8 @@ public class Export extends ExportBaseCommand {
         cmd.buildTool = this.buildTool;
         cmd.quiet = this.quiet;
         cmd.additionalProperties = this.additionalProperties;
+        cmd.secretsRefresh = this.secretsRefresh;
+        cmd.secretsRefreshProviders = this.secretsRefreshProviders;
         // run export
         return cmd.export();
     }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 1131e31f5b7..56f3a3b6342 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -159,6 +159,12 @@ abstract class ExportBaseCommand extends CamelCommand {
                         description = "Will be quiet, only print when error occurs")
     boolean quiet;
 
+    @CommandLine.Option(names = { "--secrets-refresh" }, defaultValue = "false", description = "Enabling secrets refresh")
+    protected boolean secretsRefresh;
+
+    @CommandLine.Option(names = { "--secrets-refresh-providers" }, description = "Comma separated list of providers in the set AWS, GCP and Azure, to use in combination with --secrets-refresh option")
+    protected String secretsRefreshProviders;
+
     public ExportBaseCommand(CamelJBangMain main) {
         super(main);
     }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index c551af1a63e..d35097abaca 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -26,6 +26,7 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.StringJoiner;
+import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 import org.apache.camel.catalog.CamelCatalog;
@@ -185,7 +186,65 @@ class ExportQuarkus extends Export {
                 properties.setProperty("camel.main.routes-include-pattern", routes);
             }
         }
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = Pattern.compile("\\,")
+                        .splitAsStream(secretsRefreshProviders)
+                        .collect(Collectors.toList());
+
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            exportAwsSecretsRefreshProp(properties);
+                            break;
+                        case "GCP":
+                            exportGcpSecretsRefreshProp(properties);
+                            break;
+                        case "Azure":
+                            exportAzureSecretsRefreshProp(properties);
+                            break;
+                    }
+                }
+            }
+        }
+    }
+
+    private void exportAwsSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.aws.accessKey", "<accessKey>");
+        properties.setProperty("camel.vault.aws.secretKey", "<secretKey>");
+        properties.setProperty("camel.vault.aws.region", "<region>");
+        properties.setProperty("camel.vault.aws.useDefaultCredentialProvider", "<useDefaultCredentialProvider>");
+        properties.setProperty("camel.vault.aws.refreshEnabled", "true");
+        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.aws.secrets", "<secrets>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
+    }
+
+    private void exportGcpSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.gcp.serviceAccountKey", "<serviceAccountKey>");
+        properties.setProperty("camel.vault.gcp.projectId", "<projectId>");
+        properties.setProperty("camel.vault.gcp.useDefaultInstance", "<useDefaultInstance>");
+        properties.setProperty("camel.vault.gcp.refreshEnabled", "true");
+        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.gcp.secrets", "<secrets>");
+        properties.setProperty("camel.vault.gcp.subscriptionName", "<subscriptionName>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
+    }
 
+    private void exportAzureSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.azure.tenantId", "<tenantId>");
+        properties.setProperty("camel.vault.azure.clientId", "<clientId>");
+        properties.setProperty("camel.vault.azure.clientSecret", "<clientSecret>");
+        properties.setProperty("camel.vault.azure.vaultName", "<vaultName>");
+        properties.setProperty("camel.vault.azure.refreshEnabled", "true");
+        properties.setProperty("camel.vault.azure.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.azure.secrets", "<secrets>");
+        properties.setProperty("camel.vault.azure.eventhubConnectionString", "<eventhubConnectionString>");
+        properties.setProperty("camel.vault.azure.blobAccountName", "<blobAccountName>");
+        properties.setProperty("camel.vault.azure.blobContainerName", "<blobContainerName>");
+        properties.setProperty("camel.vault.azure.blobAccessKey", "<blobAccessKey>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
     }
 
     private static String removeScheme(String s) {


[camel] 02/10: CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch camel-3.20.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 28e74c556913a1091e2090bd10e06c748d6e6f81
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue May 9 10:23:20 2023 +0200

    CAMEL-19099 - Camel-Jbang Export: Add a flag to include secret refresh properties in application.properties
    
    Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
 .../dsl/jbang/core/commands/ExportBaseCommand.java |  49 ++++++++++
 .../dsl/jbang/core/commands/ExportQuarkus.java     | 101 +++++++++++++--------
 2 files changed, 110 insertions(+), 40 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 56f3a3b6342..304dbef14fa 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -732,4 +732,53 @@ abstract class ExportBaseCommand extends CamelCommand {
             }
         }
     }
+
+
+    protected void exportAwsSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.aws.accessKey", "<accessKey>");
+        properties.setProperty("camel.vault.aws.secretKey", "<secretKey>");
+        properties.setProperty("camel.vault.aws.region", "<region>");
+        properties.setProperty("camel.vault.aws.useDefaultCredentialProvider", "<useDefaultCredentialProvider>");
+        properties.setProperty("camel.vault.aws.refreshEnabled", "true");
+        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.aws.secrets", "<secrets>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
+    }
+
+    protected void exportGcpSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.gcp.serviceAccountKey", "<serviceAccountKey>");
+        properties.setProperty("camel.vault.gcp.projectId", "<projectId>");
+        properties.setProperty("camel.vault.gcp.useDefaultInstance", "<useDefaultInstance>");
+        properties.setProperty("camel.vault.gcp.refreshEnabled", "true");
+        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.gcp.secrets", "<secrets>");
+        properties.setProperty("camel.vault.gcp.subscriptionName", "<subscriptionName>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
+    }
+
+    protected void exportAzureSecretsRefreshProp(Properties properties) {
+        properties.setProperty("camel.vault.azure.tenantId", "<tenantId>");
+        properties.setProperty("camel.vault.azure.clientId", "<clientId>");
+        properties.setProperty("camel.vault.azure.clientSecret", "<clientSecret>");
+        properties.setProperty("camel.vault.azure.vaultName", "<vaultName>");
+        properties.setProperty("camel.vault.azure.refreshEnabled", "true");
+        properties.setProperty("camel.vault.azure.refreshPeriod", "30000");
+        properties.setProperty("camel.vault.azure.secrets", "<secrets>");
+        properties.setProperty("camel.vault.azure.eventhubConnectionString", "<eventhubConnectionString>");
+        properties.setProperty("camel.vault.azure.blobAccountName", "<blobAccountName>");
+        properties.setProperty("camel.vault.azure.blobContainerName", "<blobContainerName>");
+        properties.setProperty("camel.vault.azure.blobAccessKey", "<blobAccessKey>");
+        properties.setProperty("camel.main.context-reload-enabled", "true");
+    }
+
+    protected List<String> getSecretProviders() {
+        if (secretsRefreshProviders != null) {
+            List<String> providers = Pattern.compile("\\,")
+                    .splitAsStream(secretsRefreshProviders)
+                    .collect(Collectors.toList());
+            return providers;
+        } else {
+            return null;
+        }
+    }
 }
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index d35097abaca..30f6e49856f 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -188,9 +188,7 @@ class ExportQuarkus extends Export {
         }
         if (secretsRefresh) {
             if (secretsRefreshProviders != null) {
-                List<String> providers = Pattern.compile("\\,")
-                        .splitAsStream(secretsRefreshProviders)
-                        .collect(Collectors.toList());
+                List<String> providers = getSecretProviders();
 
                 for (String provider : providers
                 ) {
@@ -210,43 +208,6 @@ class ExportQuarkus extends Export {
         }
     }
 
-    private void exportAwsSecretsRefreshProp(Properties properties) {
-        properties.setProperty("camel.vault.aws.accessKey", "<accessKey>");
-        properties.setProperty("camel.vault.aws.secretKey", "<secretKey>");
-        properties.setProperty("camel.vault.aws.region", "<region>");
-        properties.setProperty("camel.vault.aws.useDefaultCredentialProvider", "<useDefaultCredentialProvider>");
-        properties.setProperty("camel.vault.aws.refreshEnabled", "true");
-        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
-        properties.setProperty("camel.vault.aws.secrets", "<secrets>");
-        properties.setProperty("camel.main.context-reload-enabled", "true");
-    }
-
-    private void exportGcpSecretsRefreshProp(Properties properties) {
-        properties.setProperty("camel.vault.gcp.serviceAccountKey", "<serviceAccountKey>");
-        properties.setProperty("camel.vault.gcp.projectId", "<projectId>");
-        properties.setProperty("camel.vault.gcp.useDefaultInstance", "<useDefaultInstance>");
-        properties.setProperty("camel.vault.gcp.refreshEnabled", "true");
-        properties.setProperty("camel.vault.aws.refreshPeriod", "30000");
-        properties.setProperty("camel.vault.gcp.secrets", "<secrets>");
-        properties.setProperty("camel.vault.gcp.subscriptionName", "<subscriptionName>");
-        properties.setProperty("camel.main.context-reload-enabled", "true");
-    }
-
-    private void exportAzureSecretsRefreshProp(Properties properties) {
-        properties.setProperty("camel.vault.azure.tenantId", "<tenantId>");
-        properties.setProperty("camel.vault.azure.clientId", "<clientId>");
-        properties.setProperty("camel.vault.azure.clientSecret", "<clientSecret>");
-        properties.setProperty("camel.vault.azure.vaultName", "<vaultName>");
-        properties.setProperty("camel.vault.azure.refreshEnabled", "true");
-        properties.setProperty("camel.vault.azure.refreshPeriod", "30000");
-        properties.setProperty("camel.vault.azure.secrets", "<secrets>");
-        properties.setProperty("camel.vault.azure.eventhubConnectionString", "<eventhubConnectionString>");
-        properties.setProperty("camel.vault.azure.blobAccountName", "<blobAccountName>");
-        properties.setProperty("camel.vault.azure.blobContainerName", "<blobContainerName>");
-        properties.setProperty("camel.vault.azure.blobAccessKey", "<blobAccessKey>");
-        properties.setProperty("camel.main.context-reload-enabled", "true");
-    }
-
     private static String removeScheme(String s) {
         if (s.contains(":")) {
             return StringHelper.after(s, ":");
@@ -345,6 +306,38 @@ class ExportQuarkus extends Export {
             gavs.add(gav);
         }
 
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            MavenGav awsGav = new MavenGav();
+                            awsGav.setGroupId("org.apache.camel.quarkus");
+                            awsGav.setArtifactId("camel-quarkus-aws-secrets-manager");
+                            awsGav.setVersion(null);
+                            gavs.add(awsGav);
+                            break;
+                        case "GCP":
+                            MavenGav gcpGav = new MavenGav();
+                            gcpGav.setGroupId("org.apache.camel.quarkus");
+                            gcpGav.setArtifactId("camel-quarkus-google-secret-manager");
+                            gcpGav.setVersion(null);
+                            gavs.add(gcpGav);
+                            break;
+                        case "Azure":
+                            MavenGav azureGav = new MavenGav();
+                            azureGav.setGroupId("org.apache.camel.quarkus");
+                            azureGav.setArtifactId("camel-quarkus-azure-key-vault");
+                            azureGav.setVersion(null);
+                            gavs.add(azureGav);
+                            break;
+                    }
+                }
+            }
+        }
+
         // sort artifacts
         gavs.sort(mavenGavComparator());
 
@@ -478,6 +471,34 @@ class ExportQuarkus extends Export {
             }
             sb.append("        </dependency>\n");
         }
+        if (secretsRefresh) {
+            if (secretsRefreshProviders != null) {
+                List<String> providers = getSecretProviders();
+                for (String provider : providers
+                ) {
+                    switch (provider) {
+                        case "AWS":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-aws-secrets-manager").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "GCP":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-google-secret-manager").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                        case "Azure":
+                            sb.append("        <dependency>\n");
+                            sb.append("            <groupId>").append("org.apache.camel.quarkus").append("</groupId>\n");
+                            sb.append("            <artifactId>").append("camel-quarkus-azure-key-vault").append("</artifactId>\n");
+                            sb.append("        </dependency>\n");
+                            break;
+                    }
+                }
+            }
+        }
         context = context.replaceFirst("\\{\\{ \\.CamelDependencies }}", sb.toString());
 
         IOHelper.writeText(context, new FileOutputStream(pom, false));