# This is a basic test to build the dashboard

name: Test building web in multiple node version

# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master

concurrency:
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
  cancel-in-progress: true

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "build"
  build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [10.x, 12.x, 14.x]

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
      # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
      - uses: actions/checkout@v2
        with:
          submodules: recursive
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v2.3.0
        with:
          node-version: ${{ matrix.node-version }}

      # Install dependencies
      - name: Install dependencies
        working-directory: web
        run: CYPRESS_INSTALL_BINARY=0 yarn

      - name: Lint
        working-directory: web
        run: yarn run lint:js && yarn run lint:style

      - name: Build the Dashboard
        working-directory: web
        run: yarn build
