chore(deps): bump mongodb from 4.7.0 to 4.17.0 #29
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Node CI | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- '**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
prepare-yarn-cache-ubuntu: | |
uses: ./.github/workflows/prepare-cache.yml | |
with: | |
os: ubuntu-latest | |
prepare-yarn-cache-macos: | |
uses: ./.github/workflows/prepare-cache.yml | |
with: | |
os: macos-latest | |
prepare-yarn-cache-windows: | |
uses: ./.github/workflows/prepare-cache.yml | |
with: | |
os: windows-latest | |
ts-compatibility: | |
name: TypeScript Compatibility | |
runs-on: ubuntu-latest | |
needs: prepare-yarn-cache-ubuntu | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: yarn | |
- name: install | |
run: yarn --immutable | |
- name: build | |
run: yarn build | |
- name: ts integration | |
run: yarn test-ts --selectProjects ts-integration | |
- name: type tests | |
run: yarn test-ts --selectProjects type-tests | |
- name: verify TypeScript@4.3 compatibility | |
run: yarn verify-old-ts | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
needs: prepare-yarn-cache-ubuntu | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: yarn | |
- name: install | |
run: yarn --immutable | |
- name: build | |
run: yarn build:js | |
- name: verify Yarn PnP compatibility | |
run: yarn verify-pnp | |
- name: run eslint | |
run: yarn lint | |
- name: run prettier | |
run: yarn lint:prettier:ci | |
- name: check copyright headers | |
run: yarn check-copyright-headers | |
yarn-validate: | |
name: Validate Yarn dependencies and constraints | |
runs-on: ubuntu-latest | |
needs: prepare-yarn-cache-ubuntu | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: yarn | |
- name: 'Check for unmet constraints (fix w/ "yarn constraints --fix")' | |
run: yarn constraints | |
- name: 'Check for duplicate dependencies (fix w/ "yarn dedupe")' | |
run: yarn dedupe --check | |
test-ubuntu: | |
uses: ./.github/workflows/test.yml | |
needs: prepare-yarn-cache-ubuntu | |
with: | |
os: ubuntu-latest | |
test-macos: | |
uses: ./.github/workflows/test.yml | |
needs: prepare-yarn-cache-macos | |
with: | |
os: macos-latest | |
test-windows: | |
uses: ./.github/workflows/test.yml | |
needs: prepare-yarn-cache-windows | |
with: | |
os: windows-latest | |
test-coverage: | |
name: Node LTS on Ubuntu with coverage (${{ matrix.shard }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
shard: ['1/4', '2/4', '3/4', '4/4'] | |
runs-on: ubuntu-latest | |
needs: prepare-yarn-cache-ubuntu | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js LTS | |
uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
cache: yarn | |
- name: install | |
run: yarn --immutable | |
- name: build | |
run: yarn build:js | |
- name: Get number of CPU cores | |
id: cpu-cores | |
uses: SimenB/github-actions-cpu-cores@v1 | |
- name: run tests with coverage | |
run: | | |
yarn jest-coverage --color --config jest.config.ci.mjs --max-workers ${{ steps.cpu-cores.outputs.count }} --shard=${{ matrix.shard }} | |
yarn test-leak | |
- name: map coverage | |
run: node ./scripts/mapCoverage.mjs | |
if: always() | |
- uses: codecov/codecov-action@v3 | |
if: always() | |
with: | |
directory: ./coverage |