package-lock.json разрешил точки ссылки на локальный URL-адрес артефакта, а не глобально установленный реестр - PullRequest
0 голосов
/ 22 марта 2019

У меня есть файл .npmrc с:

registy=http://artifacts.sample.com/artifactory/api/npm/

package-lock.json содержит разрешенное поле для зависимостей, которое выглядит примерно так:

"dependencies": {
    "acorn": {
      "version": "5.7.3",
      "resolved": "http://artifacts.sample.com/artifactory/api/npm/acorn/-/acorn-5.7.3.tgz",
      "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
      "dev": true
    }

Теперь, когда я делаю npmпри установке он изменяет разрешенное поле package-lock.json так, чтобы оно указывало на локальный артефакт вместо того, который указан в .npmrc, например:

"dependencies": {
    "acorn": {
      "version": "5.7.3",
      "resolved": "http://localrepo.sample.com/artifactory/api/npm/acorn/-/acorn-5.7.3.tgz",
      "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
      "dev": true
    }

У нас есть локализованный код, и это даст доступ кому-то живомув другой части мира, где их URL-адреса артефактов указывают куда-то еще, или он просто изменит файл package-lock.json, чтобы вместо этого они указывали на их локальный URL, и у нас всегда будет изменяющийся файл package-lock.json.

У меня тоже были проблемы с "dev" и "целостностью", но они были исправлены с помощью https://github.com/npm/npm/issues/16938#issuecomment-339863980

Я использую последние версии node и npm.

node -v
v10.15.3

npm -v
6.9.0

Есть ли в любом случае, мы можем избежать этого?

...