You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.0 KiB
52 lines
1.0 KiB
name: CI Tests |
|
|
|
on: |
|
push: |
|
branches: [ develop, feature/*, beta ] |
|
pull_request: |
|
branches: [ develop, beta, main ] |
|
|
|
jobs: |
|
test: |
|
runs-on: ubuntu-latest |
|
|
|
strategy: |
|
matrix: |
|
node-version: [16.x, 18.x] |
|
|
|
steps: |
|
- name: Checkout code |
|
uses: actions/checkout@v3 |
|
|
|
- name: Setup Node.js ${{ matrix.node-version }} |
|
uses: actions/setup-node@v3 |
|
with: |
|
node-version: ${{ matrix.node-version }} |
|
cache: 'npm' |
|
|
|
- name: Install dependencies |
|
run: npm ci |
|
|
|
- name: Run linting |
|
run: npm run lint |
|
|
|
- name: Run tests |
|
run: npm test |
|
|
|
- name: Run coverage |
|
run: npm run test:coverage |
|
|
|
- name: Upload coverage reports |
|
uses: codecov/codecov-action@v3 |
|
if: matrix.node-version == '18.x' |
|
|
|
security-scan: |
|
runs-on: ubuntu-latest |
|
steps: |
|
- name: Checkout code |
|
uses: actions/checkout@v3 |
|
|
|
- name: Run security audit |
|
run: | |
|
npm audit --audit-level high |
|
npm audit fix --dry-run |