This action uses Spectral from Stoplight to lint your OpenAPI documents, or any other JSON/YAML files.
See action.yml
name: Run Spectral on Pull Requests
on:
- pull_request
jobs:
build:
name: Run Spectral
runs-on: ubuntu-latest
steps:
# Check out the repository
- uses: actions/checkout@v3
# Run Spectral
- uses: stoplightio/spectral-action@latest
with:
file_glob: 'doc/api/*.yaml'
- file_glob: Pattern describing the set of files to lint. Defaults to
*.oas.{json,yml,yaml}
. (Note: Pattern syntax is documented in the fast-glob package documentation) - spectral_ruleset: Custom ruleset to load in Spectral. When unspecified, will try to load the default
.spectral.yaml
ruleset if it exists.
Spectral Action will respect your Spectral Rulesets, which can be defined, extended, and overriden by placing .spectral.yml
in the root of your repository.
However, if you'd like to simply use a core ruleset without additional configuration, create a .spectral.yml
in you repository's root with only the contents: extends: ["spectral:{rulesetTagHere}"]