Spec-Zone.ru › Yarn 3

yarn workspaces foreach

Плагин

Чтобы использовать эту команду, сначала установите плагин workspace-tools: yarn plugin import workspace-tools

Выполнить команду во всех рабочих пространствах.

Использование

$> yarn workspaces foreach <commandName> ...

Примеры

Опубликовать текущие и все дочерние пакеты:

yarn workspaces foreach npm publish --tolerate-republish

Выполнить скрипт сборки для текущих и всех дочерних пакетов:

yarn workspaces foreach run build

Выполнить скрипт сборки для текущих и всех дочерних пакетов параллельно, сначала выполнив сборку зависимостей пакета:

yarn workspaces foreach -pt run build

Выполнить скрипт сборки для нескольких пакетов и всех их зависимостей, сначала выполнив сборку зависимостей:

yarn workspaces foreach -ptR --from '{workspace-a,workspace-b}' run build

Параметры

Определение
Описание
-R,--recursive Найти пакеты через зависимости/devDependencies вместо использования поля workspaces
--from #0 Массив идентификаторов шаблонов glob, от которых будет начинаться рекурсия
-A,--all Выполнить команду во всех рабочих пространствах проекта
-v,--verbose Добавлять имя исходного рабочего пространства в каждую строку вывода
-p,--parallel Выполнять команды параллельно
-i,--interlaced Выводить вывод команд в реальном времени вместо буферизации
-j,--jobs #0 Максимальное число параллельных задач, к которому будет ограничена обработка; или unlimited
-t,--topological Выполнить команду после завершения всех рабочих пространств, от которых она зависит (обычные)
--topological-dev Выполнить команду после завершения всех рабочих пространств, от которых она зависит (обычные + dev)
--include #0 Массив идентификаторов шаблонов glob; будут обрабатываться только соответствующие рабочие пространства
--exclude #0 Массив идентификаторов шаблонов glob; соответствующие рабочие пространства не будут обрабатываться
--no-private Избегать выполнения команды в частных рабочих пространствах
--since Включать только рабочие пространства, изменённые после указанной метки.

Подробности

Эта команда выполнит заданную подкоманду в текущем и всех его дочерних рабочих пространствах. Различные флаги могут изменить точное поведение команды:

  • Если -p,--parallel установлен, команды будут выполняться параллельно; по умолчанию они будут ограничены примерно половиной количества ядер процессора, но это можно переопределить с помощью -j,--jobs, или отключить, установив -j unlimited.

  • Если -p,--parallel и -i,--interlaced установлены одновременно, Yarn будет выводить строки из вывода по мере их получения. Если -i,--interlaced не установлен, он будет вместо этого буферизовать вывод каждого процесса и выводить результирующие буферы только после завершения процессов-источников.

  • Если -t,--topological установлен, Yarn выполнит команду только после того, как все рабочие пространства, от которых она зависит через поле dependencies, успешно завершат выполнение. Если --topological-dev установлен, при определении точек ожидания будут учитываться как поля dependencies, так и devDependencies.

  • Если -A,--all установлен, Yarn выполнит команду во всех рабочих пространствах проекта. По умолчанию yarn выполняет команду только в текущем и всех его дочерних рабочих пространствах.

  • Если -R,--recursive установлен, Yarn будет находить рабочие пространства для выполнения команды, рекурсивно оценивая поля dependencies и devDependencies, вместо поиска в полях workspaces.

  • Если --from установлен, Yarn будет использовать пакеты, соответствующие шаблону 'from', в качестве отправной точки для любого рекурсивного поиска.

  • Если --since установлен, Yarn будет выполнять команду только для рабочих пространств, изменённых с момента указанной метки. По умолчанию Yarn будет использовать метки, указанные параметром конфигурации changesetBaseRefs.

  • Команда может применяться только к некоторым рабочим пространствам с помощью --include, который действует как белый список. Флаг --exclude сделает обратное и будет списком пакетов, которые не должны выполнять скрипт. Оба флага принимают шаблоны glob (если они являются допустимыми идентификаторами и поддерживаются micromatch). Убедитесь, что вы экранируете шаблоны, чтобы ваша оболочка не пыталась их расширить.

Добавление флага -v,--verbose заставит Yarn выводить больше информации; в частности, имя рабочего пространства, которое сгенерировало вывод, будет напечатано в начале каждой строки.

Если команда является run, а выполняемый скрипт не существует, дочернее рабочее пространство будет пропущено без ошибки.

© 2016–present Yarn Contributors
Licensed under the BSD License.
https://v3.yarnpkg.com/cli/workspaces/foreach

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API