Skip to content

CI

CI #99

Workflow file for this run

name: CI
on:
- push
- pull_request
jobs:
lint:
runs-on: ubuntu-latest
name: Lint
steps:
- name: Git checkout
uses: actions/checkout@v3
- name: Get npm cache directory
id: npm-cache-dir
run: |
echo "::set-output name=dir::$(npm config get cache)"
- name: Restore npm cache
uses: actions/cache@v3
id: npm-cache
with:
path: ${{ steps.npm-cache-dir.outputs.dir }}
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
run: npm install
- name: Lint
run: npm run lint
test:
runs-on: ubuntu-latest
name: Test
steps:
- name: Git checkout
uses: actions/checkout@v3
- name: Get npm cache directory
id: npm-cache-dir
run: |
echo "::set-output name=dir::$(npm config get cache)"
- name: Restore npm cache
uses: actions/cache@v3
id: npm-cache
with:
path: ${{ steps.npm-cache-dir.outputs.dir }}
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
run: npm install
- name: Test
run: npm run test -- --coverage
- name: Upload coverage report to codecov
uses: codecov/codecov-action@v3
with:
fail_ci_if_error: true
build:
runs-on: ubuntu-latest
name: Build
steps:
- name: Git checkout
uses: actions/checkout@v3
- name: Get npm cache directory
id: npm-cache-dir
run: |
echo "::set-output name=dir::$(npm config get cache)"
- name: Restore npm cache
uses: actions/cache@v3
id: npm-cache
with:
path: ${{ steps.npm-cache-dir.outputs.dir }}
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
run: npm install
- name: Build
run: npm run build
- name: Build docs
run: npm run docs:build