name: Build Web on: push: branches: - master paths: - '.github/workflows/web-*.yml' - 'webclient/**' - '!**.md' pull_request: paths: - '.github/workflows/web-*.yml' - 'webclient/**' - '!**.md' jobs: build-web: name: React (Node ${{matrix.node_version}}) runs-on: ubuntu-latest defaults: run: working-directory: webclient strategy: fail-fast: false matrix: node_version: - 16 - lts/* steps: - name: Checkout uses: actions/checkout@v3 - name: Setup Node.js uses: actions/setup-node@v2 with: node-version: ${{matrix.node_version}} cache: 'npm' cache-dependency-path: 'webclient/package-lock.json' - name: Install dependencies run: npm clean-install - name: Build app run: npm run build - name: Test app run: npm run test