Skip to content

Merge pull request #327 from andrii482/patch-1 #315

Merge pull request #327 from andrii482/patch-1

Merge pull request #327 from andrii482/patch-1 #315

Workflow file for this run

name: CI
'on':
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch:
jobs:
lint-dockerfile:
name: Lint Dockerfile
runs-on: ubuntu-latest
steps:
- name: Git checkout
uses: actions/checkout@v2
- name: Run Hadolint Dockerfile Linter
uses: hadolint/hadolint-action@master
with:
dockerfile: extras/docker/Dockerfile
ignore: DL3006,DL3008,DL3018,DL3033,DL4006,SC3037
lint-markdown:
name: Lint Markdown
runs-on: ubuntu-latest
steps:
- name: Git checkout
uses: actions/checkout@v2
- name: Use Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Run Remark Markdown Linter
run: |
CXXFLAGS="--std=c++14"
npm install
npm run lint:md
- name: Run Textlint Markdown Linter
run: npm run lint:text
lint-code:
name: Lint JavaScript
runs-on: ubuntu-latest
steps:
- name: Git checkout
uses: actions/checkout@v2
- name: Use Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Run EsLint Node.js Linter
run: |
CXXFLAGS="--std=c++14"
npm install
npm run lint
unit-test:
name: Unit Tests
runs-on: ubuntu-latest
strategy:
matrix:
node-version:
- 12.x
- 14.x
- 16.x
steps:
- name: Git checkout
uses: actions/checkout@v2
- name: 'Install Node.js ${{ matrix.node-version }}'
uses: actions/setup-node@v1
with:
node-version: '${{ matrix.node-version }}'
- name: 'Unit Tests with Node.js ${{ matrix.node-version }}'
run: |
docker run -d -h mysql -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=test mysql:5.7
CXXFLAGS="--std=c++14"
npm install
node ./test/database
IDM_DB_PASS=test
IDM_DB_NAME=idm_test
npm test
code-coverage:
name: Coveralls Code Coverage
runs-on: ubuntu-latest
needs: unit-test
steps:
- name: Git checkout
uses: actions/checkout@v2
- name: 'Test Coverage with Node.js 12.x'
uses: actions/setup-node@v1
with:
node-version: 12.x
- run: |
docker run -d -h mysql -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=test mysql:5.7
CXXFLAGS="--std=c++14"
npm install
node ./test/database
IDM_DB_PASS=test
IDM_DB_NAME=idm_test
npm run test:coverage
- name: Push to Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}