chore: add test step for next version on GH Action #612
Workflow file for this run
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: Build | |
on: | |
pull_request: | |
jobs: | |
dependencies: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'npm' | |
# Main package dependencies | |
- name: Cache NPM dependencies | |
uses: actions/cache@v3 | |
id: cache-primes | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }} | |
- name: Install dependencies | |
if: steps.cache-primes.outputs.cache-hit != 'true' | |
run: npm ci | |
# Next version dependencies | |
- name: Setup pnpm | |
uses: pnpm/action-setup@v3 # docs https://pnpm.io/continuous-integration#github-actions | |
with: | |
version: 9 | |
- name: Cache next version NPM dependencies | |
uses: actions/cache@v3 | |
id: cache-next | |
with: | |
path: next/node_modules | |
key: ${{ runner.os }}-node-next-${{ hashFiles('next/pnpm-lock.yaml') }} | |
- name: Install Next dependencies | |
if: steps.cache-next.outputs.cache-hit != 'true' | |
run: cd next && CI=true pnpm i | |
test: | |
runs-on: ubuntu-latest | |
needs: [dependencies] | |
steps: | |
- uses: actions/checkout@v3 | |
# Install pnpm | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 9.15.2 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'pnpm' | |
# Main package setup | |
- name: Get cached NPM dependencies | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }} | |
- name: Tests - Main Package | |
run: npm run test | |
# Next package setup | |
- name: Setup Node.js for next package | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: 'next/.nvmrc' | |
cache: 'next/pnpm-lock.yaml' | |
- name: Get cached Next NPM dependencies | |
uses: actions/cache@v3 | |
with: | |
path: next/node_modules | |
key: ${{ runner.os }}-node-next-${{ hashFiles('next/package-lock.json') }} | |
- name: Tests - Next Package | |
run: cd next && npm run test | |
lint: | |
runs-on: ubuntu-latest | |
needs: [dependencies] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'npm' | |
- name: Get cached NPM dependencies | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('package-lock.json') }} # (1) | |
- name: Lint | |
run: npm run lint | |
- run: npm run prettier:check | |
- run: npm run check:pr-version | |
- run: npm run check:pr-next-version |