pnpm -r, --recursive
Псевдоніми: m
, multi
, recursive
, <command> -r
Запускає команду у кожному проєкті робочої області, коли використовується з наступними командами:
install
list
outdated
publish
rebuild
remove
unlink
update
why
Запускає команду у кожному проєкті робочої області, за винятком кореневого проєкту, при використанні з наступними командами:
exec
run
test
add
Якщо ви хочете, щоб кореневий проєкт було включено навіть під час виконання скриптів, встановіть для параметра include-workspace-root значення true
.
Приклад використання:
pnpm -r publish
Параметри
--link-workspace-packages
- Стандартно: false
- Тип: true, false, deep
Звʼязує локально доступні пакунки у робочих просторах монорепо в node_modules
замість того, щоб повторно завантажувати їх з реєстру. Це емуляція функціоналу, подібного до yarn workspaces
.
Якщо встановлено значення deep, локальні пакунки також можуть бути звʼязані з підзалежностями.
Зауважте, що замість цього рекомендується використовувати npmrc для цього параметра, щоб забезпечити однакову поведінку у всіх середовищах. Цей параметр існує виключно для того, щоб ви могли його замінити, якщо це необхідно.
--workspace-concurrency
- Стандартно: 4
- Тип: Number
Встановлює максимальну кількість завдань, що виконуються одночасно. Для необмеженого паралелізму використовуйте Infinity
.
Ви можете встановити workspace-concurrency
як <= 0
, і вона буде використовувати кількість ядер хосту: max(1, (кількість ядер) - abs(workspace-concurrency))
--[no-]bail
- С тандартно: true
- Тип: Boolean
Якщо значення true, зупиняється, коли завдання видає помилку.
Цей параметр не впливає на код завершення.
Навіть якщо використовується --no-bail
, всі завдання завершаться, але якщо якесь із завдань завершиться невдало, команда завершить роботу з ненульовим кодом.
Приклад (запустити тести у кожному пакунку, продовжити, якщо тести не спрацювали в одному з них):
pnpm -r --no-bail test