fix: unblock two more dependencies silently dropped by Renovate customManagers#285
Merged
Merged
Conversation
…mManagers Cross-checked every # renovate: / // renovate:-annotated line in the repo against its customManager regex (same audit that found the Kafka tracking bug in #284, but this covers other mismatch shapes, not just case). Cross-referenced against the live Dependency Dashboard (#156), which was missing exactly these entries, and confirmed each fix with a standalone regex test against the real file content. - Makefile: ADDLICENSE_VERSION, GOTEMPLATE_VERSION and MOCKGEN_VERSION used `:=` while the customManager regex only matches a plain `=`, so google/addlicense, cznic/gotemplate and uber-go/mock were never tracked. Switched to `=` to match the other working entries in the same file (GOLANGCI_VERSION, LICENSEI_VERSION, etc.) - harmless, since these are static literals with no dependency on recursive vs simple expansion. - tests/e2e/versions.go: ZookeeperOperatorVersion uses datasource=docker, which has no notion of a Helm repo registryUrl, but the customManager regex required `registryUrl=` unconditionally - every other entry in this file is a Helm chart and does supply one. Made registryUrl optional in the regex/template, mirroring the existing optional-group pattern already used for extractVersion in the sibling Dockerfile/Makefile manager. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2 tasks
amuraru
added a commit
that referenced
this pull request
Jul 14, 2026
#286) Both bugs surfaced live after #285 merged and Renovate re-evaluated master (per the Mend job log the user pulled from https://developer.mend.io/github/adobe/koperator, and PR #279 / Dependency Dashboard #156): WARN: Package lookup failures (branch="renovate/master-all-minor-patch") { "warnings": ["Failed to look up github-releases package cznic/gotemplate: no-result"], "files": ["Makefile"] } WARN: Invalid regex manager registryUrl { "value": "" } 1. Makefile's GOTEMPLATE_VERSION annotation said `depName=cznic/gotemplate`, but the Makefile actually `go install`s `github.com/coveooss/gotemplate/v3` (see the bin/gotemplate target a few lines down) - `cznic/gotemplate` doesn't exist on GitHub at all (confirmed 404), so the datasource lookup could never succeed. Fixed the depName to `coveooss/gotemplate`, which does exist and has a v3.12.0 release matching the pinned version. 2. My #285 fix made tests/e2e/versions.go's ZookeeperOperatorVersion (datasource=docker) match by making registryUrl optional in the regex, but registryUrlTemplate still rendered to an empty string for it (docker deps have no Helm-repo registryUrl) - and a templated "" is still a defined-but-invalid registryUrl to Renovate, not the same as omitting it, hence the warning. Split this into two customManagers instead: the original one, unchanged, for helm entries that always carry a registryUrl, plus a new one - scoped to the literal `datasource=docker` (RE2 has no lookaround, so this is how the split avoids overlap without negative-lookahead trickery) - that never defines registryUrlTemplate at all. Renovate then auto-derives the registry from the image name (confirmed via local run: it correctly resolved to https://ghcr.io on its own). Verified for real, not just via renovate-config-validator: ran `renovate --platform=local --dry-run=full` end-to-end (LOG_LEVEL=debug) against this branch. Confirmed in the output: - coveooss/gotemplate resolves cleanly, warnings: [] - ghcr.io/adobe/helm-charts/zookeeper-operator now extracted with registryUrl auto-derived as https://ghcr.io, warnings: [] - apache/kafka still tracked from #284, updates: [] (3.9.2 is in fact the latest 3.x release - nothing newer within the allowedVersions "<4.0.0" pin, confirmed against GitHub tags) - zero occurrences of "invalid regex", "lookup fail", or "no-result" anywhere in the full run log Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #284. That PR found Renovate never tracked
apache/kafkabecause a customManager regex required an all-caps variable name. While auditing every other# renovate:/// renovate:annotation in the repo against its manager regex (not just for case mismatches), two more silently-dropped dependencies turned up — same failure mode (regex doesn't match, dependency vanishes with no error), different specific mismatch. Confirmed both by testing the actual regexes against the actual file content, and cross-referenced against the live Dependency Dashboard, which is missing exactly these entries today.Changes
ADDLICENSE_VERSION,GOTEMPLATE_VERSION,MOCKGEN_VERSIONwere declared with:=while the customManager regex only matches a plain=.google/addlicense,cznic/gotemplateanduber-go/mockwere never tracked as a result. Switched to=, matching the sibling entries in the same file that already work (GOLANGCI_VERSION,LICENSEI_VERSION,CONTROLLER_GEN_VERSION,ENVTEST_K8S_VERSION). Harmless — these are static version literals, so=vs:=(recursive vs simple Make expansion) makes no behavioral difference.ZookeeperOperatorVersionusesdatasource=docker, which has no concept of a Helm reporegistryUrl, but the customManager regex requiredregistryUrl=unconditionally (every other entry in the file is a Helm chart and does supply one). MaderegistryUrloptional in the regex and template, mirroring the optional-group pattern already used forextractVersionin the Dockerfile/Makefile manager.Test plan
renovate-config-validatorpasses against the updatedrenovate.jsongoogle/addlicense,cznic/gotemplate,uber-go/mock,ghcr.io/adobe/helm-charts/zookeeper-operator) now extract correctly, alongside the entries that already worked🤖 Generated with Claude Code