Develop #6
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", "develop" ] | |
pull_request: | |
branches: [ "main", "develop" ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [18.x, 20.x, 22.x] | |
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'pnpm' # Cache pnpm instead of npm | |
# Install pnpm | |
- name: Install pnpm | |
run: npm install -g pnpm | |
# Install dependencies using pnpm | |
- name: Install Dependencies | |
run: pnpm install --frozen-lockfile | |
# Run build (Nx should handle the build, can be adjusted if specific commands are needed) | |
- name: Build the project | |
run: pnpm run build --if-present | |
# Run tests using Nx (adjust the test command if needed for Nx-specific testing) | |
- name: Run Tests | |
run: pnpm run test --if-present | |
# Optionally, you can also run linting if set up in Nx | |
- name: Run Lint | |
run: pnpm run lint --if-present |