envoyproxy/envoy

Support transcoding configuration in a separated file

Open

#25.977 aberto em 8 de mar. de 2023

Ver no GitHub
 (0 comments) (1 reaction) (0 assignees)C++ (5.373 forks)batch import
area/grpc-transcodinghelp wanted

Métricas do repositório

Stars
 (27.997 stars)
Métricas de merge de PR
 (Mesclagem média 8d) (378 fundiu PRs em 30d)

Description

Title: Support transcoding configuration in a separated file

Description: Google cloud supports GRPC transcoding configuration in 2 places:

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)

Guia do colaborador