Насколько я понимаю, Bazel ожидает, что проекты будут находиться в моно-хранилище с файлом WORKSPACE на верхнем уровне и файлами BUILD в каждом проекте:
Repo
├── ProjectA
│ └── BUILD
├── ProjectB
│ └── BUILD
└── WORKSPACE
Однако, просматривая документацию по правилам Bazel NodeJS , кажется, что каждый проект должен иметь свой собственный файл WORKSPACE
, в котором он определяет свои зависимости. то есть ...
Repo
├── ProjectA
│ ├── BUILD
│ └── WORKSPACE
└── ProjectB
├── BUILD
└── WORKSPACE
Это похоже на мульти-репо, где каждый проект ссылается на другие проекты как внешняя зависимость , что мне казалось нормальным, пока я не понял, что для внешних зависимостей Bazel требует всех транзитивных зависимостей указывается в файле WORKSPACE для каждого пакета , что, безусловно, не идеально.
Какой самый простой способ использовать Bazel с проектами NodeJS, когда некоторые проекты могут быть написаны на других языках? Кроме того, есть ли где-нибудь пример использования Bazel в режиме мульти-репо?
Спасибо!