Skip to content

chore(renovate): group go toolchain bumps across managers into one PR#288

Merged
Charles Chiu (charliie-dev) merged 2 commits into
devfrom
feature/renovate-group-go-toolchain
Jul 16, 2026
Merged

chore(renovate): group go toolchain bumps across managers into one PR#288
Charles Chiu (charliie-dev) merged 2 commits into
devfrom
feature/renovate-group-go-toolchain

Conversation

@charliie-dev

@charliie-dev Charles Chiu (charliie-dev) commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Closes #289

Why

Go's version is tracked by three Renovate managers, each in its own
per-manager group in this preset (gomod → go dependencies dashboard-only,
dockerfile → docker dependencies, mise → mise dev tools). So a Go bump
opens as three separate PRs on different schedules that merge out of step —
nics-dp/otel-bundle#123 merged the mise bump to 1.26.5 while go.mod and the
dhi.io/golang digest lagged. That's what surfaced this.

What

Add a packageRule (placed last, overriding the per-manager groups) grouping
the Go toolchain into one go toolchain PR:

  • matchManagers: [gomod, mise, dockerfile, custom.regex] + matchDepNames: [go, dhi.io/golang] — scoped so an unrelated go dep in another ecosystem
    (e.g. an npm package) is not swept in, and its update policy stays untouched.
  • Downstream README custom managers on depName go (otel-bundle adds one) join
    automatically.
  • dependencyDashboardApproval: false so the combined bump opens directly;
    automerge: false so a human reviews the single PR.

Scope of the guarantee

groupName batches whatever updates are available in a given run — it does
not wait for every member or force identical versions across datasources.
This narrows the drift window (no more one-manager-merges-alone, i.e. #123's
failure mode) rather than guaranteeing lockstep.

Affects every downstream repo consuming this preset. Validated with
renovate-config-validator (renovate 43.x). Surfaced by nics-dp/otel-bundle#125.

Go's version lives in three managers — go.mod (gomod), dhi.io/golang
(dockerfile), and mise.toml (mise) — each in its own per-manager group, so
their bumps opened as separate PRs that merged out of step (mise's went in
while go.mod and the base image lagged). Add a packageRule grouping depName
`go` and `dhi.io/golang` into one `go toolchain` group with dashboard
approval off, so the combined bump opens as a single reviewable PR.

Surfaced by nics-dp/otel-bundle#125.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

此 PR 將跨 Renovate managers 的 Go 更新集中至同一群組,以降低版本漂移。

Changes:

  • 新增 go toolchain Renovate 群組。
  • 停用 dashboard approval 與 automerge。
  • 發現 manager 範圍過廣,且群組無法保證版本同步。

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread renovate-preset.json
Comment thread renovate-preset.json

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

… claim

Copilot review on #288 flagged two real issues:
- matchDepNames alone matched `go` across every ecosystem (e.g. an npm
  package named `go`) and would have overridden its dashboard-approval
  policy. Add matchManagers [gomod, mise, dockerfile, custom.regex] so the
  rule only touches the intended Go toolchain deps.
- groupName batches whatever updates are available in a run; it does not
  wait for all members or force identical versions. Reword the description
  to claim a narrowed drift window rather than lockstep.
Copilot AI review requested due to automatic review settings July 16, 2026 18:15
@charliie-dev Charles Chiu (charliie-dev) changed the title chore(renovate): group go toolchain across managers to prevent drift chore(renovate): group go toolchain bumps across managers into one PR Jul 16, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

@charliie-dev
Charles Chiu (charliie-dev) merged commit 9ce495c into dev Jul 16, 2026
12 checks passed
@charliie-dev
Charles Chiu (charliie-dev) deleted the feature/renovate-group-go-toolchain branch July 16, 2026 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(renovate): go toolchain 跨 manager 分組(合併 Go 版本更新 PR)

2 participants