fix(ci): drop configurationFile to stop customManager doubling#12
Merged
Conversation
Confirmed in production run 25346453345: the regex manager stats
showed `"regex": {"fileCount": 4, "depCount": 56}` instead of the
expected 2/28. With `configurationFile: .github/renovate.json5`
passed, the action mounts the file as Renovate's global config AND
Renovate auto-discovers the same file from the cloned working tree;
both loads register the customManagers and every annotation gets
extracted twice. The doubling produced 14 "Cannot find replaceString
in current file content. Was it already updated?" warnings across
the four created branches — Renovate's first pass applied the
replacement, the second pass tried to re-apply but the content no
longer matched.
PR #6 added `configurationFile:` chasing the "repository-changed"
aborts under the wrong hypothesis; PR #7 found and fixed the actual
cause (missing `statuses: write` permission). With #7 in place we
can drop `configurationFile:` cleanly. Earlier dry-run experiments in
RENOVATE_PLATFORM=local mode had already shown this doubling, but I
mis-attributed it to local-mode specifics. Production confirms the
behavior is the same.
`actions/checkout` stays — it's not the cause of any issue we've
seen, and the upstream gpu-operator pattern keeps it.
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
Removes the
configurationFile: .github/renovate.json5input that PR #6 had re-added. It was causing every.settings.yamlannotation to be extracted twice in production runs.Confirmed in production
Run 25346453345 — the first run that completed successfully (PRs #8–#11 created) — also showed:
Expected
fileCount: 2, depCount: 28. We have two customManagers (broad regex + git-refs digest) targeting one file (.settings.yaml); the doubling means each is loaded twice. WithconfigurationFile:set, the action mounts the file as Renovate's global config, and Renovate independently auto-discovers the same file from the cloned working tree as the repo config. Both loads register the same customManagers, and Renovate does NOT dedupe — every annotation gets two extraction passes.The 14
Cannot find replaceString in current file content. Was it already updated?warnings the user spotted in the same log are the downstream symptom: pass 1 applies a replacement, pass 2 tries the same replacement but the file content no longer matches.How we got here
configurationFile:, customManagers worked correctly.repository-changedaborts under the wrong hypothesis. PR fix(ci): restore actions/checkout + configurationFile to renovate workflow #6 re-addedconfigurationFile:to mirror gpu-operator's setup.statuses: writepermission. Fixed.configurationFile:is no longer pretending to be load-bearing — it can be dropped.The
RENOVATE_PLATFORM=localdry-runs I did way back in PR #1 had already shown this doubling. I dismissed it as a local-mode artifact; production proved otherwise.Fixes: doubled customManager extraction + replaceString warnings
Related: #1, #6, #7
Type of Change
Implementation Notes
with:block; comment block above replaced with the production evidence + lesson learned (so future PRs don't re-add it).actions/checkoutstays — never proven harmful, matches gpu-operator's upstream shape.renovate-versiondigest pin stays.Testing
actionlint .github/workflows/renovate.yaml # cleanPost-merge validation:
fileCount: 2, depCount: 28instead of 4/56. PRs reopen with clean (single-extraction) diffs. NoCannot find replaceStringwarnings.Risk Assessment
Checklist
actionlint)git commit -S)