1

我正在使用以下 API 从 Artifactory 获取工件的所有版本。

https://artifactoryUrl/api/search/versions?g=com.abc.xyz&a=testApp&repos=test-release-local

回复

{
  "results" : [ {
    "version" : "1.1",
    "integration" : false
  } ]

有没有办法可以根据文件扩展名过滤掉。我们有多个文件扩展名,如war、jar、tar.gz,具有相同的工件名称。我正在尝试过滤掉文件 testApp.war 的版本。

4

1 回答 1

1

您可以为此使用Artifactory 查询语言。例如:

curl -uadmin -XPOST http://localhost:8081/artifactory/api/search/aql -T test.json
Enter host password for user 'admin':

{
"results" : [ {
  "repo" : "libs-release-local",
  "path" : "a/a/1.0",
  "name" : "a-1.0.jar",
  "type" : "file",
  "size" : 313,
  "created" : "2020-02-09T11:13:23.266+02:00",
  "created_by" : "admin",
  "modified" : "2020-02-09T11:13:21.469+02:00",
  "modified_by" : "admin",
  "updated" : "2020-02-09T11:13:23.267+02:00"
} ],
"range" : {
  "start_pos" : 0,
  "end_pos" : 1,
  "total" : 1
}
}

在 test.json 中,您可以找到我的 AQL:

$ 猫 test.json

items.find(
    {
        "name":{"$match":"*.jar"}
})
于 2020-02-09T09:17:03.523 回答