graphql-go-tools icon indicating copy to clipboard operation
graphql-go-tools copied to clipboard

Add support for managed federation

Open StarpTech opened this issue 4 years ago • 1 comments

Hi, it would be great to support managed federation. The difference between federation is that the gateway is no longer responsible to configure and fetch the service schemas at runtime. The entire composed graph is provided by a single versioned artifact to the gateway.

References

  • https://www.apollographql.com/docs/federation/managed-federation/overview/
  • https://www.apollographql.com/docs/federation/#supergraph-schema

StarpTech avatar Sep 30 '21 09:09 StarpTech

Have you taken a look at the federation example? The datasource poller fetches SDLs from services, but it could just as well read SDLs from a versioned file. That's what we do for our gateway. We write SDLs to a JSON file, and the file includes a version in the filename. When we deploy services, we first roll out the updated services. During the rollout the gateway continues using the current production config. Once services have updated, we notify the gateways there's a new version and they download and load the new config.

dnerdy avatar Oct 27 '21 01:10 dnerdy