Bash 双模式解析 + 飞书机器人:圈复杂度报告 45 min→30 s 实战


tags: 飞书机器人 SonarQube 圈复杂度 Bash自动化 DevOps

Bash 双模式解析 + 飞书机器人:圈复杂度报告 45 min→30 s 实战

场景痛点

  • 每日 10+ 项目 HTML 报告分散存放
  • 人工逐一点开检查平均 45 min,失败响应延迟 6-8 h
  • 多地研发团队无法第一时间感知质量门禁失败

解决思路

  1. 双模式正则:同时兼容 Sonar 6.x/7.x/8.x 三种 HTML 结构
  2. 富文本 @卡片:Markdown 语法 + <at id="all"> 实现全员提醒
  3. 轻量化部署:单 Bash 脚本,零依赖,直接放到 Jenkins 定时触发

关键代码片段

bash 复制代码
# 解析状态
status=$(grep -Eo '通过|失败|class="status-box' ${html} | head -1)
# 飞书卡片
curl -X POST https://open.feishu.cn/open-apis/bot/v2/hook/${key} \
  -H 'Content-Type: application/json' \
  -d "$(jq -n --arg msg "**$project** 圈复杂度 $status" \
  '{msg_type:"interactive",card:{header:{title:{tag:"plain_text",content:$msg}}}}')"
相关推荐
需要8262 天前
JVM 内存区域与对象创建:一次 GC 从哪来
java·jvm·spring boot·spring·servlet·tomcat
刘广睿5 天前
影栈 vs 飞书/Notion:用通用工具搭短视频素材库,半年踩坑记
飞书·notion·短视频素材库·素材管理效率·创作工作流
13线6 天前
为什么要合并飞书和豆包
人工智能·飞书·火山引擎·豆包
倔强的小石头_7 天前
把 Mac mini 变成远程 AI 工作台:OpenClaw + 飞书 + cpolar 实战
飞书·mac·openclaw
gf132111110 天前
【python_发送飞书卡片消息_直接组装JSON格式发送卡片】
python·json·飞书
shandianchengzi10 天前
【工具】飞书多维表格插件|附件批量导出并自定义名称的免费插件
飞书
kongxinniaoren11 天前
已经开学了,大学生还能做近视手术吗?有哪些需要注意的?
飞书
ashiho11 天前
【Spring】RequestParam/PathVariable/RequestBody详解
java·后端·spring·servlet·springmvc
有点。11 天前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
我是Superman丶12 天前
飞书文档下载
飞书