升格为公司级 CI 资产完整版:+reusable/checkout.yml、+tools/ci(source-policy/REGISTER/stats)、去项目专名、版本化 v1

架构依据 coordination runbooks/ci-repo-architecture.md;宿主由
est/ci-workflows(私有 org 闸门实测不可跨仓调用,已删)改定为
mu-ref/est-ci-reusable(public org,同 actions 镜像待遇,内容无秘密)。
This commit is contained in:
zcode_mulm
2026-08-27 12:18:07 +08:00
parent b3b4e2b391
commit a242eeb195
+4 -4
View File
@@ -1,4 +1,4 @@
# est/ci-workflows
# mu-ref/est-ci-reusable
公司级 CI 共享资产(est org)——跨项目复用的 reusable workflow 模板与工具。
架构决策与铁律见 coordination `runbooks/ci-repo-architecture.md`2026-08-27 用户拍板)。
@@ -19,19 +19,19 @@
1. 本仓**不得出现项目专名**(reef/seabed 等)与任何 secrets——项目参数(矩阵、build args、verify 期望值)一律由调用方 `with:`/`secrets: inherit` 传入。
2. workflow 文件只保留 `workflow_call` 触发(不可直接触发);`has_actions=false`
3. **版本化调用**:调用方一律 `uses: est/ci-workflows/.gitea/workflows/reusable/<name>.yml@vN`;重大变更升新 tag 并逐项目回归。
4. 可见性:limited(org 成员可读,匿名不可读)。跨仓 reusable 读取按触发用户 token 校验——调用方触发者须为 est org 成员
4. 可见性:**publicorg 级闸门实测)**——跨仓 reusable 读取按触发用户 token 校验:私有 orgest)内的仓即使 repo 级 public/limited 也被拒(Gitea 1.27.2 实测三档全否);本仓内容为无秘密的公共资产(同 mu-ref/actions-* 待遇),故由 **public orgmu-ref** 宿主承载。est org 保持 private
## 调用样例
```yaml
jobs:
quality:
uses: https://git.moneywood.site/est/ci-workflows/.gitea/workflows/reusable/node-quality.yml@v1
uses: https://git.moneywood.site/mu-ref/est-ci-reusable/.gitea/workflows/reusable/node-quality.yml@v1
with: { ... }
secrets: inherit
```
## 迁移与同步
- 2026-08-27 自 mu-ref/est-ci-reusable(已删)与 est/Est-Infra 上移建立;Est-Infra 留 README 指针
- 2026-08-27 定稿:曾按初版决策试建 est/ci-workflows,因 est org 私有闸门不可跨仓调用而删除(用户改批 mu-ref 宿主);同日自 est/Est-Infra 上移 tools/ci
- helper Dockerfile 的可复现 bake 与 ops 巡检脚本仍属项目级(Est-Infra / gitea-host-setup)。