2016-08-01 11 views
0

Как я могу поддержать эти сценарии аддонов NPM/ember?Опубликовать ember addon для локального реестра NPM для сборки разработчика?

  • разработчиков создавать уголек Аддон и использовать построение приложений уголька B, который использует свой собственный пакет
  • разработчики только строит B Установку из нашего нексуса НПМ хранилища интеграции
  • системы сборки строит уголек Аддон установки в нашем нексус релиз NPM хранилище

Maven

  • рабочий стол разработчика установить пакеты для локального репо, которые будут использоваться позже в сборке.
  • система сборки строит развернуть пакеты для нашего внутреннего общего репо, которые будут использоваться разработчиками, чтобы они не должны строить все

НПМ

  • система сборки строит может использовать npm publish --registry http://ourrepo/nexus/ .... опубликовать в приватном реестре
  • разработать настольные сборки do ????

Мы можем использовать DependsOnMe с относительными путями, но для этого требуется, чтобы мы установили какое-то правило, когда сборки работают в одно место локально, а другое - на машине сборки.

Хотя возможно, я надеюсь, что есть более элегантное решение, чтобы это произошло.

Могу ли я создать разработчики пакетов, которые отправляются в локальный кэш npm для последующего использования, и если да, то можете ли вы указать мне на эту документацию?

Связанные

ответ

0

Поскольку мы используем Maven передний конец плагин для управления НПМ и уголек мы можем инкапсулировать дополнительный модуль НПМ (в данном случае уголек аддон) как артефакт maven и использовать управление зависимостями maven для наших различных сценариев

Ember Добавить модуль

  • добавить 'NPM пакета' для создания локального пакета в репозитории НОГО (в нашем случае корневой/цели/TMP/.npm //)
  • добавить сборку для создания дегтя. gz, содержащий файл tar (немного глупый) и прикрепляет его к модулю как артефакт (тип: tar.GZ, classifer: уголек-аддон)

модуль Client

  • добавить Maven-зависимость-плагин распаковать который распаковывает tar.gz классификатор аддон модуля: уголек-аддон к целевой/Ember-аддоны до для выполнения НПМ для этого модуля
  • модифицировать package.json использовать локальную зависимость «наш-аддон»: «файл: ../../ целевые/уголек-аддоны /// package.tgz»

Если пользователь строит ember и client, а затем модуль модуля addon, помещающий артефакт в локальный репозиторий maven. Клиентский модуль распаковывается из локального репозитория и тянет в node_modules через процесс сборки npm ember.

Если пользователь создает только клиент, то клиентский модуль извлекает артефакт-аддон из нашего репозитория nexus перед этапами распаковки и использования.