mirror of
https://github.com/shlinkio/shlink-web-client.git
synced 2025-01-03 14:57:22 +03:00
Created workflow for ci in github actions
This commit is contained in:
parent
16ce1d24af
commit
20f2fd1080
4 changed files with 61 additions and 46 deletions
59
.github/workflows/ci.yml
vendored
Normal file
59
.github/workflows/ci.yml
vendored
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
name: Continuous integration
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request: null
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
continue-on-error: true
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
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-latest
|
||||||
|
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
|
||||||
|
- run: node_modules/.bin/ocular coverage/clover.xml
|
||||||
|
|
||||||
|
mutation-tests:
|
||||||
|
continue-on-error: true
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
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: echo "Building commit range ${TRAVIS_COMMIT_RANGE}"
|
||||||
|
- run: MUTATION_FILES=$(git diff ${TRAVIS_COMMIT_RANGE:-origin/main} --name-only | grep -E 'src\/(.*).(ts|tsx)$' | paste -sd ",") npm run mutate:ci
|
||||||
|
|
||||||
|
build-docker-image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v1
|
||||||
|
with:
|
||||||
|
version: latest
|
||||||
|
- run: docker build -t shlink-web-client:test .
|
44
.travis.yml
44
.travis.yml
|
@ -1,44 +0,0 @@
|
||||||
dist: bionic
|
|
||||||
|
|
||||||
language: node_js
|
|
||||||
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- /.*/
|
|
||||||
|
|
||||||
cache:
|
|
||||||
directories:
|
|
||||||
- node_modules
|
|
||||||
|
|
||||||
node_js:
|
|
||||||
- '14.15.0'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
fast_finish: true
|
|
||||||
allow_failures:
|
|
||||||
- name: 'Lint'
|
|
||||||
- name: 'Mutation tests'
|
|
||||||
include:
|
|
||||||
|
|
||||||
- name: 'Lint'
|
|
||||||
install: npm ci
|
|
||||||
script: npm run lint
|
|
||||||
|
|
||||||
- name: 'Unit tests'
|
|
||||||
install: npm ci
|
|
||||||
script: npm run test:ci
|
|
||||||
after_success:
|
|
||||||
- node_modules/.bin/ocular coverage/clover.xml
|
|
||||||
|
|
||||||
- name: 'Mutation tests'
|
|
||||||
install: npm ci
|
|
||||||
before_script:
|
|
||||||
- echo "Building commit range ${TRAVIS_COMMIT_RANGE}"
|
|
||||||
- export MUTATION_FILES=$(git diff ${TRAVIS_COMMIT_RANGE:-origin/main} --name-only | grep -E 'src\/(.*).(ts|tsx)$' | paste -sd ",")
|
|
||||||
script: npm run mutate:ci
|
|
||||||
|
|
||||||
- name: 'Build docker image'
|
|
||||||
services:
|
|
||||||
- docker
|
|
||||||
install: skip
|
|
||||||
script: docker build -t shlink-web-client:test .
|
|
|
@ -1,4 +1,4 @@
|
||||||
FROM node:14.15.0-alpine as node
|
FROM node:14.15-alpine as node
|
||||||
COPY . /shlink-web-client
|
COPY . /shlink-web-client
|
||||||
ARG VERSION="latest"
|
ARG VERSION="latest"
|
||||||
ENV VERSION ${VERSION}
|
ENV VERSION ${VERSION}
|
||||||
|
|
|
@ -3,7 +3,7 @@ version: '3'
|
||||||
services:
|
services:
|
||||||
shlink_web_client_node:
|
shlink_web_client_node:
|
||||||
container_name: shlink_web_client_node
|
container_name: shlink_web_client_node
|
||||||
image: node:14.15.0-alpine
|
image: node:14.15-alpine
|
||||||
command: /bin/sh -c "cd /home/shlink/www && npm install && npm run start"
|
command: /bin/sh -c "cd /home/shlink/www && npm install && npm run start"
|
||||||
volumes:
|
volumes:
|
||||||
- ./:/home/shlink/www
|
- ./:/home/shlink/www
|
||||||
|
|
Loading…
Reference in a new issue