Check
Checks for breaking changes and composition errors for all the connected federated graphs.
Usage
Check schema changes
Use this command whenever you make modifications to your subgraphs. It will report any GraphQL or composition errors before they land on production. The report will be made visible under Schema Checks.
Check deletion of a subgraph
This command will check any breaking changes or composition errors in case the subgraph is deleted.
Check how a new subgraph affects the federated graph
Description
The npx wgc subgraph check
command checks for breaking changes and composition errors in all connected federated graphs associated with the specified subgraph. This validation process ensures that the new schema you intend to use does not introduce any issues that could negatively impact existing federated graphs.
Parameters
<name>
: The name of the subgraph for which you want to perform the validation check. This should be the exact name of the subgraph you wish to check.
Options
-n, --namespace
: The namespace of the federated graph (Default: "default").--schema <path-to-schema>
: The path to the new schema file that you want to validate. This file should contain the complete schema definition in the GraphQL Schema Definition Language (SDL) format.--delete
: Check for breaking changes and composition errors in case the subgraph will be deleted.--skip-traffic-check
: This will skip checking against client traffic and any breaking change will fail the run.
The check command requires either the --schema or --delete parameter.
Examples
Check for breaking changes and composition errors for the subgraph "products" with the new schema file located at "./schemas/new_schema.graphql":
Sample output with changes and errors
Changes
Composition Errors
Check for breaking changes and composition errors for the subgraph "products" with the new schema file located at "./schemas/new_schema.graphql":
Sample output
Changes
Composition Errors
VCS Context
If you want to associate custom information with the checks being performed, you can do so by setting the following environment variables:
COSMO_VCS_AUTHOR
: The author's email address associated with the commit (e.g:foo@bar.com
).COSMO_VCS_COMMIT
: The specific commit hash for the changes you are testing (e.g:de233ddwqedqwe
).COSMO_VCS_BRANCH
: The branch name where the commit resides (e.g:main
).
Usage in CI and GitHub Integration
Checkout the tutorial here on how to use the subgraph check command in CI with GitHub.
Notes
The
npx wgc subgraph check
command interacts with the Cosmo platform's control plane and connected federated graphs to perform the validation checks.If there are no breaking changes or composition errors detected, the tables will be empty, indicating that the new schema is compatible with the existing federated graphs.
Last updated