mirror of https://github.com/PCSX2/pcsx2.git
44 lines
1.1 KiB
YAML
44 lines
1.1 KiB
YAML
name: 📝 Validate GameDB
|
|
|
|
on:
|
|
push:
|
|
branches-ignore:
|
|
- "l10n_master"
|
|
paths:
|
|
- '**/GameIndex.yaml'
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
paths:
|
|
- '**/GameIndex.yaml'
|
|
|
|
jobs:
|
|
lint:
|
|
name: Lint and Validate GameDB
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install Packages
|
|
run: |
|
|
npm install -g ajv-cli prettier
|
|
sudo apt-get -y install yamllint
|
|
|
|
- name: Validate YAML
|
|
run: |
|
|
yamllint -sd "{extends: relaxed, rules: {line-length: disable}}" ./bin/resources/GameIndex.yaml
|
|
|
|
- name: Validate Contents
|
|
run: |
|
|
ajv validate -s ./pcsx2/Docs/gamedb-schema.json --spec=draft2020 -d ./bin/resources/GameIndex.yaml
|
|
|
|
- name: Check Formatting
|
|
run: |
|
|
if ! prettier --check bin/resources/GameIndex.yaml; then
|
|
prettier --write bin/resources/GameIndex.yaml
|
|
echo "Prettier failed, diff:"
|
|
git diff bin/resources/GameIndex.yaml
|
|
exit 1
|
|
fi
|