Skip to content

Latest commit

 

History

History
49 lines (32 loc) · 1.08 KB

README.md

File metadata and controls

49 lines (32 loc) · 1.08 KB

gha-valjean

A GitHub Action for validating JSON files against a remote schema

On the backend, this uses AJV to perform the validation

Inputs

schema-url

Url to the remote schema JSON file to validate against

target-dir

Comma-separated list directories to validate

all-errors (optional)

Enables 'all errors' validation on AJV

ajv-strict (optional)

Enables 'strict mode' in AJV

draft-version (optional)

The JSON schema draft version (defaults to 2019)—only supports '2020' and '2019'

Example Usage

You can use this action to generate artifacts with the type bindings in your preferred languages.

For example, you might design a workflow to generate bindings for both TypeScript and Rust, e.g.

name: Build
on: push
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: API Schema
        uses: thomasmost/[email protected]
        with:
          schema-url: https://raw.githubusercontent.com/thomasmost/gha-valjean/main/schema/example.schema.json
          target-dir: samples