n1ro°
RU

Ошибки и коды · Инструкция

npm не ставит private package в CI: как настроить NPM_TOKEN и .npmrc

Локально private package может устанавливаться из-за user-level `.npmrc`, а CI начинает с чистой среды. Поэтому auth нуж

Редакция N1RO · Проверено

Короткий ответ

Храните token в secret CI и используйте project `.npmrc` с переменной, например `//registry.npmjs.org/:_authToken=${NPM_TOKEN}`. Не коммитьте реальное значение токена в репозиторий.

Что делать

  1. Создайте минимальный token: Для install обычно достаточно read-only granular token.
  2. Сохраните его в CI secrets: Например, секрет `NPM_TOKEN`.
  3. Создайте project `.npmrc`: Укажите registry и литерал `${NPM_TOKEN}`, а не сам токен.
  4. Передайте env: В step установки экспортируйте secret в переменную `NPM_TOKEN`.
  5. Проверьте без утечки: Запустите `npm ci`; в логах не должно быть значения токена.

Важно

Legacy access tokens удалены; не используйте старые инструкции с долговечными broad tokens.

Что учитывать

Legacy access tokens удалены; не используйте старые инструкции с долговечными broad tokens.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Using private packages in a CI/CD workflow). Пример и формулировки — редакция N1RO на 2026-09-17.