name: Test on: pull_request: branches: - main schedule: - cron: '0 22 * * 3' workflow_call: permissions: contents: read jobs: test: name: Test strategy: fail-fast: false matrix: node-version: - '20.5' - '18.17' - '16.20' runs-on: macos-latest steps: - name: Checkout uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Node.js uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0 with: node-version: "${{ matrix.node-version }}" cache: 'yarn' - name: Install (Node.js v18+) if : ${{ matrix.node-version != '16.20' }} run: yarn install --frozen-lockfile - name: Install (Node.js < v18) if : ${{ matrix.node-version == '16.20' }} run: yarn install --frozen-lockfile --ignore-engines - name: Build run: yarn build - name: Lint run: yarn lint - name: Test run: yarn test