name: Node CI on: push: branches: - main pull_request: branches: - main jobs: skip_test: continue-on-error: true runs-on: ubuntu-latest outputs: should_skip: ${{ steps.skip_check.outputs.should_skip }} steps: - id: skip_check uses: fkirc/skip-duplicate-actions@master with: # All of these options are optional, so you can remove them if you are happy with the defaults concurrent_skipping: 'never' skip_after_successful_duplicate: 'true' paths_ignore: '["**/README.md", "**/docs/**"]' do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]' test: needs: skip_test # allow skip_test to cancel this job if it’s not needed runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest] node-version: [14.x, 15.x] steps: - uses: actions/checkout@v1 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - run: yarn --frozen-lockfile env: CI: true - run: yarn build env: CI: true - run: yarn test env: CI: true