Skip to content

e (#3)

e (#3) #23

name: Validate Game Recipes
on:
pull_request:
push:
branches:
- main
workflow_dispatch:
permissions:
contents: read
jobs:
quality:
name: Format and lint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Check formatting
run: deno fmt --check
working-directory: .
- name: Run linter
run: deno lint
working-directory: .
validate-structure:
name: Validate recipe structure
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Node
uses: actions/setup-node@v6
with:
node-version: "20"
- name: Validate game recipe files
run: node scripts/validate-games.mjs
working-directory: .
typecheck:
name: Type-check recipe sources
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Type-check TypeScript files
run: |
FILES=$(find . -maxdepth 2 -type f -name "*.ts" | tr '\n' ' ')
deno check --sloppy-imports $FILES
working-directory: .