diff --git a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/support/AbstractScmAccessor.java b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/support/AbstractScmAccessor.java index 160094b5..f92e506d 100644 --- a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/support/AbstractScmAccessor.java +++ b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/support/AbstractScmAccessor.java @@ -94,8 +94,8 @@ public abstract class AbstractScmAccessor implements ResourceLoaderAware { public AbstractScmAccessor(ConfigurableEnvironment environment, AbstractScmAccessorProperties properties) { this.environment = environment; - this.basedir = properties.getBasedir() == null ? createBaseDir() - : properties.getBasedir(); + this.setBasedir(properties.getBasedir() == null ? createBaseDir() + : properties.getBasedir()); this.passphrase = properties.getPassphrase(); this.password = properties.getPassword(); this.searchPaths = properties.getSearchPaths(); diff --git a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryTests.java b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryTests.java index b4796c22..987d9b9b 100644 --- a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryTests.java +++ b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryTests.java @@ -336,6 +336,18 @@ public class MultipleJGitEnvironmentRepositoryTests { this.repository.afterPropertiesSet(); } + @Test + public void exceptionNotThrownIfRelativeBasedirIsPassedByProperties() + throws Exception { + MultipleJGitEnvironmentProperties props = new MultipleJGitEnvironmentProperties(); + props.setBasedir(new File("relative")); + this.repository = new MultipleJGitEnvironmentRepository(this.environment, props); + String defaultUri = ConfigServerTestUtils.prepareLocalRepo("config-repo"); + this.repository.setUri(defaultUri); + this.repository.setRepos(createRepositories()); + this.repository.afterPropertiesSet(); + } + private String getUri(String pattern) { String uri = null;