spring-cloud / spring-cloud/spring-cloud-config
Allow embedded config server to be disabled
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 2k
- Forks
- 1.3k
- Avg merge
- 2d 59m
- Merged PRs (30d)
- 16
Description
When embedding Config Server in an application, it should be possible to disable loading configuration from an external source unless the app deployer explicitly defines an EnvironmentRepository configuration (e.g. in a bootstrap.yml file provided in a spring.cloud.bootstrap.location outside of the deployed application jar file).
Currently this is difficult to do. If no configuration is provided, the default is to use a git repository but this will fail to load because a spring.cloud.config.server.git.uri is required. You can provide a native repository with a dummy location as a default, but this must be done with a composite type to allow alternative repositories to override this default.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing embedded Config Server startup and how the default EnvironmentRepository is selected when no repository configuration is supplied. The work is done when external configuration loading can be disabled by default while an explicitly defined EnvironmentRepository, including one supplied through an external bootstrap.yml, still takes effect.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, java, spring, spring-boot
- Domain
- backend, cloud
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100