Merge branch '1.2.x'
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
<properties>
|
||||
<docs.main>spring-cloud-config</docs.main>
|
||||
<main.basedir>${basedir}/..</main.basedir>
|
||||
<docs.whitelisted.branches>1.1.x</docs.whitelisted.branches>
|
||||
<docs.whitelisted.branches>1.3.x</docs.whitelisted.branches>
|
||||
</properties>
|
||||
<build>
|
||||
<plugins>
|
||||
|
||||
2
pom.xml
2
pom.xml
@@ -11,7 +11,7 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-build</artifactId>
|
||||
<version>1.3.2.BUILD-SNAPSHOT</version>
|
||||
<version>1.3.2.RELEASE</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
</parent>
|
||||
<scm>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<artifactId>spring-cloud-dependencies-parent</artifactId>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<version>1.3.1.BUILD-SNAPSHOT</version>
|
||||
<version>1.3.2.RELEASE</version>
|
||||
<relativePath/>
|
||||
</parent>
|
||||
<artifactId>spring-cloud-config-dependencies</artifactId>
|
||||
|
||||
@@ -63,7 +63,7 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
@Override
|
||||
public void afterPropertiesSet() throws Exception {
|
||||
GitCredentialsProviderFactory credentialFactory = new GitCredentialsProviderFactory();
|
||||
super.setGitCredentialsProvider(credentialFactory.createFor(getUri(),
|
||||
super.setGitCredentialsProvider(credentialFactory.createFor(getUri(),
|
||||
getUsername(), getPassword(), getPassphrase()));
|
||||
super.afterPropertiesSet();
|
||||
for (String name : this.repos.keySet()) {
|
||||
@@ -88,10 +88,15 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
if (passphrase == null) {
|
||||
passphrase = getPassphrase();
|
||||
}
|
||||
repo.setGitCredentialsProvider(credentialFactory.createFor(repo.getUri(),
|
||||
user, pass, passphrase));
|
||||
repo.setGitCredentialsProvider(
|
||||
credentialFactory.createFor(repo.getUri(), user, pass, passphrase));
|
||||
repo.afterPropertiesSet();
|
||||
}
|
||||
if (!getBasedir().getParentFile().canWrite()) {
|
||||
throw new IllegalStateException(
|
||||
"Cannot write parent of basedir (please configure a writable location): "
|
||||
+ getBasedir());
|
||||
}
|
||||
}
|
||||
|
||||
public void setRepos(Map<String, PatternMatchingJGitEnvironmentRepository> repos) {
|
||||
@@ -119,7 +124,8 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
if (logger.isDebugEnabled()) {
|
||||
this.logger.debug("Cannot retrieve resource locations from "
|
||||
+ candidate.getUri() + ", cause: ("
|
||||
+ e.getClass().getSimpleName() + ") " + e.getMessage(), e);
|
||||
+ e.getClass().getSimpleName() + ") "
|
||||
+ e.getMessage(), e);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
@@ -141,7 +147,7 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
for (JGitEnvironmentRepository candidate : getRepositories(repository,
|
||||
application, profile, label)) {
|
||||
try {
|
||||
if (label==null) {
|
||||
if (label == null) {
|
||||
label = candidate.getDefaultLabel();
|
||||
}
|
||||
Environment source = candidate.findOne(application, profile,
|
||||
@@ -152,9 +158,11 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
}
|
||||
catch (Exception e) {
|
||||
if (logger.isDebugEnabled()) {
|
||||
this.logger.debug("Cannot load configuration from "
|
||||
+ candidate.getUri() + ", cause: ("
|
||||
+ e.getClass().getSimpleName() + ") " + e.getMessage(), e);
|
||||
this.logger.debug(
|
||||
"Cannot load configuration from " + candidate.getUri()
|
||||
+ ", cause: (" + e.getClass().getSimpleName()
|
||||
+ ") " + e.getMessage(),
|
||||
e);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
@@ -163,7 +171,7 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
}
|
||||
JGitEnvironmentRepository candidate = getRepository(this, application, profile,
|
||||
label);
|
||||
if (label==null) {
|
||||
if (label == null) {
|
||||
label = candidate.getDefaultLabel();
|
||||
}
|
||||
if (candidate == this) {
|
||||
@@ -191,7 +199,8 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
}
|
||||
String key = repository.getUri();
|
||||
|
||||
// cover the case where label is in the uri, but no label was sent with the request
|
||||
// cover the case where label is in the uri, but no label was sent with the
|
||||
// request
|
||||
if (key.contains("{label}") && label == null) {
|
||||
label = repository.getDefaultLabel();
|
||||
}
|
||||
@@ -216,7 +225,8 @@ public class MultipleJGitEnvironmentRepository extends JGitEnvironmentRepository
|
||||
File basedir = repository.getBasedir();
|
||||
BeanUtils.copyProperties(source, repository);
|
||||
repository.setUri(uri);
|
||||
repository.setBasedir(basedir);
|
||||
repository.setBasedir(
|
||||
new File(source.getBasedir().getParentFile(), basedir.getName()));
|
||||
return repository;
|
||||
}
|
||||
|
||||
|
||||
@@ -15,22 +15,27 @@
|
||||
*/
|
||||
package org.springframework.cloud.config.server.environment;
|
||||
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.cloud.config.environment.Environment;
|
||||
import org.springframework.cloud.config.server.environment.MultipleJGitEnvironmentRepository.PatternMatchingJGitEnvironmentRepository;
|
||||
import org.springframework.cloud.config.server.environment.SearchPathLocator.Locations;
|
||||
import org.springframework.cloud.config.server.test.ConfigServerTestUtils;
|
||||
import org.springframework.core.env.StandardEnvironment;
|
||||
import org.springframework.test.util.ReflectionTestUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import static org.hamcrest.CoreMatchers.containsString;
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
/**
|
||||
* @author Dave Syer
|
||||
@@ -46,6 +51,7 @@ public class MultipleJGitEnvironmentProfilePlaceholderRepositoryTests {
|
||||
public void init() throws Exception {
|
||||
String defaultUri = ConfigServerTestUtils.prepareLocalRepo("config-repo");
|
||||
this.repository.setUri(defaultUri);
|
||||
this.repository.setBasedir(new File("target/repos/parent_repo"));
|
||||
this.repository.setRepos(createRepositories());
|
||||
}
|
||||
|
||||
@@ -67,6 +73,7 @@ public class MultipleJGitEnvironmentProfilePlaceholderRepositoryTests {
|
||||
repo.setName(name);
|
||||
repo.setPattern(new String[] { pattern });
|
||||
repo.setUri(uri);
|
||||
repo.setBasedir(new File("target/repos/pattern_repos", name));
|
||||
return repo;
|
||||
}
|
||||
|
||||
@@ -84,11 +91,12 @@ public class MultipleJGitEnvironmentProfilePlaceholderRepositoryTests {
|
||||
Environment environment = this.repository.findOne("application",
|
||||
"test1-config-repo", "master");
|
||||
assertEquals(1, environment.getPropertySources().size());
|
||||
assertEquals(
|
||||
getUri("*").replace("{profile}", "test1-config-repo")
|
||||
+ "/application.yml",
|
||||
String uri = getUri("*").replace("{profile}", "test1-config-repo");
|
||||
assertEquals(uri + "/application.yml",
|
||||
environment.getPropertySources().get(0).getName());
|
||||
assertVersion(environment);
|
||||
assertThat(StringUtils.cleanPath(getRepository(uri).getBasedir().toString()),
|
||||
containsString("target/repos"));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -141,6 +149,13 @@ public class MultipleJGitEnvironmentProfilePlaceholderRepositoryTests {
|
||||
"test2-config-repo", "missing-config-repo" });
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private JGitEnvironmentRepository getRepository(String uri) {
|
||||
Map<String, JGitEnvironmentRepository> repos = (Map<String, JGitEnvironmentRepository>) ReflectionTestUtils
|
||||
.getField(repository, "placeholders");
|
||||
return repos.get(uri);
|
||||
}
|
||||
|
||||
private void assertVersion(Environment environment) {
|
||||
String version = environment.getVersion();
|
||||
assertNotNull("version was null", version);
|
||||
|
||||
@@ -16,8 +16,6 @@
|
||||
|
||||
package org.springframework.cloud.config.server.environment;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.LinkedHashMap;
|
||||
@@ -26,7 +24,11 @@ import java.util.Map;
|
||||
import org.eclipse.jgit.util.FileUtils;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.internal.matchers.ThrowableMessageMatcher;
|
||||
import org.junit.rules.ExpectedException;
|
||||
|
||||
import org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration;
|
||||
import org.springframework.boot.builder.SpringApplicationBuilder;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
@@ -38,6 +40,9 @@ import org.springframework.context.ConfigurableApplicationContext;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
|
||||
import static org.hamcrest.CoreMatchers.containsString;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
/**
|
||||
* @author Andy Chan (iceycake)
|
||||
* @author Dave Syer
|
||||
@@ -49,6 +54,9 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
|
||||
private File basedir = new File("target/config");
|
||||
|
||||
@Rule
|
||||
public ExpectedException expected = ExpectedException.none();
|
||||
|
||||
@Before
|
||||
public void init() throws Exception {
|
||||
if (this.basedir.exists()) {
|
||||
@@ -69,7 +77,8 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
String defaultRepoUri = ConfigServerTestUtils.prepareLocalRepo("config-repo");
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("bar", "staging", "master");
|
||||
Environment environment = repository.findOne("bar", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -86,7 +95,8 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri)
|
||||
.properties(repoMapping).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -98,12 +108,14 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
String test1RepoUri = ConfigServerTestUtils.prepareLocalRepo("test1-config-repo");
|
||||
|
||||
Map<String, Object> repoMapping = new LinkedHashMap<String, Object>();
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern", "*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern",
|
||||
"*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].uri", test1RepoUri);
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri)
|
||||
.properties(repoMapping).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -115,14 +127,17 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
String test1RepoUri = ConfigServerTestUtils.prepareLocalRepo("test1-config-repo");
|
||||
|
||||
Map<String, Object> repoMapping = new LinkedHashMap<String, Object>();
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern", "*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern",
|
||||
"*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].uri", test1RepoUri);
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri)
|
||||
.properties(repoMapping).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "staging,cloud", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "staging,cloud",
|
||||
"master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
}
|
||||
|
||||
@@ -132,16 +147,21 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
String test1RepoUri = ConfigServerTestUtils.prepareLocalRepo("test1-config-repo");
|
||||
|
||||
Map<String, Object> repoMapping = new LinkedHashMap<String, Object>();
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[0]", "*/staging,*");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[1]", "*/*,staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[2]", "*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[0]",
|
||||
"*/staging,*");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[1]",
|
||||
"*/*,staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].pattern[2]",
|
||||
"*/staging");
|
||||
repoMapping.put("spring.cloud.config.server.git.repos[test1].uri", test1RepoUri);
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri)
|
||||
.properties(repoMapping).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "cloud,staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "cloud,staging",
|
||||
"master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
environment = repository.findOne("test1-svc", "staging,cloud", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -157,15 +177,28 @@ public class MultipleJGitEnvironmentRepositoryIntegrationTests {
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri)
|
||||
.properties(repoMapping).run();
|
||||
EnvironmentRepository repository = this.context.getBean(EnvironmentRepository.class);
|
||||
EnvironmentRepository repository = this.context
|
||||
.getBean(EnvironmentRepository.class);
|
||||
repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = repository.findOne("test1-svc", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void nonWritableBasedir() throws IOException {
|
||||
String defaultRepoUri = ConfigServerTestUtils.prepareLocalRepo("config-repo");
|
||||
expected.expectCause(ThrowableMessageMatcher
|
||||
.hasMessage(containsString("Cannot write parent")));
|
||||
this.context = new SpringApplicationBuilder(TestConfiguration.class).web(false)
|
||||
.properties("spring.cloud.config.server.git.uri:" + defaultRepoUri,
|
||||
"spring.cloud.config.server.git.basedir:/tmp")
|
||||
.run();
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@EnableConfigurationProperties(ConfigServerProperties.class)
|
||||
@Import({ PropertyPlaceholderAutoConfiguration.class, EnvironmentRepositoryConfiguration.class })
|
||||
@Import({ PropertyPlaceholderAutoConfiguration.class,
|
||||
EnvironmentRepositoryConfiguration.class })
|
||||
protected static class TestConfiguration {
|
||||
}
|
||||
|
||||
|
||||
@@ -15,22 +15,25 @@
|
||||
*/
|
||||
package org.springframework.cloud.config.server.environment;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.cloud.config.environment.Environment;
|
||||
import org.springframework.cloud.config.server.environment.MultipleJGitEnvironmentRepository.PatternMatchingJGitEnvironmentRepository;
|
||||
import org.springframework.cloud.config.server.test.ConfigServerTestUtils;
|
||||
import org.springframework.core.env.StandardEnvironment;
|
||||
|
||||
import static org.hamcrest.CoreMatchers.containsString;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
/**
|
||||
* @author Andy Chan (iceycake)
|
||||
* @author Dave Syer
|
||||
@@ -40,7 +43,8 @@ import org.springframework.core.env.StandardEnvironment;
|
||||
public class MultipleJGitEnvironmentRepositoryTests {
|
||||
|
||||
private StandardEnvironment environment = new StandardEnvironment();
|
||||
private MultipleJGitEnvironmentRepository repository = new MultipleJGitEnvironmentRepository(this.environment);
|
||||
private MultipleJGitEnvironmentRepository repository = new MultipleJGitEnvironmentRepository(
|
||||
this.environment);
|
||||
|
||||
@Before
|
||||
public void init() throws Exception {
|
||||
@@ -49,7 +53,8 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
this.repository.setRepos(createRepositories());
|
||||
}
|
||||
|
||||
private Map<String, PatternMatchingJGitEnvironmentRepository> createRepositories() throws Exception {
|
||||
private Map<String, PatternMatchingJGitEnvironmentRepository> createRepositories()
|
||||
throws Exception {
|
||||
String test1Uri = ConfigServerTestUtils.prepareLocalRepo("test1-config-repo");
|
||||
|
||||
Map<String, PatternMatchingJGitEnvironmentRepository> repos = new HashMap<>();
|
||||
@@ -57,12 +62,14 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
return repos;
|
||||
}
|
||||
|
||||
private PatternMatchingJGitEnvironmentRepository createRepository(String name, String pattern, String uri) {
|
||||
private PatternMatchingJGitEnvironmentRepository createRepository(String name,
|
||||
String pattern, String uri) {
|
||||
PatternMatchingJGitEnvironmentRepository repo = new PatternMatchingJGitEnvironmentRepository();
|
||||
repo.setEnvironment(this.environment);
|
||||
repo.setName(name);
|
||||
repo.setPattern(new String[] {pattern});
|
||||
repo.setPattern(new String[] { pattern });
|
||||
repo.setUri(uri);
|
||||
repo.setBasedir(new File(this.repository.getBasedir().getParentFile(), name));
|
||||
return repo;
|
||||
}
|
||||
|
||||
@@ -78,14 +85,15 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
private void assertVersion(Environment environment) {
|
||||
String version = environment.getVersion();
|
||||
assertNotNull("version was null", version);
|
||||
assertTrue("version length was wrong", version.length() >= 40 && version.length() <= 64);
|
||||
assertTrue("version length was wrong",
|
||||
version.length() >= 40 && version.length() <= 64);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void defaultRepoNested() throws IOException {
|
||||
String uri = ConfigServerTestUtils.prepareLocalRepo("another-config-repo");
|
||||
this.repository.setUri(uri);
|
||||
this.repository.setSearchPaths(new String[] {"sub"});
|
||||
this.repository.setSearchPaths(new String[] { "sub" });
|
||||
this.repository.findOne("bar", "staging", "master");
|
||||
Environment environment = this.repository.findOne("bar", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -107,13 +115,13 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
public void defaultRepoTag() {
|
||||
Environment environment = this.repository.findOne("bar", "staging", "foo");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
assertEquals(this.repository.getUri() + "/bar.properties", environment
|
||||
.getPropertySources().get(0).getName());
|
||||
assertEquals(this.repository.getUri() + "/bar.properties",
|
||||
environment.getPropertySources().get(0).getName());
|
||||
assertVersion(environment);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void defaultRepoBasedir() {
|
||||
public void defaultRepoTwice() {
|
||||
this.repository.findOne("bar", "staging", "master");
|
||||
Environment environment = this.repository.findOne("bar", "staging", "master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
@@ -122,9 +130,18 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
assertVersion(environment);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void defaultRepoBasedir() {
|
||||
repository.setBasedir(new File("target/testBase"));
|
||||
assertThat(repository.getBasedir().toString(), containsString("target/testBase"));
|
||||
assertThat(repository.getRepos().get("test1").getBasedir().toString(),
|
||||
containsString("tmp/test1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void mappingRepo() {
|
||||
Environment environment = this.repository.findOne("test1-svc", "staging", "master");
|
||||
Environment environment = this.repository.findOne("test1-svc", "staging",
|
||||
"master");
|
||||
assertEquals(2, environment.getPropertySources().size());
|
||||
assertEquals(getUri("*test1*") + "/test1-svc.properties",
|
||||
environment.getPropertySources().get(0).getName());
|
||||
@@ -152,15 +169,15 @@ public class MultipleJGitEnvironmentRepositoryTests {
|
||||
assertVersion(environment);
|
||||
}
|
||||
|
||||
|
||||
private String getUri(String pattern) {
|
||||
String uri = null;
|
||||
|
||||
Map<String, PatternMatchingJGitEnvironmentRepository> repoMappings = this.repository.getRepos();
|
||||
Map<String, PatternMatchingJGitEnvironmentRepository> repoMappings = this.repository
|
||||
.getRepos();
|
||||
|
||||
for (PatternMatchingJGitEnvironmentRepository repo : repoMappings.values()) {
|
||||
String[] mappingPattern = repo.getPattern();
|
||||
if (mappingPattern != null && mappingPattern.length!=0) {
|
||||
if (mappingPattern != null && mappingPattern.length != 0) {
|
||||
uri = repo.getUri();
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user