Почему мой проект требует нескольких реестров npmrc, когда артефакт уже включает их в качестве исходных источников?

У меня есть два монохранилища, которые используют Node/NPM/Lerna для управления и распространения нескольких пакетов.

Проект X включает .npmrc файл с одним реестром. Этот реестр предназначен для частного канала Azure, который включает три исходных источника. По имени (A, B, C)

  1. A - Публичный NPMJS
  2. B - Частный пакет
  3. C - Частный пакет

Проект Y требует .npmrc файл с двумя регистрами пространства имен.

  1. Первый - тот же, что используется в Project X
  2. Второй * кажется * обязательным, и @ зарегистрируйте канал Azure для B.

Мой вопрос, если мой .npmrc Файл регистрирует пакет, который содержит три восходящих канала, почему мне нужно дополнительно зарегистрировать один из этих исходных каналов в моем .npmrc файл (B)?

Насколько я понял из документации, Upstream Feeds - это альтернативный подход к регистрации нескольких пакетов с пространством имен в вашем .npmrc файл.

Я явно что-то упускаю. Пожалуйста помогите. Спасибо

1 ответ

Решение

Вы правы в том, что Project X использует настройку, которую мы рекомендуем, которая представляет собой единую ленту артефактов Azure в вашем .npmrc"s registry= линия, которая направлена ​​на любые другие каналы, которые вам нужны.

Однако Project Y, возможно, решил использовать области, чтобы вместо этого использовать только ограниченные пакеты из артефактов Azure, одновременно извлекая большинство пакетов с npmjs.com. Обычно мы не рекомендуем этого, но это правильный способ работы. Обратите внимание, что в этой конфигурации Project Y не может воспользоваться преимуществами вышестоящих источников (например, сохраненной копии всего, что вы используете на npmjs.com, на случай, если позже он будет удален).

Если вы хотите перейти на рекомендуемую конфигурацию, попробуйте убедиться, что проект Y .npmrc имеет один registry= линия:

registry=https://dev.azure.com/.../ProjectXFeedWithUpstreams/...

и посмотреть, если он все еще строит (удалить или переименовать node_modules когда ты бежишь npm install).

Другие вопросы по тегам