1

我想在整个 JFrog ARM 中搜索文件名模式,而不知道 JFrog cli 中的显式存储库名称。

jfrog rt s "reponame/*pattern*"

在特定的回购中给出预期的结果。
但我有 repo1、repo2、repo3、……等等。
如何使用通配符搜索 reponame,下面不起作用。

jfrog rt s "*/*pattern*"

基本上我想要 curl GET 请求搜索的 jfrog cli 等效项

"https://server/artifactory/api/search/artifact?name=*pattern*"
4

1 回答 1

-2

这不适用于 cli 客户端,而是获得所需功能的另一种方法。花了一些时间在这里查看 API:

https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API

我建议慢慢向下滚动该页面并完整阅读许多可能的命令,语法非常好,我执行了一些搜索,他们搜索了所有本地存储库。无需逐个递归搜索。命令语法:

 export url="http://url/to/articatory"
 curl --noproxy '*' -x GET "$url/api/search/artifact?name=log4j*"

阅读上面的链接以获取更精细的搜索选项/语法。

我是如何设置的:

 alias artpost='curl -X POST "http://url/artifactory/api/search/aql" -T - -u admin:password'

一些示例用法:

 echo 'items.find({"name": {"$match" : "log4j*"}})' | artpost
 echo 'items.find({"$and" : [{"created" : {"$gt" : "2017-06-12"}},{"name": {"$nmatch" : "*surefire*"}}]})' | artpost
于 2017-06-13T16:01:55.550 回答