Skip to content

Commit

Permalink
Update to pnpm 10 and update CI files (#213)
Browse files Browse the repository at this point in the history
* Update to pnpm 10 and update CI files

* Separate tests and build
  • Loading branch information
victortrinh2 authored Jan 10, 2025
1 parent e4b7d85 commit 1b8d4ca
Show file tree
Hide file tree
Showing 4 changed files with 83 additions and 80 deletions.
17 changes: 17 additions & 0 deletions .github/composite-actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Setup Node and PNPM

runs:
using: composite
steps:
- name: Install pnpm
uses: pnpm/action-setup@v4
id: pnpm-install
with:
version: 10
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
cache: "pnpm"
22 changes: 4 additions & 18 deletions .github/workflows/chromatic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,25 +21,11 @@ jobs:
with:
fetch-depth: 0

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"

- name: Cache pnpm store
uses: actions/cache@v4
with:
path: |
node_modules
~/.pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-
- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install Dependencies
run: |
corepack enable
pnpm install --frozen-lockfile
- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Build Packages
run: pnpm run build
Expand Down
121 changes: 61 additions & 60 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,77 +18,78 @@ jobs:
name: "Eslint"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
- name: Cache pnpm store
uses: actions/cache@v4
with:
path: |
node_modules
~/.pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-
- name: Install Dependencies
run: |
corepack enable
pnpm install --frozen-lockfile
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Lint Eslint
run: pnpm run lint-ci-eslint

stylelint:
name: "Stylelint"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
- name: Cache pnpm store
uses: actions/cache@v4
with:
path: |
node_modules
~/.pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-
- name: Install Dependencies
run: |
corepack enable
pnpm install --frozen-lockfile
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Lint Stylelint
run: pnpm run lint-ci-style

build_and_tests:
name: "Build and Tests"
typecheck:
name: "Typecheck"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
- name: Cache pnpm store
uses: actions/cache@v4
with:
path: |
node_modules
~/.pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-
- name: Install Dependencies
run: |
corepack enable
pnpm install --frozen-lockfile
- name: Typecheck
run: pnpm run lint-ci-eslint
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Lint Stylelint
run: pnpm run lint-ci-typecheck

tests:
name: "Tests"
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Lint Stylelint
run: pnpm run test

build:
name: "Build"
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node and PNPM
uses: ./.github/composite-actions/setup

- name: Install dependencies
run: pnpm i --frozen-lockfile

- name: Build Packages
run: pnpm run build
- name: Run Jest
run: pnpm run test
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,5 @@
},
"engines": {
"node": ">=18"
},
"packageManager": "[email protected]"
}
}

0 comments on commit 1b8d4ca

Please sign in to comment.