From 4d9ce35f4232a55660ef952696f3e7a8ec2396a6 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Mon, 25 Jan 2021 09:23:38 +0100 Subject: [PATCH] Fix spring.application.name resolution using the ConfigData API Resolves gh-566. --- .../vault/config/VaultConfigDataLocationResolver.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigDataLocationResolver.java b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigDataLocationResolver.java index 813599b3..e362e43a 100644 --- a/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigDataLocationResolver.java +++ b/spring-cloud-vault-config/src/main/java/org/springframework/cloud/vault/config/VaultConfigDataLocationResolver.java @@ -122,7 +122,14 @@ public class VaultConfigDataLocationResolver implements ConfigDataLocationResolv private static void registerVaultProperties(ConfigDataLocationResolverContext context) { context.getBootstrapContext().registerIfAbsent(VaultProperties.class, ignore -> { - return context.getBinder().bindOrCreate(VaultProperties.PREFIX, VaultProperties.class); + + VaultProperties vaultProperties = context.getBinder().bindOrCreate(VaultProperties.PREFIX, + VaultProperties.class); + + vaultProperties.setApplicationName(context.getBinder().bind("spring.application.name", String.class) + .orElse(vaultProperties.getApplicationName())); + + return vaultProperties; }); } @@ -168,7 +175,7 @@ public class VaultConfigDataLocationResolver implements ConfigDataLocationResolv Binder binder = context.getBinder(); kvProperties.setApplicationName(binder.bind("spring.cloud.vault.application-name", String.class) - .orElseGet(() -> binder.bind("spring.application-name", String.class).orElse(""))); + .orElseGet(() -> binder.bind("spring.application.name", String.class).orElse(""))); kvProperties.setProfiles(profiles.getActive()); return kvProperties;