renovate: termix customManager regex versioning (loose+extractVersion still failing) #65
Reference in New Issue
Block a user
Delete Branch "feat/renovate-termix-regex-versioning"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Third attempt at termix. v1 (packageRule with versioning override) failed because the override applied AFTER the docker-versioning pre-check rejected
release-1.11.0. v2 (inline# renovate:comment) failed because kubernetes manager does not honor inline comments. v3 (customManagers regex withversioningTemplate: loose+extractVersionTemplate) failed becauseextractVersionis only applied to candidate versions from the datasource, NOT to currentValue — Renovate validated rawrelease-1.11.0against loose semver and skipped.This fix replaces
loose + extractVersionwith regex versioning in the customManager template. regex versioning parses the prefixed tag directly (no extraction step), so the currentValue pre-check acceptsrelease-1.11.0. github-releases returns the upstreamrelease-X.Y.Ztag_names which the same regex parses. The new tag written back to the manifest is the samerelease-X.Y.Zform — valid atghcr.io/lukegus/termix.🤖 Generated with Claude Code
Third attempt. Debug run confirmed `loose` + `extractVersion` STILL produces: DEBUG: Dependency Termix-SSH/Termix has unsupported/unversioned value release-1.11.0 (versioning=loose) DEBUG: Skipping Termix-SSH/Termix because no currentDigest or pinDigests `extractVersion` is only applied to CANDIDATE versions (from the datasource), not to currentValue. Renovate's pre-validation runs the raw `release-1.11.0` through `loose`, which can't parse it (the `release-` prefix breaks semver detection), so Renovate falls back to digest-only and gives up. `regex` versioning is the only mode that parses the prefixed value directly (no extractVersion needed) — Renovate's regex.matches() accepts `release-1.11.0` because the rule's pattern captures the whole tag. github-releases datasource returns the upstream `release-X.Y.Z` tag_names which the same regex parses. No conversion needed; the new tag written back to the manifest is the same `release-X.Y.Z` form, valid in the ghcr.io/lukegus/termix registry. Removes extractVersionTemplate (no longer needed). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>