unk*_*own 5 api rest properties artifact artifactory
在Artifactory中,我有一个工件“ consumersvc”,并且有多个版本:1.0.0、1.1.0、1.2.0等
现在,对于这些工件版本中的每一个,都有一些属性附加到该工件xxx的构建工件上,例如:svnURL,svnChangeSetNumber等。
有什么办法可以使用Rest API等获取此信息。
我尝试了以下操作,但它列出了所有具有此property = value的工件,但我正相反。
http://myartifactorysrvr.my.company.com:8080/artifactory/api/search/prop?svnURL=*
Run Code Online (Sandbox Code Playgroud)
然后,它将在JSON输出中输出信息,并在Artifactory中显示此属性设置为任何值的所有工件。我要寻找的是如何获取Artifactory中任何工件的所有属性(svnURL和svnChangeSetNumber)?
您可以将Artifactory 查询语言(AQL) 用于此类查询。
例如,以下简单查询将返回存储库中所有libs-releases-local用属性注释的工件的属性svnURL:
items.find({"$and" : [{"repo" : "libs-releases-local"}, {"@svnURL" : "*"}]}).include("property.*")
Run Code Online (Sandbox Code Playgroud)
您可以使用 Artifactory rest API 运行这样的查询,例如使用 curl:
curl -vv -uuser:pass -X POST -H "Content-Type: application/json" -d @aql.txt http://localhost:8081/artifactory/api/search/aql
Run Code Online (Sandbox Code Playgroud)
其中 aql.txt 是包含查询的文件。
这是一个相当简单的查询示例。上面的链接显示了 Artifactory 查询语言的更多功能。
例如:工件名称是accesscontrol
并且您想要在 Artifactory 中查找所有版本或 accesscontrol-xxx 工件的属性。您可以使用以下方法来做到这一点:
import groovy.json.*
def searchUrl = "http://myartifactorysrvr.my.company.com:8080/artifactory/api/search/artifact?name=accesscontrol&repos=libs-release-local"
def conn = searchUrl.toURL().openConnection()
conn.setRequestProperty("X-Result-Detail", "info, properties")
def searchResultTxt = conn.content.text
println "Found: ${searchResultTxt}"
def searchResults = new JsonSlurper().parseText(searchResultTxt)
def map = searchResults.results.findAll { it.properties."vcs.revision" != null }.collect { it.properties['vcs.revision'][0] }.sort().reverse()
map
Run Code Online (Sandbox Code Playgroud)
然后在 $ 提示符下运行:
`which groovy` ./1.groovy |sed "s/\(\"properties\":\)/\n\1/g"|grep vcs.revision| sed "s/$/\n\n/"
Run Code Online (Sandbox Code Playgroud)
您将获得生成访问控制工件的项目的所有构建的输出,并且如果其中任何构建将 SVN 变更集上传为 vcs.revision,您将在每行看到该内容。这样,您就会知道 SVN URL 是什么以及使用什么 Changeset 来获取源代码。
如果将 libs-release-local 替换为其他存储库,您可以获得更多结果或使用虚拟存储库名称(如果您在 Artifactory 中创建了任何存储库),它将查看所有存储库,包括远程存储库。
| 归档时间: |
|
| 查看次数: |
5222 次 |
| 最近记录: |