在 Nexus 中获取最新版本的节点包

Get the latest version of a node package in Nexus

我们正在开发一个节点和 Angular 5 项目,我们在其中使用 Nexus 作为我们应用程序的存储库。这个应用程序被编译、打包并上传到 Nexus 存储库。然后我们在 Jenkins 中创建了一个管道,它从 Nexus 下载最新版本的应用程序并执行它。但是现在我们遇到了问题。没有调用 Nexus API 到 return 最新版本节点包的路径(由 npm publish 生成)。

我们正在拨打的电话如下:

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

但它有一个问题:此调用仅 returns 前 50 个版本。如果您在存储库中已经有 50 多个版本的应用程序,它不会 return 最后一个。

所以我想知道您是否知道有什么方法可以延长 50 个版本的限制?或者更好的是,您知道如何直接获取最新版本吗?像这样(这个例子在 Node 中不起作用,但它在 Maven 中起作用):

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

谢谢并致以最诚挚的问候。

对 "latest" 通过 REST 下载的支持已添加到版本 3.16.0 中的 NXRM3。有关详细信息,请参阅 the JIRA ticket

the release blog but probably will depend on your repository, format and what you're trying to fetch. There is also a Swagger UI provided for REST in NXRM3 that can be used to form your own statements. It can be accessed in the administration section under System -> API. Sonatype's REST documentation 上提供的示例也可能有所帮助。

Api 文档:{nexus_url}/service/rest/swagger.json

GET {nexus_url}/service/rest/v1/search?name=project-name&sort=version