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

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


The following commit(s) were added to refs/heads/main by this push:
     new 95be4cae2a6 CAMEL-18532 - GCP Secret Manager Dev Console: Add to Vault 
command for camel-jbang
95be4cae2a6 is described below

commit 95be4cae2a6324f42e513290cff8b65e9b2da53f
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Wed Sep 21 11:49:49 2022 +0200

    CAMEL-18532 - GCP Secret Manager Dev Console: Add to Vault command for 
camel-jbang
---
 .../apache/camel/cli/connector/LocalCliConnector.java   | 15 ++++++++++++---
 .../dsl/jbang/core/commands/process/ListVault.java      | 17 +++++++++++++++++
 2 files changed, 29 insertions(+), 3 deletions(-)

diff --git 
a/dsl/camel-cli-connector/src/main/java/org/apache/camel/cli/connector/LocalCliConnector.java
 
b/dsl/camel-cli-connector/src/main/java/org/apache/camel/cli/connector/LocalCliConnector.java
index 8ccbce5d778..dd2dcaf7701 100644
--- 
a/dsl/camel-cli-connector/src/main/java/org/apache/camel/cli/connector/LocalCliConnector.java
+++ 
b/dsl/camel-cli-connector/src/main/java/org/apache/camel/cli/connector/LocalCliConnector.java
@@ -424,14 +424,23 @@ public class LocalCliConnector extends ServiceSupport 
implements CliConnector, C
     private JsonObject collectVaults() {
         JsonObject root = new JsonObject();
         // aws-secrets is optional
-        Optional<DevConsole> dc = 
camelContext.adapt(ExtendedCamelContext.class)
+        Optional<DevConsole> dcAws = 
camelContext.adapt(ExtendedCamelContext.class)
                 .getDevConsoleResolver().lookupDevConsole("aws-secrets");
-        if (dc.isPresent()) {
-            JsonObject json = (JsonObject) 
dc.get().call(DevConsole.MediaType.JSON);
+        if (dcAws.isPresent()) {
+            JsonObject json = (JsonObject) 
dcAws.get().call(DevConsole.MediaType.JSON);
             if (json != null) {
                 root.put("aws-secrets", json);
             }
         }
+        // gcp-secrets is optional
+        Optional<DevConsole> dcGcp = 
camelContext.adapt(ExtendedCamelContext.class)
+                .getDevConsoleResolver().lookupDevConsole("gcp-secrets");
+        if (dcGcp.isPresent()) {
+            JsonObject json = (JsonObject) 
dcGcp.get().call(DevConsole.MediaType.JSON);
+            if (json != null) {
+                root.put("gcp-secrets", json);
+            }
+        }
         return root;
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java
 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java
index ee1f08ff7b5..548c77661e7 100644
--- 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java
+++ 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java
@@ -80,6 +80,23 @@ public class ListVault extends ProcessBaseCommand {
                                     rows.add(row);
                                 }
                             }
+                            JsonObject gcp = (JsonObject) 
vaults.get("gcp-secrets");
+                            if (gcp != null) {
+                                row.vault = "GCP";
+                                row.lastCheck = 
gcp.getLongOrDefault("lastCheckTimestamp", 0);
+                                row.lastReload = 
gcp.getLongOrDefault("lastReloadTimestamp", 0);
+                                JsonArray arr = (JsonArray) gcp.get("secrets");
+                                for (int i = 0; i < arr.size(); i++) {
+                                    if (i > 0) {
+                                        // create a copy for 2+ secrets
+                                        row = row.copy();
+                                    }
+                                    JsonObject jo = (JsonObject) arr.get(i);
+                                    row.secret = jo.getString("name");
+                                    row.timestamp = 
jo.getLongOrDefault("timestamp", 0);
+                                    rows.add(row);
+                                }
+                            }
                         }
                     }
                 });

Reply via email to