name: CI on: push: branches: - master pull_request: {} jobs: lint: name: Lint runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Install dependencies run: npm ci - name: Lint (ESlint) run: npm run lint - name: Lint (Prettier) run: npm run check-format - name: Lint (TypeScript) run: npm run dtslint test: name: Test runs-on: ${{ matrix.operating-system }} strategy: fail-fast: false matrix: operating-system: ['ubuntu-latest', 'windows-latest'] # https://nodejs.org/en/about/releases/ node-version: ['10', '12', '14', '16', '17'] steps: - name: Checkout uses: actions/checkout@v2 with: submodules: true - name: Setup Node.js uses: actions/setup-node@v2 with: node-version: ${{ matrix.node-version }} - name: Install dependencies run: npm ci - name: Test run: npm run test