merge(chv-muse-round11): 合入 P3 authd 替身凭证 + Sentinel 出口审批 (a90cf78)

冲突解决(3 处,均为并集保留,双方改动无一丢弃):
- cloud/chv/executor.py _copy_config_fields:P1 的 balloon/
  vsock/vsock_cid 与 P3 的 sentinel_allow_hosts 合并进同一元组
- cloud/tests/test_chv_arch_maint_fe.py EXPECTED_FIELDS:P1 三字段
  + P3 sentinel_allow_hosts;len 断言 41/39 → 42(并集)
- cloud/chv/config.py 自动合入:P3 sentinel_allow_hosts(网络
  片段内)+ P1 _balloon_vsock_fragment 均保留;仅更新
  build_chv_config docstring 注明字段集含 P3 字段
This commit is contained in:
host committed 2026-11-06 21:36:56 +00:00
commit 304707b372
15 files changed
+2376 -95

No files matched your search

+8 -1
View File
@@ -153,6 +153,12 @@ def _network_fragment(params: dict, env: dict) -> dict:
"egress_proxy": env.get("CHV_EGRESS_PROXY"),
"allow_direct_egress": env.get("CHV_ALLOW_DIRECT_EGRESS")
== "1",
# feat-chv-muse-p3:Sentinel 白名单主机(逗号分隔),
# 默认只放行配置的 Gitea 主机(执行器 wake 预审时追加)。
"sentinel_allow_hosts": tuple(
h.strip().lower()
for h in (env.get("CHV_SENTINEL_ALLOW_HOSTS") or "")
.split(",") if h.strip()),
}
@@ -354,7 +360,8 @@ def build_chv_config(params: dict, env: dict) -> "ChvConfig":
“CHV_WARM_POOL_SIZE 非法 + 磁盘非法同时出现”时先报
前者;单项非法时报错与旧代码逐字一致。字段集合 =
旧代码字段 + P1 气球/vsock 三字段(balloon/vsock/
vsock_cid),由测试的字段集断言钉住。"""
vsock_cid)+ P3 Sentinel 字段(sentinel_allow_hosts,
在网络片段内),由测试的字段集断言钉住。"""
env = env if env is not None else {}
return _assemble_chv_config([
_base_fragment(params, env),