.github/workflows/ci.yml YAML 118 lines View on github.com → Search inside
1name: ci23on:4  push:5    branches:6      - master7      - develop8      - '4.x'9      - '5.x'10      - '5.0'11    paths-ignore:12      - '*.md'13  pull_request:14  workflow_dispatch:1516permissions:17  contents: read1819# Cancel in progress workflows20# in the scenario where we already had a run going for that PR/branch/tag but then triggered a new run21concurrency:22  group: "${{ github.workflow }} ✨ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"23  cancel-in-progress: true2425jobs:26  lint:27    name: Lint28    runs-on: ubuntu-latest29    steps:30      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.231        with:32          persist-credentials: false33      - name: Setup Node.js34        uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.035        with:36          node-version: 'lts/*'3738      - name: Install dependencies39        run: npm install --ignore-scripts --include=dev4041      - name: Run lint42        run: npm run lint4344  test:45    strategy:46      fail-fast: false47      matrix:48        os: [ubuntu-latest, windows-latest]49        node-version: [18, 19, 20, 21, 22, 23, 24, 25]50        # Node.js release schedule: https://nodejs.org/en/about/releases/5152    name: Node.js ${{ matrix.node-version }} - ${{matrix.os}}5354    runs-on: ${{ matrix.os }}55    steps:56      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.257        with:58          persist-credentials: false5960      - name: Setup Node.js ${{ matrix.node-version }}61        uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.062        with:63          node-version: ${{ matrix.node-version }}6465      - name: Configure npm loglevel66        run: |67          npm config set loglevel error68        shell: bash6970      - name: Install dependencies71        run: npm install7273      - name: Output Node and NPM versions74        run: |75          echo "Node.js version: $(node -v)"76          echo "NPM version: $(npm -v)"7778      - name: Run tests79        shell: bash80        run: npm run test-ci8182      - name: Upload code coverage83        uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.084        with:85          name: coverage-node-${{ matrix.node-version }}-${{ matrix.os }}86          path: ./coverage/lcov.info87          retention-days: 18889  coverage:90    needs: test91    runs-on: ubuntu-latest92    permissions:93      contents: read94      checks: write95    steps:96      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.297        with:98          persist-credentials: false99100      - name: Install lcov101        shell: bash102        run: sudo apt-get -y install lcov103104      - name: Collect coverage reports105        uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1106        with:107          path: ./coverage108          pattern: coverage-node-*109110      - name: Merge coverage reports111        shell: bash112        run: find ./coverage -name lcov.info -exec printf '-a %q\n' {} \; | xargs lcov -o ./lcov.info113114      - name: Upload coverage report115        uses: coverallsapp/github-action@5cbfd81b66ca5d10c19b062c04de0199c215fb6e # v2.3.7116        with:117          file: ./lcov.info

Findings

✓ No findings reported for this file.

Get this view in your editor

Same data, no extra tab — call code_get_file + code_get_findings over MCP from Claude/Cursor/Copilot.