spring-cloud / spring-cloud/spring-cloud-consul
Create property to allow characters that are not valid in a dns name.
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 822
- Forks
- 539
- Avg merge
- 9h 31m
- Merged PRs (30d)
- 7
Description
I want the service name to have forward slash(example users/v1/profile), but slash get replaced with hyphen(-).
Why are we replacing / from service name while consul support it and return the service details using http and DNS interfaces. Also, Zuul does recognize the service with slash/s.
Example
- http://localhost:8500/v1/catalog/service/users/v1/profile
- dig @localhost -p 8600 users/v1/profile.service.consul
Zuul also respect users/v1/profile as a service name and route request to host and port give as part of service registry.
The replacement and validation is happening in ConsulLifecycle class.
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 in the ConsulLifecycle class, where the service name replacement and validation are reported to occur. Trace how service names are registered and determine where a configurable option could preserve characters such as the forward slash. Done means the configured behavior supports names like users/v1/profile while existing replacement and validation behavior remains available when the option is not enabled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring-boot
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100