Skip to main content
Version: 6.x

Intégration Continue

pnpm peut facilement être utilisé dans divers systèmes d'intégration continue.

Travis

Sur Travis CI, vous pouvez utiliser pnpm pour installer vos dépendances en ajoutant ce qui suit à votre fichier .travis.yml:

.travis.yml
cache:
npm: false
directories:
- "~/.pnpm-store"
before_install:
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6
- pnpm config set store-dir ~/.pnpm-store
install:
- pnpm install

Semaphore

Sur Semaphore, vous pouvez utiliser pnpm pour installer et mettre en cache vos dépendances en ajoutant ceci à votre .semaphore/semaphore.yml:

.semaphore/semaphore.yml
version: v1.0
name: Semaphore CI pnpm example
agent:
machine:
type: e1-standard-2
os_image: ubuntu1804
blocks:
- name: Install dependencies
task:
jobs:
- name: pnpm install
commands:
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6
- checkout
- cache restore node-$(checksum pnpm-lock.yaml)
- pnpm install
- cache store node-$(checksum pnpm-lock.yaml) ~/.pnpm-store

AppVeyor

Sur AppVeyor, vous pouvez utiliser pnpm pour installer vos dépendances en ajoutant ce à votre appveyor.yml:

appveyor.yml
install:
- ps: Install-Product node $env:nodejs_version
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6
- pnpm install

Sail CI

Sur [Sail CI], vous pouvez utiliser pnpm pour installer vos dépendances en ajoutant ceci à votre fichier .sail.yml:

.sail.yml
install:
image: znck/pnpm:latest
command:
- pnpm
args:
- install

Pour obtenir la version exacte de Node et la version de pnpm dont vous avez besoin, vous pouvez toujours faire votre propre image Docker et la publier sur Docker Hub.

GitHub Actions

Sur les actions GitHub, vous pouvez utiliser pnpm pour installer et mettre en cache vos dépendances comme ceci (fait partie de .github/workflows/NAME.yml) :

.github/workflows/NAME.yml
name: pnpm Example Workflow
on:
push:
jobs:
build:
runs-on: ubuntu-20.04
strategy:
matrix:
node-version: [15]
steps:
- uses: actions/checkout@v2
- uses: pnpm/action-setup@v2.0.1
with:
version: 6.20.3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm install
note

Caching packages dependencies with actions/setup-node@v2 requires you to install pnpm with version 6.10+.

Gitlab CI

On Gitlab, you can use pnpm for installing and caching your dependencies like so (belongs in .gitlab-ci.yml):

.gitlab-ci.yml
stages:
- build

build:
stage: build
image: node:14.16.0-buster
before_script:
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6
- pnpm config set store-dir .pnpm-store
script:
- pnpm install # install dependencies
cache:
key: "$CI_COMMIT_REF_SLUG"
paths:
- .pnpm-store

Bitbucket Pipelines

You can use pnpm for installing and caching your dependencies:

.bitbucket-pipelines.yml
definitions:
caches:
pnpm: $BITBUCKET_CLONE_DIR/.pnpm-store

pipelines:
pull-requests:
"**":
- step:
name: Build and test
image: node:14.16.0
script:
- curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@6
- pnpm install
- pnpm run build # Replace with your build/test…etc. commands
caches:
- pnpm