on: push: branches: [main] pull_request: jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: pnpm/action-setup@v4 - uses: actions/setup-node@v6 with: node-version: 24 cache: pnpm - uses: actions/cache@v5 id: puppeteer-cache with: path: ~/.cache/puppeteer key: puppeteer-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }} - run: pnpm install --frozen-lockfile - if: steps.puppeteer-cache.outputs.cache-hit != 'true' run: pnpm --filter @dhtml-scripts/test exec puppeteer browsers install chrome - run: pnpm run build - name: Disable AppArmor for chromium run: echo 0 | sudo tee /proc/sys/kernel/apparmor_restrict_unprivileged_userns || true - run: pnpm run test - if: always() uses: coverallsapp/github-action@v2 with: file: coverage/lcov.info format: lcov