Files

12 lines
1.8 KiB
Markdown
Raw Permalink Normal View History

2026-09-29 18:47:37 +08:00
# TEST 单机配置
唯一导入目录为本目录的 14 个 YAML:`baiyue-common.yml` 加 13 个服务 Data ID。Group 默认 `BAIYUE`,所有配置和发现共用实际 `NACOS_NAMESPACE` ID;不能填写命名空间显示名。先导入公共配置再导入服务配置。应用不再使用 optional import,缺失配置应阻断启动。
变量在服务进程内解析,导入文件不得替换成真实密钥。无密钥模板见 `../../../deploy/env/.env.test.example`。私钥仅传入 Auth;运维令牌仅传入 Firstleg、Finance、Lastleg。各业务数据库 Schema 独立。
离线预检:`./scripts/publish-nacos-config.ps1 -ServerAddr '<explicit-address>' -Namespace '<actual-id>' -DryRun`(从后端根运行,不联网、不登录)。正式发布去掉 DryRun,会修改指定 Nacos,需授权;认证从进程环境 NACOS_USERNAME/NACOS_PASSWORD 取得。失败立即停止,已发布项不自动撤销,保存本轮配置版本并在停写窗口重新发布完整匹配集合。
切换顺序、发布与恢复约束见 `../../../deploy/TEST单机部署执行清单.md`;文件存在不代表环境已发布。
2026-09-29 20:17:36 +08:00
发布脚本仅使用 Nacos v3:`POST /nacos/v3/auth/user/login` 取得 accessToken,`GET /nacos/v3/admin/core/namespace/list` 精确核对实际 Namespace ID,再逐项 `POST /nacos/v3/admin/cs/config`(`namespaceId`、`groupName`、`dataId`、`type=yaml`、UTF-8 表单内容)。发布响应必须为 `code=0` 且布尔值 `data=true`;旧 v1 路径、tenant/group 参数和裸 true 响应不再支持。离线合同:`node --test scripts/publish-nacos-config-contract.test.mjs`,全部 HTTP 由测试替身拦截。协议依据:[Admin API](https://nacos.io/en/docs/latest/manual/admin/admin-api/)、[鉴权](https://nacos.io/en/docs/latest/manual/admin/auth/)。