Получить последнюю версию пакета узла в Nexus

Мы работаем над проектом Node и Angular 5, в котором мы используем Nexus в качестве репозитория нашего приложения. Это приложение транспилируется, упаковывается и загружается в репозиторий Nexus. Затем мы создали канал в Jenkins, который загружает последнюю версию приложения из Nexus и выполняет ее. Но сейчас у нас возникла проблема. Нет обращения к Nexus API для возврата пути к последней версии пакета узла (созданной публикацией npm).

Звонок, который мы делаем, следующий:

http://HOST-NEXUS/service/rest/v1/search?repository=my-repository&name=my-node-project

Но у него есть проблема: этот вызов возвращает только первые 50 версий. Если у вас в репозитории уже более 50 версий приложения, последние не возвращает.

Поэтому мне было интересно, знаете ли вы какой-нибудь способ увеличить этот предел в 50 версий? Или еще лучше, знаете ли вы, как получить последнюю версию напрямую? Что-то вроде этого (этот пример не работает в Node, но работает в Maven):

http://HOST-NEXUS/service/rest/v1/search?repository=my-repository&name=my-node-project&version=LATEST

Спасибо и всего наилучшего.


person Jose Sabater    schedule 30.05.2019    source источник
comment
Для какой версии NXRM это? Поддержка последних была добавлена ​​в 3.16.   -  person joedragons    schedule 30.05.2019
comment
Версия 3.14, обязательно ли обновлять? Спасибо   -  person Jose Sabater    schedule 04.06.2019
comment
С другой стороны, где я мог бы увидеть пример вызова Nexus API, который возвращает последнюю версию пакета Node? Спасибо   -  person Jose Sabater    schedule 04.06.2019
comment
В своем ответе я дал ссылку на тикет JIRA, где люди какое-то время мучились со старыми версиями; возможно, вы сможете найти обходной путь там. Я также предоставил ссылку на сообщение о выпуске, где есть пример для maven, но я подозреваю, что он будет похожим (репозиторий, компонент, порядок сортировки).   -  person joedragons    schedule 05.06.2019


Ответы (1)


Поддержка «последней» загрузки через REST была добавлена ​​в NXRM3 в версии 3.16.0. См. заявку JIRA для получения дополнительной информации.

Пример приведен в блоге выпуска. но, вероятно, это будет зависеть от вашего репозитория, формата и того, что вы пытаетесь получить. Для REST в NXRM3 также предусмотрен пользовательский интерфейс Swagger, который можно использовать для формирования собственных операторов. Доступ к нему можно получить в разделе администрирования в System -> API. Также может помочь документация по REST от Sonatype.

person joedragons    schedule 04.06.2019
comment
Большое спасибо, я обновил Nexus до версии 3.16 и он уже возвращает список последних 50 пакетов (не первых). Приветствие. - person Jose Sabater; 06.06.2019