name: CI Build on: # Trigger the workflow on push or pull request, # but only for the master branch on Push and any branches on PR push: branches: - master - next pull_request: branches: - '**' env: CI: true jobs: run: name: Node ${{ matrix.node }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: # define which version of NodeJS to run the build node: [20] steps: - name: Clone repository uses: actions/checkout@v4 with: fetch-depth: 3 - uses: actions/cache@v4 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-node- - name: Set Node.js version uses: actions/setup-node@v4 with: node-version: ${{ matrix.node }} - run: node --version - run: npm --version - name: Install npm dependencies run: npm install - name: Prod Build with TS Types run: npm run build:prod - name: Start HTTP Server run: npm run serve:demo & - name: Run Cypress E2E tests uses: cypress-io/github-action@v6 with: # wait-on: 'http://localhost:8080' browser: chrome config-file: cypress/cypress.config.ts install-command: npm install