name: Generator on: push: branches: [ main ] workflow_dispatch: # One generator at a time concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: contents: write pages: write id-token: write jobs: build: runs-on: ubuntu-latest permissions: write-all steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: 18 - name: Cache node_modules uses: actions/cache@v3 id: cache with: path: node_modules key: ${{ runner.os }}-node-${{ hashFiles('yarn.lock') }} restore-keys: ${{ runner.os }}-node- - name: Install Dependencies if: steps.cache.outputs.cache-hit != 'true' run: yarn install --production --frozen-lockfile - name: Build run: yarn build - name: Deploy to github pages uses: JamesIves/github-pages-deploy-action@v4 with: branch: gh-pages folder: dist - name: Check for document changes, ignoring comments uses: dorny/paths-filter@v2 id: changes with: filters: | src: - 'people/**/*[^.json]' - name: Trigger web repackage uses: actions/github-script@v6 if: steps.changes.outputs.src == 'true' with: github-token: ${{ secrets.GH_PERSONAL_TOKEN }} script: | await github.rest.actions.createWorkflowDispatch({ owner: 'one-among-us', repo: 'web', workflow_id: 'package.yml', ref: 'main' })