我在 Artifact Repository 中有一组 zip 文件,我需要获取最新的工件。文物的结构如下所示
Homeloan
-> test-application-dev-local_1.zip
-> test-application-dev-local_2.zip
-> test-application-dev-local_3.zip
-> test-application-dev-local_4.zip
-> test-application -dev-local_5.zip
-> test-application-dev-local_6.zip
-> test-application-dev-local_7.zip
所有这些人工制品都是 Msbuild 的输出。每次当用户签入他们的代码时,它都会在 TeamCity 中构建,并且人工制品会上传到 Jfrog。
现在我有另一个 TeamCity 构建,它是在需要获取最新人工制品的临时基础上触发的,在这种情况下,我需要“test-application-dev-local_7.zip”。
我正在使用 TeamcityArtifactory 插件来获取人工制品,以下是我尝试过的规范。
{
"files": [{
"aql": {
"items.find": {
"@build.name": "test-application-dev-local_*.zip"
}
},
"target": "somepath",
}]
}
通过上述规范,我得到了所有 7 个 zip 文件。我尝试在上述规范中添加限制(我不确定这是否是正确的方法)但我收到了错误
{
"files": [{
"aql": {
"items.find": {
"@build.name": "test-application-dev-local_*.zip"
}
},
"limit":1
"target": "somepath",
}]
}
Error occurred while resolving dependencies from the spec: Unrecognized field "limit" (class org.jfrog.build.extractor.clientConfiguration.util.spec.Aql), not marked as ignorable (one known property: "items.find"])
我不确定如何检索最近上传的人工制品。