From f93b78d07d14fdc691d5a2f69460a397fc73d5aa Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 12 Jun 2018 10:53:33 +0200 Subject: [PATCH] Introduce Key-Value API version in spring.cloud.vault.kv configuration. See gh-209. --- .../VaultBootstrapPropertySourceConfiguration.java | 4 +++- .../vault/config/VaultKeyValueBackendProperties.java | 11 ++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultBootstrapPropertySourceConfiguration.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultBootstrapPropertySourceConfiguration.java index f0cb7b63..5cae089d 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultBootstrapPropertySourceConfiguration.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultBootstrapPropertySourceConfiguration.java @@ -142,7 +142,9 @@ public class VaultBootstrapPropertySourceConfiguration implements InitializingBe keyValueBackend, Arrays.asList(applicationContext .getEnvironment().getActiveProfiles())); - if (keyValueBackend instanceof VaultKeyValueBackendProperties) { + if (keyValueBackend instanceof VaultKeyValueBackendProperties + && ((VaultKeyValueBackendProperties) keyValueBackend) + .getBackendVersion() == 2) { for (String context : contexts) { secretBackendConfigurer.add(KeyValueSecretBackendMetadata.create( diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultKeyValueBackendProperties.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultKeyValueBackendProperties.java index c3413ac7..0cd19bb0 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultKeyValueBackendProperties.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultKeyValueBackendProperties.java @@ -26,7 +26,7 @@ import org.springframework.util.StringUtils; import org.springframework.validation.annotation.Validated; /** - * Configuration properties for Vault using the generic backend. + * Configuration properties for Vault using the key-value backend. * * @author Mark Paluch * @since 2.0 @@ -64,6 +64,15 @@ public class VaultKeyValueBackendProperties implements EnvironmentAware, */ private String applicationName = "application"; + /** + * Key-Value backend version. Currently supported versions are: + * + */ + private int backendVersion = 2; + @Override public void setEnvironment(Environment environment) {