ci: redesign validation and integration pipelines - #8
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
目标
重新设计项目 CI,让 PR 上的检查稳定、快速、可解释,并把外部依赖、跨语言和性能测试从主门禁中隔离。
主 CI (
ci.yml)PR / main push 只保留必须稳定通过的检查:
rpc-core/rpc-transport-netty单测,并上传 Surefire + JaCoCo 报告所有主 CI 测试显式使用
rpc.registry=local,不依赖 Docker / Nacos。同时升级到当前 Node 24 兼容的官方 Actions:
actions/checkout@v7actions/setup-java@v6actions/upload-artifact@v7移除原先
mvn checkstyle:check || true这种不会真正阻塞合并的伪质量门禁。Extended Integration (
integration.yml)仅手动或每周运行,不阻塞普通 PR:
Benchmark (
benchmark.yml)仅手动或每周运行:
rpc-benchmarkSerializationBenchmark测试稳定性改进
FullIntegrationTest:9090Thread.sleep(1500)猜服务是否启动-Drpc.registry/-Drpc.protocol复用同一套 E2E 测试result1的问题Python / Go gRPC 客户端也改为在 RPC 错误、非 Success 响应、反序列化失败或返回值异常时返回非 0,确保 CI 能真正识别跨语言兼容性失败。
设计原则
PR 门禁只回答三个问题:
外部注册中心、多协议兼容、跨语言和 benchmark 作为扩展验证独立运行,避免第三方环境问题让日常开发长期红灯。