ci: canary Shanghai Go proxy for UT - #421
Conversation
aptend
left a comment
There was a problem hiding this comment.
Blocking: .github/workflows/ci.yaml:125 installs http://goproxy.goproxy.svc.cluster.local,https://goproxy.cn,direct after a single successful Cobra probe. In GOPROXY semantics, a comma advances to the next entry only for HTTP 404/410; a later timeout, connection error, or 5xx from the internal proxy makes go list fail without trying goproxy.cn/direct. The one-module probe cannot establish that every subsequent module request will remain healthy.
This also overrides MatrixOne main's pipe-separated default, which was deliberately changed in matrixorigin/matrixone#26631 to recover from transient proxy failures. Please use an any-error fallback chain here (for example http://goproxy.goproxy.svc.cluster.local|https://goproxy.cn|direct) or otherwise preserve that fallback behavior.
aptend
left a comment
There was a problem hiding this comment.
Re-reviewed the full change at 1545fb0. The previous blocker is resolved: the Shanghai proxy chain now uses |, so transient errors from the internal proxy fall through to goproxy.cn/direct, and the probe still extracts the internal endpoint correctly.
I also rechecked the runner condition, go.mod version extraction, DNS/HTTP failure paths, GITHUB_ENV propagation, and time make exit-status behavior. YAML parsing, both modified shell blocks, proxy URL extraction, git diff --check, and the workflow validation check all pass. No remaining blocking issues found.
Summary
Why
A recent MatrixOne run spent about 62 minutes in the first package-graph verification on the Shanghai UT runner. The Shanghai SCA job uses the internal module proxy and completed the comparable dependency phase much faster. This canary gathers direct evidence on the UT path while limiting the behavior change to Shanghai runners.
MatrixOne main deliberately uses pipe-separated public proxies so transient timeouts, connection failures, and 5xx responses can fall through. The canary preserves that resilience by exporting:
http://goproxy.goproxy.svc.cluster.local|https://goproxy.cn|directImpact
Validation