4.6 KiB
TEST 环境 Jenkins 部署指南
更新日期:2026-09-29。本指南描述唯一 TEST 单机目标;仓库配置已收敛不表示实际服务器已部署。统一架构切换与验收以测试环境单机部署与配置契约为准。
授权与边界
默认只做本地修改与离线检查。实际Jenkins构建发布、Nacos发布、SQL和清理分别落实本轮授权范围;本指南不授予持续部署权限。不得读取或覆盖其他任务维护的真实生产/测试凭据。运行事实与本目标不一致时先核对,不自行改名或删除运行环境。
唯一发布入口
| 对象 | 入口 |
|---|---|
| 后端总控 | backend-java,仓库 baiyue-firstleg/Jenkinsfile |
| 后端单服务 | baiyue-firstleg-<module>,Jenkinsfile.service |
| 构建/部署节点 | java-builder / 同机 java-test |
| 环境凭据 | Jenkins Secret File firstleg-test-env,真实值不入库 |
| 服务与镜像列表 | service-map.yml |
| Compose | docker-compose.yml,项目 firstleg-test |
| 环境模板 | .env.test.example |
| Nacos | config/nacos/test,14个Data ID、一个实际Namespace ID |
| 执行顺序与恢复 | TEST单机部署执行清单 |
保留13个服务:gateway、auth、iam、order、firstleg、finance、warehouse、warehouse-overseas-service、lastleg-service、file、print、audit-service、integration-service。Gateway Overseas、两区Event Bridge不在新发布清单。停旧服务必须等统一认证、直接投递、撤销和四端切换验证完成;源码退役不等于获准停止当前服务。
旧开发/生产Job不再匹配当前流水线,不能借环境参数使本版本执行生产部署。已有其他环境应由其独立明确授权任务处理,不在本次TEST发布中操作。
参数与门禁
总控支持AUTO、SELECT、ALL。AUTO保留失败服务重试与直接依赖识别;架构首次切换使用审核后的完整匹配发布清单,不以AUTO遗漏服务。ENVIRONMENT仅test,下游前缀仅baiyue-firstleg-。DEPLOY默认false;IMAGE_REPOSITORY必须替换为已核镜像仓库,DOCKER_BASE_IMAGE由构建节点可访问的Java17镜像提供。不得将凭据拼入参数、URL或日志。
默认执行Maven测试;仅明确选择SKIP_TESTS时跳过执行,仍编译测试源码。总控先统一测试,再向固定commit的单服务任务传递跳过重复执行。发布前还须完成网关路由、部署拓扑、失败回滚和受影响前端合同。离线检查不能证明镜像健康或HTTP闭环。
单服务任务在取目标节点执行器前锁定对应服务,目标节点通过同一env文件拉镜像并更新容器。没有HEALTHCHECK、启动失败、不健康、退出或超时均判失败。只有同协议同Schema版本才可显式启用ALLOW_SAME_CONTRACT_ROLLBACK;架构切换保持false,恢复原则见执行清单。
配置与端侧
容器共用firstleg-test-network;同网络Web Nginx使用http://gateway:9000。Gateway宿主机发布仅127.0.0.1,业务服务只内部expose。Auth使用http://auth:9100,不能把Nacos应用名当Docker DNS。宿主机中间件通过host.docker.internal访问,不能使用容器localhost。
所有服务使用同一Nacos Namespace ID/Group、Redis DB与会话前缀。Auth独占签名私钥;JWKS和内部会话验证共用Auth。EVENT_OPERATIONS_TOKEN独立于内部业务令牌,留空禁用运维操作。现有文件卷和非桥业务MQ保留,topic/group使用test-前缀。
Admin与Client各自Compose项目共接后端网络,发布必须给出CLIENT_WEB_URL/VITE_ADMIN_WEB_ORIGIN;两个PDA保留独立产物及仓绑定。域名、Namespace ID、MQ范围、数据卷和主机容量必须据实际清单核实,不能用模板默认值充当验收。
发布与验收
按执行清单记录镜像、配置、SQL与四端版本,在停写窗口发布完整匹配版本。SQL不由Compose/Jenkins自动运行,初始化脚本仅接受两份显式审核的空库基线并受授权开关保护。禁止整机清空Redis/MQ/文件。
启动就绪后先验证统一登录/撤销/隔离/仓绑定、资源查询和文件,再用新造数据验证装柜至尾程、资金指令结果回传及故障恢复。真实API通过后还需页面/PDA验收。未部署、未验证项目必须明确标记;不能以Job成功替代整条业务链完成。