
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Build Clerk 是一款用于响应构建管道事件的工具,旨在通过自定义规则自动执行操作(如回滚提交、锁定分支、触发重建等),维护主分支的稳定性。它支持多种构建事件和第三方集成(如 Jenkins、Bitbucket、Slack),并提供强大的 DSL(领域特定语言)来自定义响应逻辑。
buildFailed、branchStartsFailing、buildPassed、branchStartsPassing、repository、pullRequestMerged 等多种构建事件。使用 Docker 运行 Build Clerk:
bashdocker run --rm -it -p9090:9090 outofcoffee/build-clerk
访问 http://localhost:9090 确认服务运行。
基本配置
RULES_FILE(必填):响应构建生命周期事件的规则文件路径。Slack 配置
SLACK_USER_TOKEN:具有 chat.write 权限的 Slack 用户令牌。Jenkins 配置
JENKINS_BASE_URL:Jenkins 服务器基础 URL。JENKINS_USERNAME:Jenkins 用户名。JENKINS_PASSWORD:Jenkins API 密钥或密码。Bitbucket 配置
BITBUCKET_REPO_USERNAME:Bitbucket 仓库用户(或组织)名。BITBUCKET_REPO_SLUG:Bitbucket 仓库的 "repo slug" 名称。BITBUCKET_AUTH_USERNAME:Bitbucket 认证用户名(若与仓库用户名不同)。BITBUCKET_PASSWORD:Bitbucket 认证密码(建议使用 "应用密码")。全局过滤器
FILTER_BRANCHES:仅处理指定 SCM 分支的事件。FILTER_REPOS:仅处理指定仓库的事件(仅适用于拉取请求)。安全配置
AUTH_CONFIG_FILE:用于 HTTP Basic 认证的 Shiro 属性文件路径(参考 Shiro 文档)。高级配置
SERVER_PORT:HTTP 监听端口。bashSTORE_IMPL=mongo MONGO_HOST=localhost # MongoDB 主机地址 MONGO_PORT=27017 # MongoDB 端口
为分析源代码提交,Clerk 需访问 Git 仓库(本地克隆或远程仓库):
GIT_REPO_LOCAL_DIR:本地仓库克隆路径。GIT_REPO_REMOTE_URL:远程仓库 URL。GIT_REPO_USERNAME:HTTP(S) 远程仓库认证用户名。GIT_REPO_PASSWORD:HTTP(S) 远程仓库认证密码(或 SSH URL 的可选密码,若未使用公钥)。使用 revertCommit 操作时,需设置:
GIT_REPO_PUSH_CHANGES(默认:false):是否将更改推送到远程仓库(false 时仅本地修改,适用于测试)。Git 认证说明
Clerk 暴露以下端点接收事件:
Jenkins
Jenkins 构建报告(通过 Notification Plugin 或 Clerk Plugin 发送)应指向:
/builds
示例:https://clerk.example.com/builds
Slack
Slack 交互式消息回调应指向:
/actions
示例:https://clerk.example.com/actions
Bitbucket
Bitbucket "Pull request merged" 事件的 Webhook 应指向:
/pull-requests/merged
示例:https://clerk.example.com/pull-requests/merged
建议为端点配置认证,防止未授权访问。可使用 Clerk 内置的 HTTP Basic Auth:
AUTH_CONFIG_FILE 指向 Shiro 属性文件(示例见 backend/examples/clerk-auth.properties)。https://someuser:secretpass@clerk.example.com/actions
通过 DSL 定义事件响应逻辑,例如:
groovyif (failuresForCommitOnBranch <= 2) { rebuildBranch() // 触发分支重建 } else { revertCommit() // 回滚提交 lockBranch() // 锁定分支 } publishAnalysis("general") // 发布分析报告
更多示例见 parser 模块测试或官方文档。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务