pingcap / pingcap/tidb

Automate Go module mirror uploads for dependency updates

Open
#68,199 1 comment 0 reactions 0 assignees View on GitHub
component/build type/enhancement
Dominant language
Go
Stars
40.5k
Forks
6.2k
PR merge metrics
PR metrics pending

Description

## Enhancement

Go module mirror uploads are currently not automated in the PR workflow. When `go.mod`, `go.sum`, or the parser module files change, contributors may regenerate Bazel files, but uploading missing module zip files to the mirror still depends on a manual local step with GCS credentials.

This makes dependency updates harder to finish reliably:

- Missing mirror objects can be discovered only after later Bazel jobs try to fetch them.
- The upload step depends on a developer having the right local credentials.
- The process is not tied to the PR approval flow, so it is easy to forget.

Expected behavior:

- When a PR changes Go module files, GitHub Actions can run the mirror upload helper.
- The upload job should use a dedicated GCS service account secret.
- Execution should be controlled by GitHub Environment approval, so repository settings decide who can approve the upload.
- The job should only upload mirror objects and should not commit generated file changes.

Suggested labels: type/enhancement, component/build

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.