首页 > 解决方案 > 将带有“最新”标签以外的标签的工件上传到 Artifactory NPM 存储库

问题描述

我正在使用Artifactory REST API将压缩包上传到 Artifactory NPM 存储库:

curl -X PUT \
 -H "Authorization: Bearer <token>" \
 -T path-to-tarball.tgz \
 "http://<server>/artifactory/<repo>/<scope>/<package>/<package>-<version>.tgz"

它可以工作,但看起来最近上传的工件总是被标记为latest当您查询此存储库时。通常没问题,但并非总是如此。

我尝试通过附加到目标 URL来使用URL 属性,但没有运气。;tag=other

有人设法通过 REST API 标记上传到 Artifactory 的 NPM 版本吗?

标签: npmartifactory

解决方案


显然,您无法通过 REST API 在 Artifactory 中管理 NPM 标签。

标签有默认处理方式latest,可以两种方式之一处理——语义版本(最高发布版本标记为最新)或发布时间(最近上传的包标记为最新) . 此设置是系统范围的,因此您无法针对每个存储库更改它。资源

最重要的是,您可以使用npm dist-tagsCLI 命令(参考)和自定义--registry指向您的 Artifactory 存储库来管理您上传的包上的标签。请注意,它必须指向真实(“本地”)存储库,而不是虚拟存储库。


推荐阅读