# ⚠️ DRAFT — 请勿直接改名为根目录 .gitlab-ci.yml # 本文件是 G3「CI 接入」的配置草案,放在 docs/ 下不会被 GitLab 自动加载。 # ✅【2026-11-06 16:2x】正式版已落地为根目录 `.gitlab-ci.yml`(最小 3-job),本草案仅作历史归档。 # 启用前置(需人工核实): # 1) 确认 CI 平台确为 GitLab(remote: http://git.iwintrue.com/liaoxg/cfc,属 GitLab 系) # 2) runner 具备:JDK8(/d/jdk1.8.0_25 等价)、Maven、node22、可拉取依赖的网络 # 3) 核实后复制到仓库根 .gitlab-ci.yml # # 🔴 关键坑:cfc-backend/pom.xml 第 28 行 true, # 直接 `mvn test` 会**静默跳过全部测试(假绿)**。 # 因此后端 job 必须显式 `-DskipTests=false`,否则 CI 绿灯是假的。 stages: - test frontend-jest: stage: test when: manual # 首次接入先手动跑,确认 runner 有 node/npm 后再改自动 script: - cd cfc-frontend - npm ci || npm install - npx jest --ci # 注:当前未装 jest-junit,暂不产出 junit 报告;如需报告先加 devDep jest-junit backend-mvn-test: stage: test when: manual # 首次接入先手动跑,确认 runner 有 JDK8+Maven+.m2 script: - cd cfc-backend # 必须 -DskipTests=false 覆盖 pom 默认值,否则假绿 - mvn test -DskipTests=false artifacts: when: always reports: junit: - cfc-backend/target/surefire-reports/TEST-*.xml # 注:若 runner 无外网但 .m2 已预热,可改 `mvn -o test -DskipTests=false`