name: test on: pull_request # Cancel in progress workflows on pull_requests. # https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: test: runs-on: ubuntu-latest steps: - name: Checkout repo uses: actions/checkout@v4 - name: Set node version uses: actions/setup-node@v3 with: node-version-file: '.nvmrc' - name: Set pnpm version uses: pnpm/action-setup@v2 with: run_install: false version: 7 - name: Cache node_modules id: node-modules-cache uses: actions/cache@v3 with: path: '**/node_modules' key: node-modules-cache-${{ hashFiles('**/pnpm-lock.yaml') }} - name: Install dependencies if: steps.node-modules-cache.outputs.cache-hit != 'true' run: pnpm install --no-frozen-lockfile - name: Run tests run: pnpm test