gloo-mesh icon indicating copy to clipboard operation
gloo-mesh copied to clipboard

Please consider having the ability to provide an openAPI doc in a CR and have GlooMeshGateway generate the appropriate RouteTables and its dependencies if specified

Open caleygoff-invitae opened this issue 2 years ago • 0 comments

Version

1.2.x (latest stable)

Is your feature request related to a problem? Please describe.

Yes, presently it is difficult to create quickly and consistently create the routes needed for complex applications that represent endpoints for an apigateway. It then becomes even more complicated sharing this around with other developers who might want to consume the api.

Describe the solution you'd like

Implement discovery of REST endpoints based on OpenAPI specification provided as an URL in a CRD. Given the URL, serviceName, clusterName in CRD create, parse OpenAPI spec, generate a RouteTable based on parsed OpenAPI specification.

It would be helpful to also have the ability to use the AuthConfig with `gloo-mesh-addons if its installed on the cluster by specifying those details in this spec too

Implement discovery of gRPC functions Query gRPC service (using reflections API?) , based on result generate RouteTable

Similarly what Gloo Edge does with Discover Upstreams https://docs.solo.io/gloo-edge/latest/guides/traffic_management/destination_types/discovered_upstream/

Other feature that we also need : https://github.com/solo-io/gloo-mesh/issues/1937

Describe alternatives you've considered

We have considered and done some work in implementing a controller internally that will process a CRD that we specify with the above mentioned attributes (minus the AuthConfig details [yet]tm) using kubebuilder to perhaps draw a RouteTable and place it on the mgmt cluster. So that we might quickly spit out routes in the appropriate VirtualService/VirtualGateway/VirtualHost. But we wanted to try to avoid reimplementing the wheel if possible here and were curious if this is something that GlooMeshGateway could also provide.

Additional Context

No response

caleygoff-invitae avatar Mar 24 '22 18:03 caleygoff-invitae