name: CI on: push: branches: [main] pull_request: branches: [main] jobs: lint: name: Lint runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up workspace uses: ./.github/actions/setup - name: Run linter run: npm run lint test-node: name: Test on Node.js ${{ matrix.node-version }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: node-version: [6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17] steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up workspace uses: ./.github/actions/setup with: node-version: ${{ matrix.node-version }} - name: Run tests run: npm run test-node test-browser: name: Test in browser runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up workspace uses: ./.github/actions/setup - name: Install browsers run: npx playwright install --with-deps - name: Run tests run: npm run test-browser