Files
pa11y-dashboard/.github/workflows/tests.yml
2021-04-09 11:04:12 +02:00

51 lines
1.5 KiB
YAML

# This workflow will do a clean install of node dependencies, build the source code and run tests.
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: Build and lint
on:
push:
branches: # Run actions when code is committed to these branches
- master
pull_request:
branches: # Run actions when a PR is pushed based on one of these branches
- master
jobs:
checkout_and_test:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- node-version: 8.x
lint: true # Linter is run only once to shorten the total build time
- node-version: 10.x
- node-version: 12.x
steps:
- name: Checkout code from ${{ github.repository }}
uses: actions/checkout@v2
- name: Setup node
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- name: MongoDB in GitHub Actions
uses: supercharge/mongodb-github-action@1.3.0
with:
mongodb-version: 3.4
- name: Install dependencies
run: npm i
- name: Run linter
if: ${{ matrix.lint }}
run: make lint
- name: Create test config
run: cp config/test.sample.json config/test.json
- name: Start test app
run: NODE_ENV=test node index.js &
- name: Wait / Sleep
uses: jakejarvis/wait-action@v0.1.0
with:
time: '10s'
- name: Run tests
run: make ci