Hi Spring Cloud Team,

Looking at the architecture of spring-cloud, all components can work in a parallel fashion to offer high availability. With a remote configuration source like git repos, it is possible to run config servers picking the repo from cloud. But having a look at the documentation, it is only possible to pass one spring.cloud.config.server.git.uri. I have a use case wherein I am supposed to give multiple git repo uris under the same configuration in case of repo1 in aws regios-1 is not available then the same repo1 from region-2 should be picked. Managing the replication with Eureka is mentioned in the documentation, but not an option in every project.

What about the possibility to define multiple spring-cloud-config-server-git-uri_s separated by a comma?

Thanks for the nice project, Vijay Kambala

Comment From: ryanjbaxter

You can define more than one git repo and use a composite

https://docs.spring.io/spring-cloud-config/docs/3.0.4/reference/html/#composite-environment-repositories

then set spring.cloud.config.server.failOnCompositeError=false

Or you could use a load balancer infront of the two git servers and handle it that way.

Comment From: kambalavijay

Hi @ryanjbaxter , do composite repositories work in a way where if repo1 is unreachable does repo2 comes into play or takes the composition of both the repos. In case one is unreachable does it only pick the available repo?

Comment From: ryanjbaxter

If you set the property I mentioned a composite will create property sources for only those repos that do not fail. When both are available they both will contribute property sources but that shouldn't matter if the content is the same in both repos. You can also dictate priority by setting the order. This is all explained in the documentation.