Skip to content

Commit

Permalink
Feat: adding support for pnpm (#199)
Browse files Browse the repository at this point in the history
* adding support for pnpm

* fixing spellcheck

* fixing merge

* simplifying the uninstall of pnpm

* fixing spellcheck errors

* fixing another issue from merge

* fixing tests

* fixing steps in test-deploy

* fixing steps in test-deploy

* fixing tests

* fixing listing of packages for pnpm

* adding integration test to install pnpm

* adding job to the workflow

* adding source command so the pnpm will be on the commandline

* fixing so determine lockfile finds the correct lockfiles

* moving steps to a better location

* updating the lock file to the latest since updates to master

* updating test deploy to use the latest version of pnpm

---------

Co-authored-by: Kyle a.k.a. TechSquidTV <33272306+KyleTryon@users.noreply.github.com>
Co-authored-by: marboledacci <mateo.arboleda@circleci.com>
  • Loading branch information
3 people authored Aug 21, 2024
1 parent 6fcc303 commit cc31fc8
Show file tree
Hide file tree
Showing 14 changed files with 4,750 additions and 16 deletions.
141 changes: 139 additions & 2 deletions .circleci/test-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,22 @@ jobs:
echo "Node version 16 not found"
exit 1
fi
integration-test-install-pnpm:
parameters:
os:
type: executor
executor: <<parameters.os>>
steps:
- checkout
- node/install:
install-pnpm: true # Test the install of PNPM
pnpm-version: "9.7.1"
- run:
command: |
if ! pnpm --version | grep -q "9.7.1"; then
echo "pnpm version 9.7.1 not found"
exit 1
fi
integration-test-install-latest:
parameters:
Expand Down Expand Up @@ -122,6 +138,21 @@ jobs:
cache-version: override-v3
app-dir: "~/project/sample"
- run: cd ~/project/sample && npm run test
integration-test-pnpm:
executor:
name: node/default
steps:
- checkout
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/yarn.lock
- node/install-packages:
pkg-manager: pnpm
cache-version: pnpm-v1
app-dir: "~/project/sample"
- run: cd ~/project/sample && pnpm test
integration-test-yarn:
executor:
name: node/default
Expand Down Expand Up @@ -151,6 +182,11 @@ workflows:
matrix:
parameters:
os: [linux, macos, machine]
- integration-test-install-pnpm:
filters: *filters
matrix:
parameters:
os: [ linux, macos, machine ]
- integration-test-install-latest:
filters: *filters
matrix:
Expand All @@ -167,20 +203,51 @@ workflows:
app-dir: "~/project/sample"
cache-version: v4
test-results-for: jest
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/pnpm-lock.yaml
rm ~/project/sample/yarn.lock
- node/test:
filters: *filters
name: node-yarn-jest-test-job
app-dir: "~/project/sample"
cache-version: v4
test-results-for: jest
pkg-manager: yarn
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/pnpm-lock.yaml
- node/test:
filters: *filters
name: node-pnpm-jest-test-job
app-dir: "~/project/sample"
cache-version: v4
test-results-for: jest
pkg-manager: pnpm
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/yarn.lock
- node/test:
filters: *filters
name: node-npm-mocha-test-job
app-dir: "~/project/sample"
cache-version: v4
test-results-for: mocha
run-command: testmocha
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/pnpm-lock.yaml
rm ~/project/sample/yarn.lock
- node/test:
filters: *filters
name: node-yarn-mocha-test-job
Expand All @@ -189,41 +256,108 @@ workflows:
test-results-for: mocha
pkg-manager: yarn
run-command: testmocha
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/pnpm-lock.yaml
- node/test:
filters: *filters
filters: *filters
name: node-pnpm-mocha-test-job
app-dir: "~/project/sample"
cache-version: v4
test-results-for: mocha
pkg-manager: pnpm
run-command: testmocha
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/yarn.lock
- node/test:
filters: *filters
name: node-yarn-mocha-with-test-result-path-job
app-dir: "~/project/sample"
cache-version: v4
test-results-for: mocha
pkg-manager: yarn
run-command: testmocha
test-results-path: sample/test-results.xml
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/pnpm-lock.yaml
- node/test:
filters: *filters
name: node-test-results-file-job
app-dir: "~/project/sample"
cache-version: v4
test-results-path: sample/other-junit.xml
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/pnpm-lock.yaml
rm ~/project/sample/yarn.lock
- node/test:
filters: *filters
name: node-test-no-junit
app-dir: "~/project/sample"
cache-version: v4
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/pnpm-lock.yaml
rm ~/project/sample/yarn.lock
- node/run:
filters: *filters
name: node-run-npm-job
app-dir: "~/project/sample"
cache-version: v4
npm-run: build
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/pnpm-lock.yaml
rm ~/project/sample/yarn.lock
- node/run:
filters: *filters
name: node-run-yarn-job
app-dir: "~/project/sample"
cache-version: v5
pkg-manager: yarn
yarn-run: build
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/pnpm-lock.yaml
- node/run:
filters: *filters
name: node-run-pnpm-job
app-dir: "~/project/sample"
cache-version: v5
pkg-manager: pnpm
pnpm-run: build
setup:
- run:
name: Remove other lock files
command: |
rm ~/project/sample/package-lock.json
rm ~/project/sample/yarn.lock
- integration-test-override-ci:
filters: *filters
filters: *filters
- integration-test-override-ci-windows:
filters: *filters
- integration-test-pnpm:
filters: *filters
- integration-test-override-ci-windows:
filters: *filters
- integration-test-yarn:
Expand All @@ -241,10 +375,13 @@ workflows:
- integration-test-install-specified-version
- integration-test-install-latest
- integration-test-install-lts
- integration-test-install-pnpm
- integration-test-pnpm
- node-yarn-mocha-with-test-result-path-job
- node-test-results-file-job
- node-run-npm-job
- node-run-yarn-job
- node-run-pnpm-job
github_token: GHI_TOKEN
context: orb-publisher
filters: *release-filters
Loading

0 comments on commit cc31fc8

Please sign in to comment.