API开关检测
All checks were successful
CodeChecker 变更检测 / code-check (push) Successful in 19s

This commit is contained in:
2026-06-09 11:39:49 +08:00
parent 17d3cab02d
commit e2b1cb7b72
7 changed files with 62 additions and 8 deletions

View File

@@ -0,0 +1,48 @@
# ============================================================
# 变更检测配置
# 由 CI 流水线加载jar 位于 .gitea/workflows/code-checker.jar
# 修改后 push 即可生效,无需重新打包 jar除非改动了 Java 源码)
# ============================================================
# 总开关false 时跳过 class_check + api_check流水线直接退出
checker:
enabled: true
# 类变更检测Vo/Dto/Entity/Model 字段增删改等)
class_check:
enabled: true
dto_entity_conversion:
enabled: false
model_dirs:
- jnpf-ftb/jnpf-ftb-entity/src/main/java
# 接口索引扫描目录,用于分析类变更对 API 的影响范围
endpoint_scan:
controllers:
- jnpf-ftb/jnpf-ftb-biz/src/main/java
feign_apis:
- jnpf-ftb/jnpf-ftb-api/src/main/java
conversion_scan:
- jnpf-ftb/jnpf-ftb-biz/src/main/java
# API 变更检测(路径 / 请求方式 / 参数),与 class_check 同级
api_check:
enabled: false
exclude_framework_params: true
endpoint_scan:
controllers:
- jnpf-ftb/jnpf-ftb-biz/src/main/java
feign_apis:
- jnpf-ftb/jnpf-ftb-api/src/main/java
# 企业微信通知开关
wecom:
enabled: true
webhook_url: "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=61f08cc9-b734-4dff-a931-7f33654c0a81"
notify:
only_on_change: true

View File

@@ -1 +1,53 @@
name: CodeChecker 变更检测
name: CodeChecker 变更检测
run-name: ${{ gitea.actor }}的CodeChecker变更检测
on:
push:
branches:
- class-check
workflow_dispatch:
jobs:
code-check:
if: ${{ gitea.ref != 'refs/heads/pre' && gitea.ref != 'refs/heads/dev' && gitea.ref != 'refs/heads/master-2.0' }}
runs-on: jdk11
steps:
- name: 检出代码
run: |
git config --global http.sslVerify false
git clone "https://${{ gitea.token }}@git.niujiekeji.com/${{ gitea.repository }}.git" .
git checkout ${{ gitea.sha }}
- name: 检查配置文件与预编译 jar
run: |
if [ ! -f .gitea/workflows/code-check-config.yaml ]; then
echo "错误: 缺少 .gitea/workflows/code-check-config.yaml"
exit 1
fi
if [ ! -f .gitea/workflows/code-checker.jar ]; then
echo "错误: 缺少 .gitea/workflows/code-checker.jar"
echo "请本地执行: powershell -File scripts/build-code-checker.ps1"
exit 1
fi
- name: 验证 JDK
run: |
echo "Java: $(java -version 2>&1 | head -1)"
- name: 执行 CodeChecker 变更检测
run: |
OLD_SHA=$(git rev-parse HEAD~1 2>/dev/null || echo "")
if [ -z "$OLD_SHA" ]; then
echo "首次提交,跳过变更检测"
exit 0
fi
COMMIT_TIME=$(git log -1 --format=%cd --date=format:'%Y-%m-%d %H:%M:%S')
java -jar .gitea/workflows/code-checker.jar \
--config .gitea/workflows/code-check-config.yaml \
--repo-root . \
--old-sha "$OLD_SHA" \
--new-sha "$(git rev-parse HEAD)" \
--modifier "${{ gitea.actor }}" \
--modify-time "$COMMIT_TIME"

Binary file not shown.