10 runs-on: ubuntu-latest
11 environment: browserstack
13 BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
14 BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
16 name: ${{ matrix.BROWSER }}
18 group: ${{ github.workflow }}-${{ matrix.BROWSER }}
39 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
41 - name: Use Node.js ${{ env.NODE_VERSION }}
42 uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
44 node-version: ${{ env.NODE_VERSION }}
47 uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2
50 key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-${{ hashFiles('**/package-lock.json') }}
52 ${{ runner.os }}-node-${{ env.NODE_VERSION }}-npm-lock-
54 - name: Install dependencies
58 run: npm run build:all
60 - name: Pretest script
64 run: npm run test:unit -- -v --browserstack "${{ matrix.BROWSER }}" --run-id ${{ github.run_id }} --isolate --retries 3 --hard-retries 1