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
commit 7b71cc497774ce5c6964367628f44afdb6f60cf3 Author: Andrea Cosentino <anco...@gmail.com> AuthorDate: Wed Jul 13 14:16:57 2022 +0200 CAMEL-18208 - vault: allow to retrieve a specific secret version/revision - Azure Key Vault --- .../operations/KeyVaultPropertiesSourceTestIT.java | 124 +++++++++++++++++++++ 1 file changed, 124 insertions(+) diff --git a/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java b/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java index 819f15aed1e..9e025ad27b8 100644 --- a/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java +++ b/components/camel-azure/camel-azure-key-vault/src/test/java/org/apache/camel/component/azure/key/vault/integration/operations/KeyVaultPropertiesSourceTestIT.java @@ -134,4 +134,128 @@ public class KeyVaultPropertiesSourceTestIT extends CamelTestSupport { assertMockEndpointsSatisfied(); }); } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("{{azure:database/password@79be21dd88774b91aff2dfa40fa9ea77}}")).to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("password123"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionAndNoFieldFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("{{azure:database@79be21dd88774b91aff2dfa40fa9ea77}}")).to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("{\"username\":\"admin\",\"password\":\"password123\",\"engine\":\"postgres\",\"host\":\"127.0.0.1\",\"port\":\"3128\",\"dbname\":\"db\"}"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionNoFieldAndDefaultValueFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("{{azure:database:pippo@79be21dd88774b91aff2dfa40fa9ea77}}")) + .to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("{\"username\":\"admin\",\"password\":\"password123\",\"engine\":\"postgres\",\"host\":\"127.0.0.1\",\"port\":\"3128\",\"dbname\":\"db\"}"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionNoFieldDefaultValueNotExistentSecretFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("{{azure:database:pippo@79be21dd88774b91aff2dfa40fa9ea78}}")) + .to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("pippo"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionNoFieldDefaultValueNotExistentVersionFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("azure:database1:pippo@79be21dd88774b91aff2dfa40fa9ea78}}")) + .to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("pippo"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } + + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_VAULT_NAME", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_ID", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_CLIENT_SECRET", matches = ".*") + @EnabledIfEnvironmentVariable(named = "CAMEL_VAULT_AZURE_TENANT_ID", matches = ".*") + @Test + public void testPropertiesWithVersionFieldAndDefaultValueFunction() throws Exception { + context.addRoutes(new RouteBuilder() { + @Override + public void configure() { + from("direct:version").setBody(simple("{{azure:database/password:pippo@79be21dd88774b91aff2dfa40fa9ea77}}}}")) + .to("mock:bar"); + } + }); + context.start(); + + getMockEndpoint("mock:bar").expectedBodiesReceived("password123"); + + template.sendBody("direct:version", "Hello World"); + assertMockEndpointsSatisfied(); + } }