Skip to content

chore(renovate): centralize Go toolchain version management#243

Open
beeme1mr wants to merge 3 commits intomainfrom
chore/renovate-go-toolchain-manager
Open

chore(renovate): centralize Go toolchain version management#243
beeme1mr wants to merge 3 commits intomainfrom
chore/renovate-go-toolchain-manager

Conversation

@beeme1mr
Copy link
Copy Markdown
Member

@beeme1mr beeme1mr commented Apr 28, 2026

Summary

go.mod, the new GoBaseImage constant in test/integration/integration.go (introduced in #241), and the minimum-version notes in README.md and CONTRIBUTING.md all need to move together when the Go toolchain bumps. Renovate already manages go.mod and the constant once it can find them — this PR adds the missing custom managers and groups everything into one PR.

  • GoBaseImage manager — matches GoBaseImage = "golang:X.Y-alpine" in test/integration/integration.go.
  • Docs manager — matches Go >= X.Y and Go X.Y or later in README.md and CONTRIBUTING.md.
  • Grouping rule — bundles gomod, the constant manager, and the docs manager under a single go toolchain PR.

Tradeoff: a future rename of GoBaseImage, the file holding it, or the doc strings silently stops being managed. Renovate does not warn about unmatched managers, so any restructure needs a corresponding glob/regex update.

Test plan

  • renovate-config-validator reports the config is valid
  • Regex patterns confirmed against current file contents on main
  • Next Go-toolchain Renovate PR opens with all references updated together

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the Renovate configuration to include custom managers for tracking Go versions in Dagger integration tests and documentation files, while also grouping toolchain updates into a single PR. Feedback was provided to improve the regex patterns for version matching by supporting optional patch versions, ensuring the automation continues to function correctly after versions are updated to three-part strings.

Comment thread renovate.json Outdated
Comment thread renovate.json Outdated
Add Renovate custom managers and a grouping rule so the GoBaseImage
constant in test/integration/integration.go and the minimum-version
notes in README and CONTRIBUTING all bump alongside go.mod in a
single PR.

Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
@beeme1mr beeme1mr force-pushed the chore/renovate-go-toolchain-manager branch from 5d5e6d3 to 263716e Compare April 28, 2026 01:09
@beeme1mr beeme1mr requested review from Copilot and sahidvelji April 28, 2026 01:12
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds Renovate custom regex managers and grouping rules so Go toolchain version bumps update go.mod, the GoBaseImage constant, and documented minimum Go version references together.

Changes:

  • Add a regex custom manager to update GoBaseImage = "golang:X.Y-alpine" in test/integration/integration.go.
  • Add a regex custom manager to update minimum Go version text in README.md and CONTRIBUTING.md.
  • Add a package rule to group gomod + custom managers into a single “go toolchain” Renovate PR.

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

Comment thread renovate.json
Comment thread renovate.json Outdated
Comment thread renovate.json
Comment thread renovate.json Outdated
Comment thread renovate.json
- Use plain glob strings in managerFilePatterns instead of /regex/
  delimiters to avoid any ambiguity in pattern matching.
- Allow an optional patch component in the regex captures so the
  managers keep matching if a future bump writes a three-part
  version like 1.26.0.
- Switch the docs manager to the golang-version datasource with an
  extractVersionTemplate that keeps the rendered version at
  major.minor, decoupling the docs from Docker tag availability.

Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
@beeme1mr beeme1mr closed this Apr 28, 2026
@beeme1mr beeme1mr reopened this Apr 28, 2026
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.

3 participants