Download Forbidden & Limited Lists #427
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SPDX-FileCopyrightText: © 2023–2024 Kevin Lu | |
# SPDX-Licence-Identifier: AGPL-3.0-or-later | |
name: Download Forbidden & Limited Lists | |
on: | |
workflow_dispatch: | |
repository_dispatch: | |
types: | |
- update | |
schedule: | |
- cron: "5 0 * * *" | |
jobs: | |
tcg: | |
name: Download TCG Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .node-version | |
cache: yarn | |
cache-dependency-path: yarn.lock | |
- run: yarn | |
- run: yarn download-tcg | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Download TCG Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
ocg: | |
name: Download OCG Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .node-version | |
cache: yarn | |
cache-dependency-path: yarn.lock | |
- run: yarn | |
- run: curl -fsSLo /tmp/cards.json https://dawnbrandbots.github.io/yaml-yugi/cards.json | |
- run: yarn download-ocg /tmp/cards.json --recent | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Download OCG Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
ocg-ae: | |
name: Download OCG Asian-English Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .node-version | |
cache: yarn | |
cache-dependency-path: yarn.lock | |
- run: yarn | |
- run: curl -fsSLo /tmp/cards.json https://dawnbrandbots.github.io/yaml-yugi/cards.json | |
- run: yarn download-ocg-ae /tmp/cards.json --recent | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Download OCG-AE Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
ocg-cn: | |
name: Download OCG China Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .node-version | |
cache: yarn | |
cache-dependency-path: yarn.lock | |
- run: yarn | |
- run: curl -fsSLo /tmp/cards.json https://dawnbrandbots.github.io/yaml-yugi/cards.json | |
- run: yarn download-ocg-cn /tmp/cards.json | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Download OCG China Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
rush: | |
name: Download Rush Duel Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: .node-version | |
cache: yarn | |
cache-dependency-path: yarn.lock | |
- run: yarn | |
- run: curl -fsSLo /tmp/rush.json https://dawnbrandbots.github.io/yaml-yugi/rush.json | |
- run: yarn download-rush /tmp/rush.json | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Download Rush Duel Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
master-duel: | |
name: Transform Master Duel Forbidden & Limited Lists | |
runs-on: ubuntu-latest | |
outputs: | |
committed: ${{ steps.commit.outputs.committed }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
path: yaml-yugi-limit-regulation | |
- uses: actions/checkout@v4 | |
with: | |
repository: DawnbrandBots/yaml-yugipedia | |
path: yaml-yugipedia | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.12" | |
cache: pip | |
cache-dependency-path: yaml-yugi-limit-regulation/src/requirements.txt | |
- run: pip install -r yaml-yugi-limit-regulation/src/requirements.txt | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: yaml-yugi-limit-regulation/.node-version | |
cache: yarn | |
cache-dependency-path: yaml-yugi-limit-regulation/yarn.lock | |
- working-directory: yaml-yugi-limit-regulation | |
run: yarn | |
- run: curl -fsSLo /tmp/cards.json https://dawnbrandbots.github.io/yaml-yugi/cards.json | |
- working-directory: yaml-yugi-limit-regulation/data/master-duel | |
run: python ../../src/masterduel-extract-transform.py '../../../yaml-yugipedia/wikitext/Yu-Gi-Oh!_Master_Duel_Forbidden_%26_Limited_Lists' | |
- working-directory: yaml-yugi-limit-regulation | |
run: yarn transform-md /tmp/cards.json | |
- id: commit | |
uses: DawnbrandBots/.github/actions/commit-push@main | |
with: | |
message: "Transform Master Duel Forbidden & Limited Lists: ${{ github.run_number }} (${{ github.run_id }})" | |
working-directory: yaml-yugi-limit-regulation | |
test: | |
needs: [tcg, ocg, ocg-ae, ocg-cn, rush, master-duel] | |
runs-on: ubuntu-latest | |
steps: | |
- run: echo '${{ toJson(needs.*.outputs.committed) }}' | |
- run: echo '${{ contains(needs.*.outputs.committed, 1) }}' | |
validate: | |
needs: test | |
uses: ./.github/workflows/validate-vector.yaml | |
publish: | |
needs: [tcg, ocg, ocg-ae, ocg-cn, rush, master-duel] | |
if: contains(needs.*.outputs.committed, 1) && !cancelled() | |
uses: ./.github/workflows/publish.yaml |