Split CI into multiple jobs to get clearer results

This commit is contained in:
Martin Fournier 2021-12-22 04:18:15 -05:00
parent 6b59a58ea3
commit d6c1f3bfca

@ -1,4 +1,3 @@
# This is a basic workflow to help you get started with Actions
name: CI
on:
@ -13,39 +12,44 @@ on:
jobs:
build:
# The type of runner that the job will run on
name: Build
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [16.13.1]
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- uses: actions/checkout@v2
- run: echo "The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "The workflow is now ready to test your code on the runner."
- name: Use Node.js ${{ matrix.node-version }}
- name: Use Node.js 16.13.1
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
node-version: 16.13.1
cache: 'npm'
- name: Install npm dependencies
run: npm ci
- name: Build the production app
run: npm run build
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js 16.13.1
uses: actions/setup-node@v2
with:
node-version: 16.13.1
cache: 'npm'
- name: Install npm dependencies
run: npm ci
- name: Run unit tests
run: npm run test
- name: Run linter
run: npm run lint:report
- name: Build the web app
run: npm run build
# Cannot build the electron app by default using ubuntu
# Wrapper command 'wine64' not found on the system. Consult your Linux distribution's package manager to determine how to install Wine.
# - name: Build the electron app
# run: ./package.sh
# Unable to properly run the cypress tests for now, they are throwing errors.
# - name: Run the integration tests
# run: npm run cy:test
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js 16.13.1
uses: actions/setup-node@v2
with:
node-version: 16.13.1
cache: 'npm'
- name: Install npm dependencies
run: npm ci
- name: Run linter
run: npm run test