JFrog CLI搜索JSON文件规范中include配置失效,求正确配置位置
JFrog CLI Filespec中AQL场景下Include的正确配置方式
当你的filespec里使用aql对象定义查询逻辑时,外部的include、sortBy等配置会被JFrog CLI忽略,因为此时CLI完全依赖AQL语句本身来控制查询结果的字段返回和排序规则。
正确的做法是将include的字段列表放到AQL的items.find()语句的同级,使用$include关键字定义:
修改后的filespec示例:
{ "files": [{ "aql": { "items.find":{ "$and" : [ {"created" : {"$before" : "1y"}}, {"repo" : {"$match":"docker-local"}}, {"stat.downloads":{"$eq":null}}, {"name" : { "$nmatch" : "sha256*" }} ] }, "$include": ["path","name","created_by"], "$sort": [{"created": 1}] } }] }
说明:
$include直接作为aql对象的一级属性,和items.find同级,指定需要返回的字段- 原有的
sortBy也需要转换为AQL的$sort语法,其中1表示升序,-1表示降序 - 非AQL对象内的额外字段(如你测试的
"foo":"bar")不会触发报错,因为CLI在AQL模式下只会解析aql对象内的内容
内容的提问来源于stack exchange,提问作者Alistair Hardy
相关产品推荐
相关产品推荐

