spring-cloud / spring-cloud/spring-cloud-config
Enhance client side resolution of plain-text files
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 2k
- Forks
- 1.3k
- Avg merge
- 2d 59m
- Merged PRs (30d)
- 16
Description
Config server supports serving plain-text configuration files (for configuration tailored to specific libraries or environments), including placeholder resolution from config server properties. (See http://cloud.spring.io/spring-cloud-static/Dalston.SR1/#_serving_plain_text)
It seems that the only way to consume these resources (in OSS) is via RestTemplate or some similar REST client means. This can be complicated when there are additional hoops to jump through in order to resolve access to these files such as secured authentication/authorization around config server. This may require a client to muck about with authentication/authorization beans to get at the access token needed to consume those resources.
To make this easier such client situations, it would be useful to provide some means by which the clients can consume those resources, but without having to deal with the authentication/authorization specifics.
One possible (off-the-cuff) idea might be to provide some sort of ConfigServerResource or other type that would handle the OAuth concerns under the covers. Here is potential pseudo just to further elaborate the point but not yet fleshed out:
FileInputStream fis = configServer.getConfig("myapp","myprofile");
Along with auto resolution such as:
@Value("nginx.conf") // not sure this is possible with `.` in name
FileInputStream nginxConfFileStream
Regardless of the solution, ideally, the client-side piece would be part of Spring Cloud OSS generically, with hooks provided for SCS to provide OAuth details to be included in the request.
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
The issue does not name implementation files, tests, or entry points. Start by locating the existing client-side access path for plain-text Config Server resources and its authentication handling; done means clients can consume resolved files without managing OAuth details themselves, with hooks for secured SCS use.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring
- Domain
- backend, cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100