Skip to content

Order index-based array removes to preserve correct application; add … #574

Order index-based array removes to preserve correct application; add …

Order index-based array removes to preserve correct application; add … #574

Workflow file for this run

name: CI
on:
push:
branches: [master, dev]
pull_request:
branches: [master]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
matrix:
node-version: [18, 20, 22]
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run build
- run: npm test -- --coverage
- run: npm run lint
- name: Upload coverage reports
if: matrix.node-version == 20
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
with:
name: coverage-reports
path: coverage/
retention-days: 7
- name: Upload coverage to Codecov
if: matrix.node-version == 20
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5
with:
file: ./coverage/lcov.info
flags: unittests
name: codecov-umbrella
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false
- name: Create job summary
if: matrix.node-version == 20 && always()
run: |
echo "## 🎯 Build Summary" >> $GITHUB_STEP_SUMMARY
echo "- **Node.js version:** ${{ matrix.node-version }}" >> $GITHUB_STEP_SUMMARY
echo "- **Build status:** ✅ Success" >> $GITHUB_STEP_SUMMARY
echo "- **Test coverage:** Generated and uploaded" >> $GITHUB_STEP_SUMMARY
echo "- **Linting:** ✅ Passed" >> $GITHUB_STEP_SUMMARY