A GitHub Action to lint GraphQL schema files for naming conventions using graphql-schema-linter.
- uses: DataSQRL/graphql-schema-linter-action@v1- uses: DataSQRL/graphql-schema-linter-action@v1
with:
schemas: 'src/**/*.graphqls'
rules: 'fields-are-camel-cased,types-are-capitalized'
ignore: '{"fields-are-camel-cased":["Query.Shipment","Query.Customer"]}'| Input | Required | Default | Description |
|---|---|---|---|
schemas |
No | **/*.graphqls |
Glob pattern or space-separated list of schema files |
rules |
No | fields-are-camel-cased,types-are-capitalized,enum-values-all-caps,input-object-values-are-camel-cased |
Comma-separated linting rules |
ignore |
No | {} |
JSON object for ignoring specific rule violations |
fields-are-camel-cased- Field names should be camelCasetypes-are-capitalized- Type names should be PascalCaseenum-values-all-caps- Enum values should be ALL_CAPSinput-object-values-are-camel-cased- Input object field names should be camelCase
See graphql-schema-linter rules for more options.
name: Lint
on: [push, pull_request]
jobs:
lint-graphql:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: DataSQRL/graphql-schema-linter-action@v1
with:
ignore: '{"fields-are-camel-cased":["Query.MyTable"]}'MIT