# This is a basic workflow to help you get started with Actions

name: Verify button maps

# Controls when the action will run.
on:
  # Triggers the workflow on push or pull request events but only for the master branch
  push:
    branches: [ master ]
    paths:
    - 'button_maps.*json'
  pull_request:
    branches: [ master ]
    paths:
    - 'button_maps.*json'

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "build"
  build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
      # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
      - uses: actions/checkout@v2

      # Install AJV
      - name: Install AJV JSON Schema validator
        run: npm i ajv-cli

      # Verify button maps JSON schema
      - name: Verify button maps JSON schema
        run: npx ajv -s button_maps.schema.json -d button_maps.json

Add CI to validate button_maps.json
Add CI to validate button_maps.json

This will run for each PR with changes to button maps.