From f352ecf5f3c04dfb0a24786595ec9fa0e1f6a094 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Mon, 11 Jun 2018 13:14:33 -0400 Subject: [PATCH] Adds multi-repo shortcut support back. fixes gh-1055 --- .../MultipleJGitEnvironmentProperties.java | 7 +++++++ ...itEnvironmentRepositoryIntegrationTests.java | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentProperties.java b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentProperties.java index 3a1353a5..72b7f3d6 100644 --- a/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentProperties.java +++ b/spring-cloud-config-server/src/main/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentProperties.java @@ -58,6 +58,13 @@ public class MultipleJGitEnvironmentProperties extends JGitEnvironmentProperties */ private String name; + public PatternMatchingJGitEnvironmentProperties() { + } + + public PatternMatchingJGitEnvironmentProperties(String uri) { + setUri(uri); + } + public String[] getPattern() { return pattern; } diff --git a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryIntegrationTests.java b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryIntegrationTests.java index a81a3d82..1e155b36 100644 --- a/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryIntegrationTests.java +++ b/spring-cloud-config-server/src/test/java/org/springframework/cloud/config/server/environment/MultipleJGitEnvironmentRepositoryIntegrationTests.java @@ -24,6 +24,7 @@ import java.io.IOException; import java.util.LinkedHashMap; import java.util.Map; +import org.assertj.core.api.Assertions; import org.eclipse.jgit.util.FileUtils; import org.junit.After; import org.junit.Before; @@ -222,6 +223,22 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests { .run(); } + @Test + public void patternMatchingShortcutSyntax() throws IOException { + String defaultRepoUri = ConfigServerTestUtils.prepareLocalRepo("config-repo"); + String test1RepoUri = ConfigServerTestUtils.prepareLocalRepo("test1-config-repo"); + + this.context = new SpringApplicationBuilder(TestConfiguration.class) + .web(WebApplicationType.NONE) + .properties("spring.cloud.config.server.git.repos.admin:" + test1RepoUri, + "spring.cloud.config.server.git.uri:" + defaultRepoUri) + .run(); + + MultipleJGitEnvironmentProperties properties = this.context.getBean(MultipleJGitEnvironmentProperties.class); + Assertions.assertThat(properties.getRepos()).hasSize(1) + .containsOnlyKeys("admin"); + } + @Configuration @EnableConfigurationProperties(ConfigServerProperties.class) @Import({ PropertyPlaceholderAutoConfiguration.class,