name: "GQL generation and linting" # Validate gqlgen works # Validate there are no uncommitted changes after running gqlgen # Lint the graphql schema on: push: branches: - main pull_request: branches: [main] release: types: - published permissions: read-all jobs: gqlgen: name: Check GQL generation runs-on: ubuntu-latest steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: persist-credentials: false - uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: cache: false check-latest: true go-version: 1.26.x - name: Install dependencies run: | cd $GITHUB_WORKSPACE go mod download - name: Run gqlgen run: | make gqlgen - name: Verify uncommitted files run: | make verify-gql-committed gqllint: name: Check GQL schema follows best practices runs-on: ubuntu-latest steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: persist-credentials: false - name: Install dependencies run: | cd $GITHUB_WORKSPACE npm install graphql-schema-linter graphql - name: Lint the graphql schema run: | npm exec graphql-schema-linter pkg/extensions/search/*.graphql