Skip to content

Remove Codecov integration and add dependency diff workflow #400

Remove Codecov integration and add dependency diff workflow

Remove Codecov integration and add dependency diff workflow #400

Workflow file for this run

# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Tests
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
name: Unit tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm ci --ignore-scripts --no-audit --no-fund
- run: npm test
check:
name: Check types
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm ci --ignore-scripts --no-audit --no-fund
- run: npm run check
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm ci --ignore-scripts --no-audit --no-fund
- run: npm run build
- name: Pack
run: npm pack
- name: Upload pack artifact
uses: actions/upload-artifact@v4
with:
name: source-packages
path: '*.tgz'
build-base:
name: Build (base branch)
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
steps:
- uses: actions/checkout@v6
with:
ref: ${{ github.base_ref }}
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm ci --ignore-scripts --no-audit --no-fund
- run: npm run build
- name: Pack
run: npm pack
- name: Upload pack artifact
uses: actions/upload-artifact@v4
with:
name: base-packages
path: '*.tgz'
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm ci --ignore-scripts --no-audit --no-fund
- run: npm run lint
npm-audit:
name: Audit packages
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Use Node.js
uses: actions/setup-node@v6
with:
cache: 'npm'
node-version: 22
- run: npm audit --audit-level=high
dependency-diff:
name: Dependency & bundle diff
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
needs: [build, build-base]
permissions:
pull-requests: write
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/download-artifact@v4
with:
name: base-packages
path: ./base-packages
- uses: actions/download-artifact@v4
with:
name: source-packages
path: ./source-packages
- name: Run dependency & bundle diff
uses: e18e/action-dependency-diff@v1
with:
base-packages: './base-packages/*.tgz'
source-packages: './source-packages/*.tgz'
pack-size-threshold: 0