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 058d51a6fc7 camel-aws - Add dev console for AWS secrets
058d51a6fc7 is described below
commit 058d51a6fc73bc684989b31cc4ca1c74acd7d39a
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Sep 8 14:09:45 2022 +0200
camel-aws - Add dev console for AWS secrets
---
.../camel/component/aws/secretsmanager/SecretsDevConsole.java | 9 +++++++++
.../aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java | 9 +++++++++
2 files changed, 18 insertions(+)
diff --git
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
index cb12c2080dc..6aeb5ebf5a6 100644
---
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
+++
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/SecretsDevConsole.java
@@ -81,6 +81,9 @@ public class SecretsDevConsole extends AbstractDevConsole {
Instant last = secretsRefreshTask.getLastCheckTime();
String s = last != null ?
TimeUtils.printSince(last.toEpochMilli()) : "none";
sb.append(String.format("\n Last Check: %s", s));
+ last = secretsRefreshTask.getLastReloadTime();
+ s = last != null ? TimeUtils.printSince(last.toEpochMilli()) :
"none";
+ sb.append(String.format("\n Last Reload: %s", s));
}
sb.append("\n\nSecrets in use:");
@@ -123,6 +126,12 @@ public class SecretsDevConsole extends AbstractDevConsole {
root.put("lastCheckTimestamp", timestamp);
root.put("lastCheckAge", TimeUtils.printSince(timestamp));
}
+ last = secretsRefreshTask.getLastReloadTime();
+ if (last != null) {
+ long timestamp = last.toEpochMilli();
+ root.put("lastReloadTimestamp", timestamp);
+ root.put("lastReloadAge", TimeUtils.printSince(timestamp));
+ }
}
JsonArray arr = new JsonArray();
root.put("secrets", arr);
diff --git
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
index fc5bb848000..f4f8f386769 100644
---
a/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
+++
b/components/camel-aws/camel-aws-secrets-manager/src/main/java/org/apache/camel/component/aws/secretsmanager/vault/CloudTrailReloadTriggerTask.java
@@ -67,6 +67,7 @@ public class CloudTrailReloadTriggerTask extends
ServiceSupport implements Camel
private SecretsManagerPropertiesFunction propertiesFunction;
private volatile Instant lastTime;
private volatile Instant lastCheckTime;
+ private volatile Instant lastReloadTime;
private final Map<String, Instant> updates = new HashMap<>();
public CloudTrailReloadTriggerTask() {
@@ -107,6 +108,13 @@ public class CloudTrailReloadTriggerTask extends
ServiceSupport implements Camel
return lastCheckTime;
}
+ /**
+ * Last time AWS secrets update triggered reload.
+ */
+ public Instant getLastReloadTime() {
+ return lastReloadTime;
+ }
+
@Override
protected void doStart() throws Exception {
super.doStart();
@@ -206,6 +214,7 @@ public class CloudTrailReloadTriggerTask extends
ServiceSupport implements Camel
ContextReloadStrategy reload =
camelContext.hasService(ContextReloadStrategy.class);
if (reload != null) {
// trigger reload
+ lastReloadTime = Instant.now();
reload.onReload(this);
}
}