6440e3f679
- 迁移 000044:production_kb_bindings + release_item_executions.target_knowledge_base_id - 系统设置新增「生产知识库绑定(对内/对外)」:从生产 WeKnora 实际列表选库, 保存时真校验(不存在拒收;生产端不可达只提示并如实回报),仅管理员可改 - 执行计划按绑定解析目标库并冻结进 release_item_executions;空目标直接拒收; 已发布过的条目保留原目标(重试/回滚回到同一处) - DocumentBundle.RemapKnowledgeBase:knowledges/chunks/knowledge_tags/wiki_pages/ wiki_folders 的 knowledge_base_id 与 ES 文档字段改写为目标库,重算表/文档摘要并重新封装 - 契约比对改为「声明的映射对」(KnowledgeBaseMapping),其余字段继续 fail-closed - 契约检查器 / 目标身份 / 验证器全部走映射后的目标库;对象通道无需改写 - Compose 拆分:数据面接线 compose.release-sim.yaml + 两道门禁 compose.release-gates.yaml - 测试:RemapKnowledgeBase 全通道/无操作/fail-closed、映射契约、绑定接口、RBAC、真实 PG 集成
18 lines
907 B
YAML
18 lines
907 B
YAML
# 生产发布的两道门禁(请求门禁 + 执行门禁)。叠加这一份 = 真正「翻闸」。
|
||
# 用法:docker compose -f compose.yaml -f compose.release-sim.yaml -f compose.release-gates.yaml up -d api release-worker
|
||
# 翻闸后:
|
||
# - api 开放「授权发布 / 授权回滚」接口(授权人 = PRODUCTION_RELEASE_AUTHORIZER_REF,Bearer 0600 文件)
|
||
# - release-worker 加载发布配置并连接受限的目标数据面
|
||
# 关闭:去掉本文件重新 up 即可(门禁默认关闭)。
|
||
services:
|
||
api:
|
||
environment:
|
||
PRODUCTION_RELEASE_REQUESTS_ENABLED: "true"
|
||
PRODUCTION_BACKUP_RESTORE_VERIFIED: "true"
|
||
PRODUCTION_RELEASE_AUTHORIZER_REF: yaozhanghao
|
||
PRODUCTION_RELEASE_AUTH_TOKEN_FILE: /run/release-secrets/production_release_auth_token
|
||
|
||
release-worker:
|
||
environment:
|
||
RELEASE_WORKER_ENABLED: "true"
|
||
RELEASE_DEBUG_ITEM_ERRORS: "true" |