Support transcoding configuration in a separated file
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 428
Description
*Title*: *Support transcoding configuration in a separated file*
*Description*:
Google cloud supports GRPC transcoding configuration in 2 places:
- In the proto files through annotations (already supported in envoy proxy transcoding filter)
- In a separated yaml file: https://cloud.google.com/endpoints/docs/grpc/transcoding#configuring_transcoding_in_yaml
The GRPC-gateway does support this external configuration as well: https://grpc-ecosystem.github.io/grpc-gateway/docs/mapping/grpc_api_configuration/#using-an-external-configuration-file
This feature request is about adding a new optional field to the grpc-transcoding filter with the path of a file that meets the `HttpRules` specification from https://cloud.google.com/endpoints/docs/grpc-service-config/reference/rpc/google.api#http. The filter will look-up in this file how to transcode the request instead of just checking the proto descriptor (that would not require annotations)
Thanks to that, we could:
- advanced transcoding to external services (in those, we're not able to edit the proto description with annotations)
- easier path-based routing o different clusters running different versions of the service
- keep routing decisions exclusively in the envoy config (and not in the services proto)
Contributor guide
Assessment
This issue has not been assessed yet.