ChatOps 部署

通过 AI 对话一键触发系统构建、部署和冒烟测试

ChatOps 部署

功能概述

ChatOps 部署允许管理员通过 AI 对话触发 Javis 系统的全链路构建和部署,无需手动 SSH 到服务器操作。

使用方法

在 AI 对话中输入部署指令:

  • "部署最新版本"
  • "升级 Javis"
  • "发布新版本"
  • "部署 Javis,包含 sandbox"

系统将自动执行:

  1. 在构建机上拉取最新代码并构建 Docker 镜像
  2. 推送镜像到内部 Registry
  3. 在生产机上拉取新镜像
  4. 开启维护模式,通知所有在线用户
  5. 等待 30 秒让用户保存工作
  6. 停止旧容器,启动新容器
  7. 执行冒烟测试验证服务可用性
  8. 报告部署结果

维护模式

部署过程中,系统会自动进入维护模式:

  • 已打开页面的用户:通过 SSE 实时推送,页面顶部显示橙色警告横幅"系统升级中,请保存工作后刷新页面"
  • 新打开页面的用户:页面加载时自动检测维护状态,同样显示警告横幅
  • 对话功能:维护模式下发送消息按钮被禁用,新的对话请求返回 503 状态

维护模式在部署完成后自动关闭。用户刷新页面即可恢复正常使用。

冒烟测试

部署完成后,系统自动执行冒烟测试:

  1. 访问生产环境首页并截图
  2. 使用测试账号登录
  3. 打开测试工作空间
  4. 发送简单对话,验证 AI 响应
  5. 记录响应时间
  6. 截图测试结果

测试报告包含:通过/失败状态、响应时间、截图。

权限要求

  • 平台管理员可触发部署
  • 普通用户无法调用部署 API

注意事项

  • 部署期间所有用户的活跃 AI 对话会被中断,无法自动恢复
  • 建议在使用量较低的时段进行部署
  • 如需回滚,需手动在生产机上执行 prod_deploy.sh 指定旧版本号
ChatOps 部署 | Knodo 文档