Skip to content
agent-CI-InfraPublic

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

部门公共 Bot

这是部门公共的 GitHub App,负责检视 Issue 和 PR。仓库启用后,新开的 Issue 会收到一次检视评论;PR 在打开、标为可检视(Ready for review)以及 head 更新(推送新提交)时检视,草稿 PR 不检视;管理员可以按仓库关掉其中某种触发。bot 只发评论,不批准、不请求变更,也不合并。管理员为仓库打开开发后,bot 才会按 Issue 改代码并开 PR。许可证为 Apache-2.0。

安装到你的仓库

App 已经创建好了,不需要自己再建。安装地址只用这一个:

https://github.com/apps/agent-ci-infra-bot/installations/select_target

  1. 打开上面的地址,选择仓库所在的组织或个人账号,再选要安装的仓库。
  2. 安装之后,找这套 bot 的管理员审核并启用该仓库。
  3. 启用后就可以开始使用。启用前收到的 Issue 和 PR 事件不会补跑。

自动改代码

自动改代码不是默认行为:只有管理员打开该仓库的开发开关,并且有人(不是 App)给没有指派人的 Issue 加上开发标签(默认 bot-develop)时,bot 才会改代码。完整条件见自动开发什么时候开始。

用仓库文件调整规则

可以在自己仓库的默认分支放 .bot/ 下的文件,覆盖 bot 的检视、标签、开发规则和虚拟电脑配置;仓库文件优先于内置默认和管理员在控制台的设置。路径、格式和限制见用仓库文件调整规则。

部署和管理

部署、接入向导、项目管理和升级都在部署这套 bot 和管理员面板。

仓库快照与运行日志

控制面为每个仓库保留一份 Git 镜像,任务开始前只拉取这次要用的提交,已缓存的提交不再访问 GitHub。每个任务从镜像把固定提交的文件拷进自己的工作目录,之后镜像的更新不影响已拷出的副本。镜像不可用时回到 GitHub API 逐文件准备;GitHub 的递归 tree 被截断时,按目录非递归列举文件。子模块和不支持的 Git mode 条目不下载,子模块仓库不克隆。GitHub 因文件过大而拒绝返回的 blob 会跳过。跳过项的路径和原因记入日志,数量记入覆盖说明;发布时保留这些上游条目。大文件保存在工作区中,由工具读取。哈希不一致、路径越界或工作区被替换时,任务会停止并显示原因。

在「检视」「开发」页点开任务,可查看运行记录和准备日志。失败或暂停的任务详情显示故障说明、原因类别(外部服务或网络波动、GitHub 权限或配置、GitHub 拒绝请求、模型、项目电脑、仓库内容、任务条件变化、GitHub 写入结果未知、Bot 自身问题)和下一步怎么做,准备日志记录固定提交、文件来自 Git 缓存还是 GitHub API、已接收文件数和字节数、跳过路径及原因。

同时运行多个任务

每个仓库一台虚拟电脑,默认一次运行一个任务。超级管理员在「全局设置」设置默认并发数(1–32),项目可以在「机器配置」里单独设置,留空跟随全局默认;超出的任务继续排队。同时运行的任务各用自己的工作目录,共用这台电脑的 CPU、内存和进程数上限。「全局设置」还显示当前运行的镜像标签。

反馈

用起来有问题或有建议,欢迎到本仓库提 issue:https://github.com/agent-CI-Infra/bot/issues

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages