无法使用Jfrog CLI在AQL Json文件中传递变量

时间:2017-10-10 05:35:18

标签: json artifactory artifactory-query-lang jfrog-cli

通过使用AQL查询和Jfrog CLI,我们计划在神器企业版中找出过期的工件。

为此,我想在AQL Json文件中传递一个变量,以使用Jfrog CLI删除工件。

因为变量的值不是静态值而且是动态的。所以我需要将一个变量传递给Json文件以及我需要使用的下面突出显示的变量。

命令:

./jfrog rt del --spec /xxxxxxxx.json --dry-run=true --quiet=true

xxxx.Json:

{
 "files":[
  {
     "aql":{
        "items.find":{
           "type":"file",
           "$or":[
              {
                 "$and":[
                    {
                       "stat.downloads":{
                          "$eq":null
                       }
                    },
                    {
                       "modified":{
                          "$before":"1s"
                       }
                    },
                    {
                       "@retention.RetDate":{
                          "$lt":"$RetDate"
                       }
                    }
                 ]
              },
              {
                 "$and":[
                    {
                       "stat.downloads":{
                          "$gt":"0"
                       }
                    },
                    {
                       "stat.downloaded":{
                          "$before":"1s"
                       }
                    },
                    {
                       "modified":{
                          "$before":"1s"
                       }
                    },
                    {
                       "@retention.RetDate":{
                          "$lt":"$RetDate"
                       }
                    }
                 ]
              }
           ]
        }
     }
  }
 ]
}

1 个答案:

答案 0 :(得分:1)

如果您想在spec文件中使用变量,则应在调用中定义变量:

./jfrog rt del --spec /xxxxxxxx.json --spec-vars "RetDate=2018-01-01" --dry-run=true --quiet=true

除非我弄错了,否则变量在spec文件中被标识为$ {key},所以类似

                [...]
                {
                   "@retention.RetDate":{
                      "$lt":"${RetDate}"
                   }
                }
                [...]

它对您的测试用例有帮助吗?