feat: 项目整体命名修改cache-schema-checker
All checks were successful
缓存序列化结构检查 / cache-schema-check (push) Has been skipped

This commit is contained in:
2026-07-14 11:03:34 +08:00
parent 114b053733
commit 110beb79c0
42 changed files with 197 additions and 199 deletions

View File

@@ -1,4 +1,4 @@
# Redis 序列化结构变更检测 — 实施方案
# 缓存序列化结构变更检测 — 实施方案
> 版本v0.1
> 日期2026-07-13
@@ -104,12 +104,12 @@
redisCheck 仓库
├── 开发 Java 分析工具
├── mvn package 打 fat-jar
├── 发布到 Nexuscom.codechecker:redis-schema-checker:{version}
├── 发布到 Nexuscom.codechecker:cache-schema-checker:{version}
└── 提供默认配置模板
jnpf-java-cloud 仓库
├── .gitea/workflows/redis-schema-check.yaml
├── .gitea/config/redis-schema-check-config.yaml
├── .gitea/workflows/cache-schema-check.yaml
├── .gitea/config/cache-schema-check-config.yaml
└── push 时下载 jar 并执行检测
```
@@ -119,11 +119,11 @@ jnpf-java-cloud 仓库
flowchart TB
subgraph Gitea["Gitea Push Pipeline"]
A[push 事件] --> B[浅克隆 old/new 提交]
B --> C[下载 redis-schema-checker.jar]
B --> C[下载 cache-schema-checker.jar]
C --> D[java -jar 执行检测]
end
subgraph Checker["redis-schema-checker (JDK 11)"]
subgraph Checker["cache-schema-checker (JDK 11)"]
D --> E[GitDiffScanner]
E --> F[RedisWritePointDetector]
F --> G[JavaSchemaExtractor]
@@ -195,8 +195,8 @@ redisCheck/
│ ├── resources/fixtures/tenant/
│ └── java/...
├── .gitea/
│ ├── workflows/redis-schema-check.yaml
│ └── config/redis-schema-check-config.yaml
│ ├── workflows/cache-schema-check.yaml
│ └── config/cache-schema-check-config.yaml
└── target/ # 构建产物
```
@@ -204,11 +204,11 @@ redisCheck/
```xml
<groupId>com.codechecker</groupId>
<artifactId>redis-schema-checker</artifactId>
<artifactId>cache-schema-checker</artifactId>
<version>1.0.0-SNAPSHOT</version>
```
打包为 **shaded/fat jar**,主类:`com.codechecker.redis.cli.RedisSchemaCheckerMain`
打包为 **shaded/fat jar**,主类:`com.codechecker.cache.cli.CacheSchemaCheckerMain`
---
@@ -217,8 +217,8 @@ redisCheck/
### 6.1 CLI 参数
```bash
java -jar redis-schema-checker-1.0.0.jar \
--config .gitea/config/redis-schema-check-config.yaml \
java -jar cache-schema-checker-1.0.0.jar \
--config .gitea/config/cache-schema-check-config.yaml \
--repo-root /path/to/jnpf-java-cloud \
--old-sha abc123 \
--new-sha def456 \
@@ -251,7 +251,7 @@ java -jar redis-schema-checker-1.0.0.jar \
#### Step 1加载配置
读取 `redis-schema-check-config.yaml`,合并默认值(见 `docs/配置说明.md`)。
读取 `cache-schema-check-config.yaml`,合并默认值(见 `docs/配置说明.md`)。
#### Step 2Git Diff 扫描
@@ -416,15 +416,15 @@ manual_mappings:
| 层级 | 位置 | 职责 |
|------|------|------|
| 默认配置 | 工具 jar 内 `default-config.yaml` | 检测模式、忽略规则、严重级别默认值 |
| 业务覆盖 | `jnpf-java-cloud/.gitea/config/redis-schema-check-config.yaml` | mode、notify、include_modules、manual_mappings |
| 业务覆盖 | `jnpf-java-cloud/.gitea/config/cache-schema-check-config.yaml` | mode、notify、include_modules、manual_mappings |
合并规则:**业务配置覆盖默认配置**,未声明的项沿用默认值。
CLI 调用:
```bash
java -jar redis-schema-checker.jar \
--config .gitea/config/redis-schema-check-config.yaml \
java -jar cache-schema-checker.jar \
--config .gitea/config/cache-schema-check-config.yaml \
...
```
@@ -452,12 +452,12 @@ notify:
详见 `docs/CI集成说明.md`。核心流程:
```yaml
# jnpf-java-cloud/.gitea/workflows/redis-schema-check.yaml
name: Redis序列化结构检查
# jnpf-java-cloud/.gitea/workflows/cache-schema-check.yaml
name: 缓存序列化结构检查
on: [push]
jobs:
redis-schema-check:
cache-schema-check:
if: ${{ gitea.ref != 'refs/heads/pre' && gitea.ref != 'refs/heads/dev' && gitea.ref != 'refs/heads/master-2.0' }}
runs-on: jdk11
steps:
@@ -469,7 +469,7 @@ jobs:
- name: 下载检测工具
run: |
# 从 Nexus 下载 redis-schema-checker jar
# 从 Nexus 下载 cache-schema-checker jar
...
- name: 执行检测
@@ -478,8 +478,8 @@ jobs:
run: |
OLD_SHA=$(git rev-parse HEAD~1 2>/dev/null || echo "")
[ -z "$OLD_SHA" ] && exit 0
java -jar /tmp/redis-schema-checker-1.0.0.jar \
--config .gitea/config/redis-schema-check-config.yaml \
java -jar /tmp/cache-schema-checker-1.0.0.jar \
--config .gitea/config/cache-schema-check-config.yaml \
--repo-root . \
--old-sha "$OLD_SHA" \
--new-sha "$(git rev-parse HEAD)" \
@@ -578,7 +578,7 @@ jobs:
| # | 决策项 | 结论 |
|---|--------|------|
| 1 | 阻断范围 | `block` 模式下 **P0/P1/P2 全部阻断**exit 1 |
| 2 | 发布坐标 | 独立产物 `com.codechecker:redis-schema-checker:1.0.0` |
| 2 | 发布坐标 | 独立产物 `com.codechecker:cache-schema-checker:1.0.0` |
| 3 | 配置归属 | **双层配置**jar 内 `default-config.yaml` + 业务仓覆盖合并 |
| 4 | 上线策略 | 先 `notify` 观察 **1 周**,稳定后手动切 `block` |
| 5 | 检测范围 | **仅 `src/main/java`**,不扫描测试代码 |