从Artifactory下载工件存档

时间:2015-11-05 09:34:52

标签: repository artifactory

我正在测试Artifactory 4.2.0 PRO。

非常好的功能是可以通过执行下载构建生成的所有文件的存档,如:

curl -XPOST -u admin:password -H "Content-Type: application/json"  http://localhost:8081/artifactory/api/archive/buildArtifacts -d '
{
      "buildName": "Vehicle Routing Problem", 
      "buildNumber": "3", 
      "archiveType": "zip"
}' > build.zip

但是,在使用AQL指定确切属性时,我无法找到是否有可能执行相同操作(下载存档)。我一直在尝试上传其他工件,这些工件的属性与构建推送的属性完全相同,但它们不能通过上面的代码段获取(我假设某种元数据存储在某处)。

在不使用许多HTTP查询的情况下获取多个工件的可能性有多大?

的问候。

1 个答案:

答案 0 :(得分:6)

Retrieve Folder or Repository Archive API允许下载包含位于指定路径(文件夹或存储库根目录)下的所有工件的存档文件(支持zip / tar / tar.gz / tgz)。但是它不支持按属性过滤。

Artifactory CLI支持同时下载多个文件。它还支持下载我们匹配一组属性值的文件。但是,CLI将使用多个HTTP请求来执行此操作。

第三种选择是开发自定义user plugin,允许下载与一组属性匹配的工件存档。执行用户插件可以是executed作为REST API调用。 JFrogDev GitHub帐户中有一个sample plugin,可以作为一个很好的起点。该插件允许将目录内容作为存档下载。