2019-09-30 14:56:26 +02:00
|
|
|
name: Test & Deploy
|
2019-09-30 14:51:38 +02:00
|
|
|
|
2019-09-30 15:41:14 +02:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- master
|
2019-09-30 14:51:38 +02:00
|
|
|
|
|
|
|
jobs:
|
2021-01-22 16:27:42 +01:00
|
|
|
setup:
|
2019-09-30 14:51:38 +02:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2020-07-04 16:35:49 +02:00
|
|
|
- uses: actions/checkout@v2
|
2021-01-22 16:27:42 +01:00
|
|
|
- name: Set node version
|
2021-01-22 15:53:53 +01:00
|
|
|
uses: actions/setup-node@v1
|
|
|
|
with:
|
|
|
|
node-version: '10.x'
|
2021-01-22 16:27:42 +01:00
|
|
|
- name: Install
|
2019-09-30 14:51:38 +02:00
|
|
|
run: |
|
2021-01-22 15:53:53 +01:00
|
|
|
npm install
|
2019-09-30 14:51:38 +02:00
|
|
|
export NODE_OPTIONS=--max_old_space_size=2048
|
2021-01-22 16:27:42 +01:00
|
|
|
|
|
|
|
lint:
|
|
|
|
needs: setup
|
|
|
|
runs-on: ubuntu-latest
|
2021-01-22 16:28:46 +01:00
|
|
|
steps:
|
2019-09-30 14:51:38 +02:00
|
|
|
- name: Lint
|
2019-09-30 14:56:26 +02:00
|
|
|
run: npx grunt lint
|
2021-01-22 16:27:42 +01:00
|
|
|
|
|
|
|
tests:
|
|
|
|
needs: setup
|
|
|
|
runs-on: ubuntu-latest
|
2021-01-22 16:28:46 +01:00
|
|
|
steps:
|
2019-09-30 14:51:38 +02:00
|
|
|
- name: Unit Tests
|
|
|
|
run: |
|
2021-01-22 15:33:35 +01:00
|
|
|
npm test
|
2021-01-22 15:59:26 +01:00
|
|
|
npx grunt testnodeconsumer
|
2021-01-22 16:27:42 +01:00
|
|
|
|
|
|
|
build:
|
|
|
|
needs: [lint, tests]
|
|
|
|
runs-on: ubuntu-latest
|
2021-01-22 16:28:46 +01:00
|
|
|
steps:
|
2021-01-22 15:59:26 +01:00
|
|
|
- name: Production Build
|
|
|
|
run: npx grunt prod
|
2021-01-22 16:17:17 +01:00
|
|
|
- name: Generate sitemap
|
|
|
|
run: npx grunt exec:sitemap
|
2021-01-22 16:27:42 +01:00
|
|
|
|
|
|
|
ui-tests:
|
|
|
|
needs: build
|
|
|
|
runs-on: ubuntu-latest
|
2021-01-22 16:28:46 +01:00
|
|
|
steps:
|
2021-01-22 16:27:42 +01:00
|
|
|
- name: UI Tests
|
|
|
|
run: xvfb-run --server-args="-screen 0 1200x800x24" npx grunt testui
|
|
|
|
|
|
|
|
|
2021-01-22 16:17:17 +01:00
|
|
|
# - name: grunt copy:ghPages
|
2021-01-22 15:33:35 +01:00
|
|
|
# - name: Deploy
|
|
|
|
# uses: peaceiris/actions-gh-pages@v3
|
|
|
|
# with:
|
|
|
|
# github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
# publish_dir: ./build/prod
|
2020-07-04 16:35:49 +02:00
|
|
|
# Once NPM_AUTH_TOKEN set up in repo, uncomment this
|
|
|
|
#- name: Deploy to NPM
|
|
|
|
# run: |
|
|
|
|
# npm config set //registry.npmjs.org/:_authToken=$NPM_TOKEN
|
|
|
|
# npm publish || true
|
|
|
|
# env:
|
|
|
|
# Add NPM publish token to the repo secrets
|
|
|
|
# NPM_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
|