Artifactory的aql查询结果以及json解析工具jq的使用

//使用jq 利用shell解析json

#!/bin/dash
url="https://域名/artifactory/";
json_str=$(curl -H "Content-Type:text/plain" -u user_id:user_token -X POST "https://域名/artifactory/api/search/aql" -T items.aql)

#利用jq循环遍历  获取json串内容 然后拼装下载连接
names=($(echo ${json_str} |  jq -r '.results|length'))
for((i=0;i<${#names[@]};i++));
do
path=$(echo ${json_str} | jq -r '.results['$i'].path')
name=$(echo ${json_str} | jq -r '.results['$i'].name')
wget --no-check-certificate ${url}$1"/"${path}"/"${name}
done

items.aql文件

items.find({"repo": {"$eq": "仓库名称"},"@version" : {"$eq": "版本"}})

执行脚本前执行以下命令:chmod +x ./jq sudo cp jq /usr/bin

先下载jq包  linux下解析json的工具 百度linux jq即可下载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Jenkins Artifactory是一个用于存储、管理和分发软件组件(如库、依赖项和构建包)的工具AQLArtifactory Query Language)则是一个强大的查询语言,用于从Artifactory仓库检索信息。下面是使用AQL在JenkinsArtifactory集成的一些步骤: 1. **安装Artifactory插件**: 在Jenkins,你需要安装Artifactory的插件,以便能够连接到Artifactory服务器并执行AQL查询。可以在`管理` > `配置` > `系统设置` > `插件管理`搜索Artifactory插件并安装。 2. **配置Artifactory连接**: 配置一个新的或现有的Artifactory仓库作为Jenkins的构建存储库。在`配置` > `系统设置` > `Artifact Manager`,添加一个新的Artifactory客户端,提供服务器URL、凭据等必要信息。 3. **编写AQL查询**: 使用AQL语法来定义你想要获取的信息,比如所有包含特定关键字的构件版本、特定时间范围内的构建等。AQL语法基于SQL,例如: ``` SELECT * FROM artifacts WHERE repository = 'my-repo' AND name LIKE '%my-component%' ``` 4. **调用AQL查询**: 在你的Jenkins job的构建步骤,你可以利用Artifactory的API或者插件提供的功能,将AQL查询嵌入到脚本,以动态获取所需的内容。例如,在构建触发器,可以通过查询结果选择适当的构建进行操作。 5. **处理查询结果**: 查询的结果通常是JSON格式,你可以解析这些数据并在后续的构建阶段使用,比如自动下载依赖、打包部署等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lijian965644856

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值