Jenkins审批机器人 - 功能概述
代码链接,私聊可得
项目简介
Jenkins审批机器人是一个集成Jenkins CI/CD流程的自动化审批系统,通过Telegram机器人提供便捷的发布审批功能。该系统支持多环境部署审批、用户权限管理、构建结果通知等完整的DevOps审批流程。
核心功能
1. Telegram机器人集成
1.1 交互式审批
- 按钮式审批:审批消息包含"同意发布"和"拒绝发布"按钮,支持一键操作
- 命令行审批:支持
/approve <approval_id>和/reject <approval_id>命令 - 实时消息更新:审批完成后自动更新Telegram消息状态
- 中文界面:完整的中文用户界面和提示信息
1.2 状态查询功能
- 审批统计:
/status命令查看总审批数、待处理、已同意、已拒绝统计 - 详细审批信息:
/status <approval_id>查看具体审批详情 - Jenkins状态:
/jenkins命令查看Jenkins服务器连接状态和版本信息
1.3 代理和网络支持
- HTTP代理支持:支持通过代理服务器连接Telegram API
- 网络容错:自动处理网络连接异常,支持直连和代理切换
- 消息编码优化:处理中文字符编码,确保消息正确显示
2. Jenkins集成
2.1 Pipeline集成
- 审批等待接口:
/api/stage/approval/wait接口供Jenkins Pipeline调用 - 支持GET/POST请求:兼容不同的Jenkins Pipeline调用方式
- 参数自动解析:自动解析项目名称、环境、构建号、版本等参数
- 中文描述支持:正确处理和显示中文的发布描述和操作类型
2.2 构建控制
- 构建继续执行:审批通过后通过webhook继续Jenkins构建
- 构建终止:审批拒绝时自动停止正在运行的Jenkins构建
- 构建状态监控:实时监控构建执行状态
- 构建日志获取:支持获取和查看详细的Jenkins构建日志
2.3 Webhook机制
- 双向通信:Jenkins与机器人之间的双向通信机制
- 异步处理:支持异步处理审批请求,不阻塞Jenkins Pipeline
- 超时处理:支持审批超时自动处理机制
3. 用户权限管理系统
3.1 用户配置
- 简洁格式:支持
"用户名": "角色"的简洁配置格式 - 复杂格式

最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



