mirror of https://github.com/wekan/wekan
parent
3650ef4805
commit
4d9ba8d73b
@ -0,0 +1,161 @@ |
||||
name: Test suite |
||||
|
||||
on: |
||||
push: |
||||
branches: |
||||
- master |
||||
- develop |
||||
pull_request: |
||||
|
||||
jobs: |
||||
# the following are optional jobs and need to be configured according |
||||
# to this project's settings: |
||||
# |
||||
# lintcode: |
||||
# name: Javascript lint |
||||
# runs-on: ubuntu-latest |
||||
# steps: |
||||
# - name: checkout |
||||
# uses: actions/checkout@v2 |
||||
# |
||||
# - name: setup node |
||||
# uses: actions/setup-node@v1 |
||||
# with: |
||||
# node-version: '12.x' |
||||
# |
||||
# - name: cache dependencies |
||||
# uses: actions/cache@v1 |
||||
# with: |
||||
# path: ~/.npm |
||||
# key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} |
||||
# restore-keys: | |
||||
# ${{ runner.os }}-node- |
||||
# |
||||
# - run: npm install |
||||
# - run: npm run lint:code |
||||
# |
||||
# lintstyle: |
||||
# name: SCSS lint |
||||
# runs-on: ubuntu-latest |
||||
# needs: [lintcode] |
||||
# steps: |
||||
# - name: checkout |
||||
# uses: actions/checkout@v2 |
||||
# |
||||
# - name: setup node |
||||
# uses: actions/setup-node@v1 |
||||
# with: |
||||
# node-version: '12.x' |
||||
# |
||||
# - name: cache dependencies |
||||
# uses: actions/cache@v1 |
||||
# with: |
||||
# path: ~/.npm |
||||
# key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} |
||||
# restore-keys: | |
||||
# ${{ runner.os }}-node- |
||||
# - run: npm install |
||||
# - run: npm run lint:style |
||||
# |
||||
# lintdocs: |
||||
# name: documentation lint |
||||
# runs-on: ubuntu-latest |
||||
# needs: [lintcode,lintstyle] |
||||
# steps: |
||||
# - name: checkout |
||||
# uses: actions/checkout@v2 |
||||
# |
||||
# - name: setup node |
||||
# uses: actions/setup-node@v1 |
||||
# with: |
||||
# node-version: '12.x' |
||||
# |
||||
# - name: cache dependencies |
||||
# uses: actions/cache@v1 |
||||
# with: |
||||
# path: ~/.npm |
||||
# key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} |
||||
# restore-keys: | |
||||
# ${{ runner.os }}-node- |
||||
# |
||||
# - run: npm install |
||||
# - run: npm run lint:markdown |
||||
|
||||
tests: |
||||
name: Meteor ${{ matrix.meteor }} tests |
||||
runs-on: ubuntu-latest |
||||
steps: |
||||
|
||||
# CHECKOUTS |
||||
- name: Checkout |
||||
uses: actions/checkout@v2 |
||||
|
||||
# CACHING |
||||
- name: Install Meteor |
||||
id: cache-meteor-install |
||||
uses: actions/cache@v2 |
||||
with: |
||||
path: ~/.meteor |
||||
key: v1-meteor-${{ hashFiles('.meteor/versions') }} |
||||
restore-keys: | |
||||
v1-meteor- |
||||
|
||||
- name: Cache NPM dependencies |
||||
id: cache-meteor-npm |
||||
uses: actions/cache@v2 |
||||
with: |
||||
path: ~/.npm |
||||
key: v1-npm-${{ hashFiles('package-lock.json') }} |
||||
restore-keys: | |
||||
v1-npm- |
||||
|
||||
- name: Cache Meteor build |
||||
id: cache-meteor-build |
||||
uses: actions/cache@v2 |
||||
with: |
||||
path: | |
||||
.meteor/local/resolver-result-cache.json |
||||
.meteor/local/plugin-cache |
||||
.meteor/local/isopacks |
||||
.meteor/local/bundler-cache/scanner |
||||
key: v1-meteor_build_cache-${{ github.ref }}-${{ github.sha }} |
||||
restore-key: | |
||||
v1-meteor_build_cache- |
||||
|
||||
- name: Setup meteor |
||||
uses: meteorengineer/setup-meteor@v1 |
||||
with: |
||||
meteor-release: '2.2' |
||||
|
||||
- name: Install NPM Dependencies |
||||
run: meteor npm ci |
||||
|
||||
- name: Run Tests |
||||
run: sh ./test-wkan.sh -cv |
||||
|
||||
- name: Upload coverage |
||||
uses: actions/upload-artifact@v2 |
||||
with: |
||||
name: coverage-folder |
||||
path: .coverage/ |
||||
|
||||
coverage: |
||||
name: Coverage report |
||||
runs-on: ubuntu-latest |
||||
needs: [tests] |
||||
steps: |
||||
- name: Checkout |
||||
uses: actions/checkout@v2 |
||||
|
||||
- name: Download coverage |
||||
uses: actions/download-artifact@v2 |
||||
with: |
||||
name: coverage-folder |
||||
path: .coverage/ |
||||
|
||||
|
||||
- name: Coverage Report |
||||
uses: VeryGoodOpenSource/very_good_coverage@v1.1.1 |
||||
with: |
||||
path: ".coverage/lcov.info" |
||||
min_coverage: 1 # TODO add tests and increase to 95! |
Loading…
Reference in new issue