Update metadata for renovate bot#11931
Update metadata for renovate bot#11931MichalFupso wants to merge 3 commits intoprojectcalico:release-v3.30from
Conversation
There was a problem hiding this comment.
Pull request overview
Updates metadata.mk to expose Go/Kubernetes/LLVM version components as separate variables and derives GO_BUILD_VER from those components, aiming to make version pins easier for Renovate to manage.
Changes:
- Introduce
GO_VERSION,K8S_VERSION, andLLVM_VERSIONvariables inmetadata.mk. - Compute
GO_BUILD_VERfrom those variables instead of hardcoding it.
| LLVM_VERSION=18.1.8 | ||
| # The version of calico/go-build and calico/base to use. | ||
| GO_BUILD_VER=1.24.12-llvm18.1.8-k8s1.32.11 | ||
| GO_BUILD_VER=$(GO_VERSION)-llvm$(LLVM_VERSION)-k8s$(K8S_VERSION:v%=%) |
There was a problem hiding this comment.
GO_BUILD_VER is now computed from other variables, but the existing update-go-build-pin automation in lib.Makefile reads GO_BUILD_VER as a literal version string and compares/rewrites it via grep/sed. With this expression, that target will likely behave incorrectly and will overwrite this computed form. Either keep GO_BUILD_VER pinned as a literal value, or update the pin-update tooling to operate on GO_VERSION / LLVM_VERSION / K8S_VERSION instead.
| GO_BUILD_VER=$(GO_VERSION)-llvm$(LLVM_VERSION)-k8s$(K8S_VERSION:v%=%) | |
| GO_BUILD_VER=1.24.12-llvm18.1.8-k8s1.32.11 |
There was a problem hiding this comment.
Hey @MichalFupso could you clarify how this is supposed to work now?
IIUC, the old way was to have the GO_BUILD_VER set here as a string literal, and either a human would update this value here manually from time-to-time, or it would get updated by the update-go-build-pin Makefile target. Right?
What's the motivation to change it to be dynamic here, and how does that work along side the update-go-build-pin Makefile target?
There was a problem hiding this comment.
IIRC the make target only checks for latest toolchain tag, so it would update minor version of k8s and go and not only the patch version. The motivation to split it is for renovate bot to be able to read it and update the versions independently. With the current composite format the bot is not able to compare image tags and to check for patch updates
There was a problem hiding this comment.
But will this "play nice" with the update-go-build-pin target?
Meaning nothing in the Makefile machinery will come in and clobber your new format for GO_BUILD_VER.
There was a problem hiding this comment.
The make target won't be usable with this new split, but if ran it won't make things worse.
There was a problem hiding this comment.
Would it not make sense, as part of this PR, to remove that Makefile target and make it compatible with your change?
Updates metadata.mk file to make it readable and editable by renovate bot.
Release note: