Description
Apollo federation uses the following introspection query when glueing together subgraphs:
https://github.com/apollographql/rover/blob/83d99ad2c707a5da4e3d48593af7b22a51d6d07d/crates/rover-client/src/operations/subgraph/introspect/introspect_query.graphql#L1-L6
query SubgraphIntrospectQuery {
# eslint-disable-next-line
_service {
sdl
}
}
In our subgraph, we define a schema only, non-executable @lint
directive. If I do an introspection for directives directly, it shows up, with all the other directives:
But if I run the introspection query apollo rover is using (@apollo/[email protected]
):
^ That's just some random test schema, but cruicially - no directives in the output.
This ultimately leads to the following:
error[E029]: Encountered 1 build error while trying to build a supergraph.
Caused by:
Encountered 1 build error while trying to build the supergraph.
UNKNOWN: [@lint] -> Custom directives must be implemented in every service. The following services do not implement the @lint directive: i18n_strings.
I'll keep poking around, it's possible i'm missing a trick here somewhere, or need to upgrade things, but writing this down as a starting point. Thanks!