mirror of
https://github.com/shlinkio/shlink-web-client.git
synced 2024-12-24 09:58:21 +03:00
58 lines
1.4 KiB
YAML
58 lines
1.4 KiB
YAML
name: Continuous integration
|
|
|
|
on:
|
|
pull_request: null
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
lint:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
- name: Use node.js 14.15
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 14.15
|
|
- run: npm ci
|
|
- run: npm run lint
|
|
|
|
unit-tests:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
- name: Use node.js 14.15
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 14.15
|
|
- run: npm ci
|
|
- run: npm run test:ci
|
|
- name: Publish coverage
|
|
uses: codecov/codecov-action@v1
|
|
with:
|
|
file: ./coverage/clover.xml
|
|
|
|
mutation-tests:
|
|
continue-on-error: true
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 0 # needed so that the main branch is also fetched
|
|
- name: Use node.js 14.15
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 14.15
|
|
- run: npm ci
|
|
- run: npm run mutate -- --mutate=$(git diff origin/main --name-only | grep -E 'src\/(.*).(ts|tsx)$' | paste -sd ",")
|
|
|
|
build-docker-image:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
- run: docker build -t shlink-web-client:test .
|