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.
101 lines
2.0 KiB
101 lines
2.0 KiB
name: CI
|
|
|
|
on:
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'build/**'
|
|
- 'docs/**'
|
|
- 'files/**'
|
|
push:
|
|
paths-ignore:
|
|
- 'build/**'
|
|
- 'docs/**'
|
|
- 'files/**'
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
|
|
lint:
|
|
name: "Linting"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Git checkout
|
|
uses: actions/checkout@v2
|
|
- name: Install node
|
|
uses: actions/setup-node@v2
|
|
with:
|
|
node-version: 16
|
|
cache: 'npm'
|
|
- name: Install packages
|
|
run: npm ci
|
|
|
|
- name: === Linting ===
|
|
run: npm run lint
|
|
|
|
unit:
|
|
name: "Unit testing"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Git checkout
|
|
uses: actions/checkout@v2
|
|
- name: Install node
|
|
uses: actions/setup-node@v2
|
|
with:
|
|
node-version: 16
|
|
cache: 'npm'
|
|
- name: Install packages
|
|
run: |
|
|
npm ci
|
|
npm ci --prefix test
|
|
- name: Build
|
|
run: npm run build
|
|
|
|
- name: === Unit testing ===
|
|
run: npm run test-unit
|
|
|
|
e2e:
|
|
name: "E2E testing"
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
CI: [ 0, 1, 2, 3, 4, 5, 6, 7 ]
|
|
env:
|
|
CI: ${{ matrix.CI }}
|
|
FORCE_COLOR: 1
|
|
steps:
|
|
- name: Git checkout
|
|
uses: actions/checkout@v2
|
|
- name: Install node
|
|
uses: actions/setup-node@v2
|
|
with:
|
|
node-version: 16
|
|
cache: 'npm'
|
|
- name: Install packages
|
|
run: |
|
|
npm ci
|
|
npm ci --prefix test
|
|
sudo apt-get install xvfb
|
|
- name: Build
|
|
run: npm run build
|
|
|
|
- name: === E2E testing ===
|
|
run: xvfb-run --auto-servernum npm run test-e2e
|
|
|
|
e2e-cov:
|
|
name: "Ready for release"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Git checkout
|
|
uses: actions/checkout@v2
|
|
- name: Install node
|
|
uses: actions/setup-node@v2
|
|
with:
|
|
node-version: 16
|
|
cache: 'npm'
|
|
- name: Install packages
|
|
run: npm ci
|
|
|
|
- name: === Ready for release ===
|
|
run: npm run test-e2e-cov
|
|
|