Как загрузить все зависимости (пряжу) в виде tarball в приватный Nexus3 - PullRequest
0 голосов
/ 15 марта 2019

Я работаю над Nexus3 и пряжей.

Положение

  • В конце концов, программа будет работать в частной сети
  • Я буду выполнять некоторые задачи в открытой сетевой (исходной) среде и частной сети (целевой).
  • Я буду извлекать зависимости в открытой сетевой среде и копировать целые файлы Nexus3 в приватные.
  • В моем личном окружении я сделаю yarn install для компиляции проекта

То, что я сделал до сих пор (O означает открытую сеть и P означает частную):

  • (O) Запустите Nexus3 в открытой сети и зарегистрируйте репозиторий. (предположим, что URL репо http://o-hostname/repository/npm-public)
  • (O) Измените URL репо в терминале комендом yarn config set repository "http://o-hostname/repository/npm-public"
  • (O) yarn install и я могу видеть список зависимостей в Nexus3 UI.
  • (O) сжимает файлы Nexus3 и перемещает их в приватную среду.
  • (P) Запустите Nexus3 в частной сети и зарегистрируйте репо. (предположим, что URL репо http://p-hostname/repository/npm-public)
  • (P) Изменить URL репо в терминале с помощью yarn config set repository "http://p-hostname/repository/npm-public"
  • (P) перейти в папку проекта и похвалить yarn install --verbose

Проблема, с которой я сталкиваюсь:

  • С некоторыми зависимостями работает нормально
  • В некоторых пакетах, таких как fbjs* 1048, есть ошибка
  • Я мог бы найти fbjs не в package.json, а в yarn.lock. например ...
    create-react-class@^15.5.2, create-react-class@^15.5.3, create-react-class@^15.6.3:
      version "15.6.3"
      resolved "http://125.131.88.146:9080/repository/npm-public/create-react-class/-/create-react-class-15.6.3.tgz#2d73237fb3f970ae6ebe011a9e66f46dbca80036"
      integrity sha512-M+/3Q6E6DLO6Yx3OwrWjwHBnvfXXYA7W+dFjt/ZDBemHO1DDZhsalX/NUtnTYclN6GfnBDRh4qRHjcDHmlJBJg==
      dependencies:
        fbjs "^0.8.9"
        loose-envify "^1.3.1"
        object-assign "^4.1.1"

  • Я могу найти fbjs в репозитории частной сети. Однако fbjs это не tarball, а JSON (который содержит местоположение tarball)

Предполагая

  • Похоже, что Nexus3 не содержит суб-зависимостей для репо

Вопрос

  • Как я могу рекурсивно (!) Загрузить все зависимости в частное хранилище.

Если мое предположение неверно, пожалуйста, дайте мне знать. Я такой новый с такими настройками. Спасибо за чтение этого длинного поста.

=========== Редактировать 190318 ===========

Я предполагаю, что Нексус тянет тарбол, если цель tgz. Однако, если целью является расширение .npm, он извлекает tgz с удаленного компьютера (где требуется подключение к Интернету) в соответствии с тем, что описано в файле npm (Application / json).

Так что в конечном итоге я хотел изменить .npm файлы в репозитории Nexus на .tgz файлы расширения. Является ли это возможным?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...