name: node_CI

on:
  push:
    branches:
    - master
  pull_request:
    branches:
    - '**'

jobs:
  tests:
    runs-on: ubuntu-20.04

    steps:
    - name: Checkout
      uses: actions/checkout@v3
    - name: Setup Nodejs Env
      run: echo "NODE_VER=`cat .nvmrc`" >> $GITHUB_ENV
    - name: Setup Nodejs
      uses: actions/setup-node@v3
      with:
        node-version: ${{ env.NODE_VER }}

    - name: Install Dependencies
      run: npm ci

    - name: Verify No Uncommitted Package-Lock Changes
      run: make validate-no-uncommitted-package-lock-changes

    - name: Run i18n_extract
      run: npm run i18n_extract

    - name: Lint
      run: npm run lint

    - name: Test
      run: npm run test

    - name: Build
      run: npm run build

    - name: Run Code Coverage
      uses: codecov/codecov-action@v3
