Add pdf monitor check and GitHub workflow #32
Workflow file for this run
This file contains hidden or 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
| name: Coverage | |
| on: | |
| pull_request: | |
| branches: [main] | |
| paths-ignore: | |
| - ".changeset/**" | |
| - ".vscode/**" | |
| - "docs/**" | |
| - "pdf-manager/**" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| # Test coverage for the branch under review. | |
| test-coverage-branch: | |
| name: Test Coverage | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v7.0.0 | |
| with: | |
| persist-credentials: false | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v6.0.9 | |
| with: | |
| run_install: false | |
| - name: Setup Node | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: "24.x" | |
| cache: "pnpm" | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Test coverage | |
| run: pnpm --filter @namesake/web test:coverage | |
| - name: Upload coverage | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coverage-branch | |
| path: web/coverage | |
| overwrite: true | |
| report-coverage: | |
| needs: [test-coverage-branch] | |
| name: Report Coverage | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v7.0.0 | |
| with: | |
| persist-credentials: false | |
| - name: Download coverage (branch) | |
| uses: actions/download-artifact@v8 | |
| with: | |
| name: coverage-branch | |
| path: coverage | |
| - name: Restore coverage (main) | |
| id: download-main | |
| uses: actions/cache/restore@v5.0.5 | |
| with: | |
| path: web/coverage | |
| key: coverage-main-${{ github.sha }} | |
| restore-keys: coverage-main- | |
| - name: Move coverage (main) | |
| if: steps.download-main.outputs.cache-matched-key != '' | |
| run: mv web/coverage coverage-main | |
| - name: Report coverage and comparison | |
| if: always() && hashFiles('coverage-main/coverage-summary.json') != '' | |
| uses: davelosert/vitest-coverage-report-action@v2.12.1 | |
| with: | |
| vite-config-path: web/vitest.config.ts | |
| json-summary-compare-path: coverage-main/coverage-summary.json | |
| # Fallback to report branch coverage without comparison | |
| # if coverage from main is not available | |
| - name: Report coverage | |
| if: always() && hashFiles('coverage-main/coverage-summary.json') == '' | |
| uses: davelosert/vitest-coverage-report-action@v2.12.1 | |
| with: | |
| vite-config-path: web/vitest.config.ts |