SpyglassMC Action

This action lets you validate your Minecraft datapack using SpyglassMC. All JSON and MCFunction files are checked for syntax errors.

Table of Contents

Basic workflow

Here is a simple example showing how to use this action:

name: Check datapack
on:
  pull_request:
    branches:
      - main
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Check syntax and schemas
        uses: https://git.kb28.ch/HEL/spyglassmc-action@v1.1.4

Input parameters

The following parameters can be passed using the with section:

Parameter Type Default Description
rootDir Path ./ Root datapack directory (containing the data folder and pack.mcmeta file)
version String auto The Minecraft version to use. If not specified or set to 'auto', will try to use the version indicated in pack.mcmeta
reportAllErrors Boolean false Whether to report all errors or only the first one
verbose Boolean false Whether to provide details on errors or just the number of errors

GitHub vs. Gitea

Depending on where you want to execute this action, you should be mindful of the following points

Gitea

If your workflow will be running on Gitea, you might need to set a specific runner image (see https://gitea.com/gitea/runner-images#migration). For example:

...
jobs:
  check:
    runs-on: ubuntu-latest
    container: catthehacker/ubuntu:act-latest
...

GitHub

If your workflow will be running on GitHub, you will not be able to simply use the action from this Gitea repository.
Instead, you need to add a step to clone this repository, and use the action locally

name: Check datapack
on:
  pull_request:
    branches:
      - main
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Checkout action
        run: |
          git clone https://git.kb28.ch/HEL/spyglassmc-action ./.github/actions/spyglassmc-action

      - name: Check syntax and schemas
        uses: ./.github/actions/spyglassmc-action

You might also want to git checkout a specific tagged version

Description
Check your Minecraft datapack for syntax or schema errors using SpyglassMC
Readme 3.2 MiB
Languages
TypeScript 100%