guanghu-ice-heart/server-tools/hololake-code-channel/README.md

57 lines
3.4 KiB
Markdown
Raw Normal View History

# HoloLake Code Channel · 部署与更新边界
本目录保存光湖代码频道HLCC的部署约束与机器可检验配置。
当前状态:
- 上游源码镜像与光湖自主源码基线已在 `BS-SG-003` 建立;
- 固定源码基线为 Forgejo `v16.0.1` / `b3d7e4ac3cbccc220703097a51fa4c16bf302579`
- 国内旧第五域仍由 Gitea 1.23.7 原地承载并作为历史事实源;
- `GLS-0239` 已登记京东个人子频道、`/code/` 正式入口、公开 AI 读取、
`bingshuo` 单身份密码沿用和 `HLCC-ICE-000001` 新 Git 根提交;
- 新频道部署与低权限激活清单已经就绪,正式切换前不覆盖旧第五域;
- `update-policy.json` 中的光湖更新清单地址仍是规划地址,尚未上线。
`jd-candidate/` 是绑定京东主节点固定架构预置器的候选服务包。它只从临时新加坡
中继读取 Forgejo 官方公开二进制、签名、公钥和哈希清单,不公开或下载光湖产品
Git bundle。服务先在 `127.0.0.1:3341` 暴露结构化安装状态;只有固定 SHA-256、
官方发布密钥指纹和 GPG 签名全部通过,且 `127.0.0.1:3340/api/v1/version`
确认版本、单身份迁移和新频道根提交后,状态才会变为 `ready=true`。候选数据与
旧第五域 Gitea 完全隔离;旧访问令牌、仓库、活动和 Git 历史不会迁入。
必须同时满足:
1. Forgejo 内置更新检查器关闭;
2. 官方上游不能自动合并、自动构建或自动部署;
3. 生产更新只认光湖签名清单;
4. 光湖清单不可用时停留在人工发布,不回退官方接口;
5. Gitea 迁移必须并行演练、可恢复、可回滚。
本目录不是服务器凭据库不保存密码、Token、SSH 私钥或数据库转储。
## 隔离候选
`candidate-app.jd.ini``candidate-app.enterprise.ini``install-candidate.sh`
`start-candidate.sh`
`stop-candidate.sh` 用于 `JD-FD-PRIMARY``AW-GZ-001` 上各自独立的隔离候选:
- 只绑定 `127.0.0.1:3340`
- 使用独立 SQLite 和仓库目录;
- 禁止注册、Actions、镜像和 Forgejo 内置更新检查;
- 只接收由 `BS-SG-003` 准备的固定 v16.0.1 二进制、签名与官方公钥材料;
- 在两个国内节点分别再次核验 Forgejo 官方 GPG 指纹和二进制签名;
- 安装和启动分离,安装脚本不注册 systemd、cron 或其他自动任务。
同一份离线包还要在 `AW-GZ-001` 企业服务器使用
`candidate-app.enterprise.ini` 独立部署。京东与企业实例的数据库、仓库、用户、
权限、密钥和回滚目录完全分离;它们只共享经过验签的源码与版本基线。
`BS-SG-003` 只负责海外源码和发布材料下载,不启动代码仓库服务。京东和企业节点都
必须保留 `forgejo-upstream-all.bundle``guanghu-code-channel.bundle`、官方签名、
公钥和 `MANIFEST.sha256`,从而在国内断开海外下载时仍可离线恢复与重装。候选验证
位于各自独立目录,不读取、不迁移、不修改国内现役 Gitea 数据。
`prepare-release-on-sg.sh` 是新加坡中继的唯一准备脚本:它从 Forgejo 官方镜像
下载固定版本二进制和签名、拉取并核对官方 GPG 指纹,并从现有上游镜像和光湖
产品仓生成两个 Git bundle。全部文件写入 `MANIFEST.sha256`。它不会启动服务,
也不会自行向京东或企业服务器传输;两次传输都必须绑定后续受控工单。