tartiflette-plugin-apollo-federation 0.0.6

Creator: bradpython12

Last updated:

Add to Cart

Description:

tartiflettepluginapollofederation 0.0.6

See https://github.com/remorses/tartiflette-apollo-federation-example for an example
For now the plugin only supports simple sharing of types with the same fields and merging of the query and mutation fileds,
In the near future there will be support for the @keydirective and a new @ResolveReference('TypeName') decorator to resolve the types between servers, similar to how Apollo __resolveReference works.
To suggest other better api ideas on how to implement __resolveReference open a issue.
Installation
pip install tartiflette_plugin_apollo_federation
Usage
from tartiflette_aiohttp import register_graphql_handlers
from tartiflette_plugin_apollo_federation import ApolloFederationPlugin

def run():
engine_sdl = "./sdl/"
app = register_graphql_handlers(
app=web.Application(),
engine_sdl=engine_sdl,
engine_modules=[
ApolloFederationPlugin(engine_sdl=engine_sdl)
],
executor_http_endpoint="/graphql",
graphiql_enabled=True,
)
web.run_app(app, port=PORT)

run()

Then use xmorse/apollo-federation-gateway to glue together your services
version: '3'
services:
service1:
build: ./service1
service2:
build: ./service2
gateway:
image: xmorse/apollo-federation-gateway
ports:
- 8000:80
environment:
URL_0: "http://service1:8001/graphql"
URL_1: "http://service2:8002/graphql"

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.