cosmo icon indicating copy to clipboard operation
cosmo copied to clipboard

Support generating nodev1.EngineConfiguration from a supergraph

Open darren-west opened this issue 1 year ago • 7 comments

Hi 👋

I was looking at Cosmo router and was investigating if / how to generate an EngineConfiguration proto message from a Supergraph, so that the gateway could be configured with a supergraph.

I couldnt see any obvious way to achieve this right now, unless I am missing something?

The goal is to be able to pass the router a supergraph and start a cosmo router communicating with subgraphs.

Im guessing this could be possibly be achieved with some of the JavaScript packages although ideally I was looking at using GoLang to achieve it.

Thanks in advance.

darren-west avatar Oct 15 '24 09:10 darren-west

WunderGraph commits fully to Open Source and we want to make sure that we can help you as fast as possible. The roadmap is driven by our customers and we have to prioritize issues that are important to them. You can influence the priority by becoming a customer. Please contact us here.

github-actions[bot] avatar Oct 15 '24 09:10 github-actions[bot]

Hi @darren-west , could you please elaborate on your current setup. Are you trying to use Apollo studio with Cosmo Router?

thisisnithin avatar Oct 22 '24 09:10 thisisnithin

Hi @thisisnithin not with Apollo Studio but this is a good use case, I think accepting a supergraph gives the router a lot more flexibility.

I have a supergraph generated by composition and wanted to use this to evaluate the router, without using wundergraph schema registry.

darren-west avatar Oct 31 '24 12:10 darren-west

Any update on this? I'm quite keen to look into this although it looks quite involved.

darren-west avatar Nov 06 '24 13:11 darren-west

Hi @darren-west,

This would be a significant development effort. Please can you help me understand the use-case? Is this simply to avoid needing to supply your subgraphs to the composition library to generate an execution config? But why?

Aenimus avatar Nov 13 '24 18:11 Aenimus

Hi @Aenimus

Thanks for getting back to me, my main use case would be to support other schema registries such as Apollo and hive (guild). I quite like the approach of a supergraph for describing a distributed graph, feels like a good fit for a platform agnostic configuration.

What composition library were you mentioning, is there an example?

darren-west avatar Nov 13 '24 21:11 darren-west

Hi @darren-west,

I think this documentation would be helpful.

The wgc command you're looking for is wgc router compose. The docs should feel familiar if you've used Rover before.

Aenimus avatar Nov 26 '24 23:11 Aenimus