fix(hlcc): persist exact repository ACL sharing

This commit is contained in:
冰朔 2026-08-06 16:28:56 +08:00
commit ba6aca7f24
5 changed files with 173 additions and 27 deletions

View file

@ -125,9 +125,11 @@ node server-tools/lake-lamp-authz/authorize-repo-push.js \
`safe.directory`,不得使用通配符。
光湖代码频道本身保留 `UMask=0077`,以免放宽数据库和其他状态目录。对需要由直达
接收器共同读写的精确裸仓库设置 Git 原生 `core.sharedRepository=group`,让新建的
`objects``refs` 从写入时就继承专用共享组权限。不要安装推送后递归 `chmod`
钩子,也不要为了共享一个裸仓库而修改整个代码频道服务的 UMask。
接收器共同读写的精确裸仓库不设置 `core.sharedRepository`,而只在该仓库的
`objects``refs` 上为 `guanghu-authz` 设置继承 ACL。这样新对象和多级分支目录
从创建时就允许精确接收账户访问,不要求安全沙箱禁止的 setgid 操作,也不扩大到代码
频道数据库或其他状态。不要安装推送后递归 `chmod` 的钩子,也不要为了共享一个裸仓库
而修改整个代码频道服务的 UMask。
部署后用当前主分支生成无变化验收 bundle`receiveBundle` 完整执行一次;验收前后
主分支 SHA 必须一致,并且代码频道账户与授权服务账户执行 `git fsck` 均通过。