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

davsclaus 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 f62150458cd CAMEL-18534: camel-catalog - Include json schema for 
sensitive keys
f62150458cd is described below

commit f62150458cdd5c51644399e1631946d4a1cd99fe
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Wed Sep 21 14:04:56 2022 +0200

    CAMEL-18534: camel-catalog - Include json schema for sensitive keys
---
 .../apache/camel/catalog/main/sensitive-keys.json  | 74 ++++++++++++++++++++++
 .../maven/packaging/UpdateSensitizeHelper.java     | 24 ++++++-
 2 files changed, 96 insertions(+), 2 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/sensitive-keys.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/sensitive-keys.json
new file mode 100644
index 00000000000..488be216784
--- /dev/null
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/main/sensitive-keys.json
@@ -0,0 +1,74 @@
+[
+  "accesskey",
+  "accesstoken",
+  "accesstokensecret",
+  "accountkey",
+  "accountsid",
+  "acltoken",
+  "api_key",
+  "api_secret",
+  "apipassword",
+  "apiuser",
+  "apiusername",
+  "authkey",
+  "authorizationtoken",
+  "blobaccesskey",
+  "blobstoragesharedkeycredential",
+  "certresourcepassword",
+  "cipherkey",
+  "clientsecret",
+  "connectionstring",
+  "consumerkey",
+  "consumersecret",
+  "emailaddress",
+  "fulltokenid",
+  "httpproxypassword",
+  "keypassword",
+  "keystore",
+  "keystorepassword",
+  "login",
+  "oauthaccesstoken",
+  "oauthappid",
+  "oauthappsecret",
+  "oauthclientid",
+  "oauthclientsecret",
+  "oauthtoken",
+  "oauthtokenurl",
+  "p12filename",
+  "passcode",
+  "passphrase",
+  "password",
+  "privatekey",
+  "privatekeyfile",
+  "privatekeyname",
+  "privatekeypassword",
+  "proxyauthpassword",
+  "proxyauthusername",
+  "proxypassword",
+  "proxyuser",
+  "publickeyid",
+  "publishkey",
+  "queueownerawsaccountid",
+  "refreshtoken",
+  "sasljaasconfig",
+  "secretkey",
+  "securerandom",
+  "sharedaccesskey",
+  "sourceblobaccesskey",
+  "sslkeypassword",
+  "sslkeystore",
+  "sslkeystorepassword",
+  "sslpassword",
+  "ssltruststorepassword",
+  "subscribekey",
+  "systemid",
+  "token",
+  "tokencredential",
+  "user",
+  "userauthenticationcredentials",
+  "username",
+  "userpassword",
+  "verificationcode",
+  "webhookverifytoken",
+  "zookeeperpassword"
+]
diff --git 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSensitizeHelper.java
 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSensitizeHelper.java
index 9b8dcc4958c..e3c98b49cc3 100644
--- 
a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSensitizeHelper.java
+++ 
b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/UpdateSensitizeHelper.java
@@ -34,6 +34,7 @@ import org.apache.camel.tooling.model.JsonMapper;
 import org.apache.camel.tooling.model.LanguageModel;
 import org.apache.camel.tooling.util.PackageHelper;
 import org.apache.camel.tooling.util.Strings;
+import org.apache.camel.util.json.JsonArray;
 import org.apache.camel.util.json.JsonObject;
 import org.apache.camel.util.json.Jsoner;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -87,7 +88,13 @@ public class UpdateSensitizeHelper extends 
AbstractGeneratorMojo {
 
             try {
                 String json = PackageHelper.loadText(file.toFile());
-                JsonObject obj = (JsonObject) Jsoner.deserialize(json);
+                Object jo = Jsoner.deserialize(json);
+                JsonObject obj;
+                if (jo instanceof JsonObject) {
+                    obj = (JsonObject) jo;
+                } else {
+                    continue;
+                }
 
                 Map<String, Object> model;
                 boolean isComponent = (model = obj.getMap("component")) != 
null;
@@ -149,10 +156,15 @@ public class UpdateSensitizeHelper extends 
AbstractGeneratorMojo {
             } else {
                 getLog().debug("No changes to 
camel-util/src/main/java/org/apache/camel/util/SensitiveUtils.java file");
             }
-
         } catch (Exception e) {
             throw new MojoExecutionException("Error updating 
SensitiveUtils.java", e);
         }
+
+        try {
+            updateSensitiveJsonSchema(baseDir, secrets);
+        } catch (Exception e) {
+            throw new MojoExecutionException("Error updating 
sensitive-keys.json", e);
+        }
     }
 
     private boolean updateSensitiveHelperKeys(File camelDir, Set<String> 
secrets) throws Exception {
@@ -229,4 +241,12 @@ public class UpdateSensitizeHelper extends 
AbstractGeneratorMojo {
         return false;
     }
 
+    private void updateSensitiveJsonSchema(File camelDir, Set<String> secrets) 
throws Exception {
+        File target = new File(camelDir, 
"src/generated/resources/org/apache/camel/catalog/main/sensitive-keys.json");
+        JsonArray arr = new JsonArray();
+        arr.addAll(secrets);
+        String json = JsonMapper.serialize(arr);
+        PackageHelper.writeText(target, json);
+    }
+
 }

Reply via email to