Мы работаем над проектом 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):
Спасибо и всего наилучшего.
Версия 3.14, обязательно ли обновлять? Спасибо
С другой стороны, где я мог бы увидеть пример вызова Nexus API, который возвращает последнюю версию пакета Node? Спасибо
В своем ответе я дал ссылку на тикет JIRA, где люди какое-то время мучились со старыми версиями; возможно, вы сможете найти обходной путь там. Я также предоставил ссылку на сообщение о выпуске, где есть пример для maven, но я подозреваю, что он будет похожим (репозиторий, компонент, порядок сортировки).
Поддержка «последней» загрузки через REST была добавлена в NXRM3 в версии 3.16.0. См. билет JIRA для получения дополнительной информации.
Пример предоставлен на блог релиза, но, вероятно, будет зависеть от вашего репозитория, формата и того, что вы пытаетесь получить. Для REST в NXRM3 также предусмотрен пользовательский интерфейс Swagger, который можно использовать для формирования собственных операторов. Доступ к нему можно получить в разделе администрирования в System -> API. Также может помочь REST-документация от Sonatype.
Большое спасибо, я обновил Nexus до версии 3.16 и он уже возвращает список последних 50 пакетов (не первых). Приветствие.
Документ API: {nexus_url}/service/rest/swagger.json
GET {nexus_url}/service/rest/v1/search?name=имя-проекта&sort=версия
Для какой версии NXRM это? Поддержка последних была добавлена в 3.16.