server/.github/workflows/node-tests.yml

93 lines
2.2 KiB
YAML

name: Node
on:
pull_request:
push:
branches:
- master
- stable*
jobs:
versions:
runs-on: ubuntu-latest
outputs:
nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
npmVersion: ${{ steps.versions.outputs.npmVersion }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@v1.1
id: versions
with:
fallbackNode: '^12'
fallbackNpm: '^6'
test:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Test
run: npm run test
jsunit:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Test
run: ./autotest-js.sh
handlebars:
runs-on: ubuntu-latest
needs: versions
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@v2
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
- name: Set up npm ${{ needs.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
- name: Install dependencies
run: npm ci
- name: Run compile
run: ./build/compile-handlebars-templates.sh