Skip to content

GitHub Action to validate JSON, YAML, and TOML files against JSON Schema

Notifications You must be signed in to change notification settings

lintel-rs/action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lintel GitHub Action

Validate JSON, YAML, and TOML files against JSON Schema in your pull requests.

Creates a Lintel Check Run with inline annotations on the files changed in your PR.

Quick Start

name: Lint
on: [pull_request]

permissions:
  checks: write
  contents: read

jobs:
  lintel:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: lintel-rs/action@v1

With zero configuration Lintel auto-discovers files and matches them against schemas from the SchemaStore catalog.

Inputs

Input Description Required Default
version lintel-github-action version to install No latest
github-token GitHub token for creating Check Runs No ${{ github.token }}
paths Paths or globs to validate No (auto-discover)
exclude Comma-separated exclude patterns No
no-catalog Disable SchemaStore catalog matching No false
args Additional arguments passed to lintel-github-action No

version

Pin a specific release version instead of using the latest.

- uses: lintel-rs/action@v1
  with:
    version: v0.0.3

github-token

Token used to create the Check Run. The default github.token is sufficient -- no PAT required.

paths

Space-separated paths or globs to validate. When omitted, Lintel auto-discovers JSON, YAML, and TOML files in the repository.

- uses: lintel-rs/action@v1
  with:
    paths: "config/**/*.yaml src/*.json"

exclude

Comma-separated patterns to exclude from validation.

- uses: lintel-rs/action@v1
  with:
    exclude: "vendor/**, node_modules/**"

no-catalog

Disable automatic schema matching from the SchemaStore catalog. Useful when you only want to validate files that have explicit schema mappings in lintel.toml.

- uses: lintel-rs/action@v1
  with:
    no-catalog: true

args

Pass additional arguments directly to the lintel-github-action binary.

- uses: lintel-rs/action@v1
  with:
    args: "--verbose"

How It Works

  1. Downloads the lintel-github-action binary from this repo's releases
  2. Runs validation on your repository files
  3. Creates a GitHub Check Run named Lintel with:
    • Inline annotations on files with schema violations
    • A summary of all findings
    • Pass/fail conclusion

Permissions

The action needs checks: write permission to create Check Runs and contents: read to access repository files.

permissions:
  checks: write
  contents: read

Configuration

Place a lintel.toml in your repository root to configure schema mappings, exclude patterns, and more. See the Lintel documentation for details.

About

GitHub Action to validate JSON, YAML, and TOML files against JSON Schema

Resources

Stars

Watchers

Forks

Packages

No packages published