name: Recompile dist/ on Renovate PR on: pull_request: types: [opened, synchronize] paths: - package.json - pnpm-lock.yaml - index.js - monitor.js permissions: contents: write jobs: recompile: # 1. Only run for Renovate branches # 2. Never run if the last commit was already our automated build commit if: | (github.actor == 'renovate[bot]' || contains(github.head_ref, 'renovate/')) && !startsWith(github.event.pull_request.head.label, 'recompile-dist') && !contains(github.event.head_commit.message, '[skip compile]') runs-on: ubuntu-latest steps: - name: Generate App Token id: app-token if: ${{ env.RECOMPILE_APP_ID != '' }} uses: actions/create-github-app-token@v1 with: app-id: ${{ secrets.RECOMPILE_APP_ID }} private-key: ${{ secrets.RECOMPILE_APP_PRIVATE_KEY }} env: RECOMPILE_APP_ID: ${{ secrets.RECOMPILE_APP_ID }} - name: Checkout PR Branch uses: actions/checkout@v4 with: token: ${{ steps.app-token.outputs.token || github.token }} ref: ${{ github.head_ref }} fetch-depth: 0 - uses: pnpm/action-setup@v3 with: version: 9 - uses: actions/setup-node@v4 with: node-version: 20 cache: pnpm - name: Clean Install (No Lifecycle Scripts) run: pnpm install --frozen-lockfile --ignore-scripts - name: Build run: pnpm run build - name: Commit dist/ uses: stefanzweifel/git-auto-commit-action@v5 with: commit_user_name: github-actions[bot] commit_user_email: github-actions[bot]@users.noreply.github.com commit_message: 'chore: compile action bundle [skip compile]' file_pattern: dist/*