v15.1.2 #2663
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.js CI | |
on: | |
push: | |
branches: [main, '[0-9]+.x'] | |
pull_request: | |
branches: ['**'] | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js 20 | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
cache: yarn | |
- name: Install dependencies | |
run: yarn --frozen-lockfile | |
- name: Lint | |
run: yarn lint | |
unit-tests: | |
name: Unit tests | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [18, 20] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: yarn | |
- name: Install dependencies | |
run: yarn --frozen-lockfile | |
- name: Unit tests | |
run: yarn test:ci:unit | |
e2e-tests: | |
name: E2E Tests | |
strategy: | |
matrix: | |
node-version: [18, 20] | |
os: [ubuntu-latest, macos-latest, windows-2019] | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
- uses: gradle/actions/setup-gradle@v3 | |
- uses: ruby/setup-ruby@v1 | |
if: runner.os == 'macOS' | |
with: | |
ruby-version: '2.7.6' | |
- uses: actions/setup-python@v4 | |
if: runner.os == 'macOS' | |
with: | |
python-version: '3.10' | |
- name: Add msbuild to PATH | |
if: runner.os == 'windows' | |
uses: microsoft/[email protected] | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: yarn | |
- name: Setup Git user | |
run: | | |
git config --global user.name "test" | |
git config --global user.email "[email protected]" | |
- name: Install dependencies | |
run: yarn --frozen-lockfile | |
- name: E2E tests | |
run: yarn test:ci:e2e |