name: 'Update artifacts' on: push: branches: - main workflow_dispatch: jobs: filter: runs-on: ubuntu-latest name: Filter outputs: any_changed: ${{ steps.changed-files-specific.outputs.any_changed }} steps: - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Get changed files in scope id: changed-files-specific uses: tj-actions/changed-files@v40 with: files: | package.json assets/** build: timeout-minutes: 30 runs-on: ubuntu-latest name: Build needs: [filter] if: | github.ref == 'refs/heads/main' && github.event.repository.fork == false && needs.filter.outputs.any_changed == 'true' steps: - name: Checkout uses: actions/checkout@v3 - name: Setup Hugo uses: peaceiris/actions-hugo@v2 with: hugo-version: '0.114.0' extended: true - name: Setup pnpm uses: pnpm/action-setup@v2 with: version: 8 - name: Get pnpm store directory id: pnpm-cache run: echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT - name: Setup pnpm cache uses: actions/cache@v3 with: path: ${{ steps.pnpm-cache.outputs.STORE_PATH }} key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm install - name: Build run: | pnpm run build git config --global user.email "noreply@github.com" git config --global user.name "CI" git add -A && git commit -m "build: update bundled artifacts [skip ci]" git push