Added the Dependabot configuration the pinned actions need - #662
Merged
fdesbiens merged 1 commit intoAug 25, 2026
Merged
Conversation
The action references were pinned to commit SHAs in eclipse-threadx#660, and a SHA pin with nothing moving it is worse than a floating tag -- it holds CI on whatever was current the day it was written. That is exactly how actions/cache@v1 stayed in ci_cortex_m.yml until GitHub began auto-failing every request that used it. The drift measured before that catch-up: download-artifact four majors behind, checkout and upload-artifact three each, cache and upload-pages-artifact two, with nothing ever reporting it. This closes the loop, and the reference to .github/dependabot.yml that eclipse-threadx#660 left in each workflow's pinning comment. Weekly, github-actions only. Patch and minor are grouped into one pull request because they are the routine traffic and a queue reviewed one item at a time is a queue that gets ignored. Majors stay ungrouped, one each, because every breaking change this repository has met in an action has been a major. Two choices worth stating rather than leaving to be rediscovered. target-branch is dev. Dependabot reads this file from the default branch, which is master, but master is deliberately kept behind dev and pull requests belong where the regression suites gate them. The consequence is that landing this on dev arms it without firing it: nothing happens until a release merge carries the file to master. Setting target-branch also opts out of Dependabot security updates, which only run against the default branch -- a small cost for this ecosystem, since an action advisory arrives as an ordinary bump on the weekly run, but a real one. The pull-request limit is raised from the default five to ten. Nine actions are in use, and five would hold majors back with nothing saying that it had. No other ecosystem is configured, deliberately: external dependencies are forbidden, there are no submodules, and the one pinned tool -- gcovr in scripts/install.sh -- lives in a shell script no ecosystem can parse, so that pin keeps moving by hand. No sibling eclipse-threadx repository has a Dependabot configuration, so this sets the pattern rather than following one. The dependencies label it uses already exists here. Assisted-by: Claude Opus 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.
Follow-up to #660, and the last piece of the GitHub Actions track.
#660 pinned all 19 action references to commit SHAs. A SHA pin with nothing moving it is worse than a floating tag — it holds CI on whatever was current the day it was written. That is how
actions/cache@v1came to sit inci_cortex_m.ymluntil GitHub began auto-failing every request that used it, and nobody was told. The drift measured on 24 August, before the catch-up:download-artifactfour majors behind,checkoutandupload-artifactthree each,cacheandupload-pages-artifacttwo.This adds
.github/dependabot.yml— weekly,github-actionsonly — and closes the reference to that path which #660 left in each workflow's pinning comment.Dependabot understands the SHA form and rewrites the trailing version comment together with the pin, so the comment cannot drift away from the SHA it describes.
Shape
Patch and minor are grouped into a single pull request: they are the routine traffic, and a queue reviewed one item at a time is a queue that gets ignored — which is the failure mode this file exists to prevent. Majors stay ungrouped, one pull request each, because every breaking change this repository has met in an action has been a major (
download-artifactv8 defaultingdigest-mismatchtoerror;upload-artifactv6 requiring runner ≥ 2.327.1).The update pull requests are a real test here, and would not have been before this month: since #652 the regression suites run on pull requests to
dev, so a Dependabot pull request exercises the bumped action against the full suite rather than two static checks.Two choices worth stating rather than leaving to be rediscovered
target-branch: dev. Dependabot reads this file from the default branch, which ismaster— butmasteris deliberately kept behinddev, and pull requests belong where the suites gate them. So this arms on merge without firing: nothing happens until a release merge carries the file tomaster. Settingtarget-branchalso opts out of Dependabot security updates, which only ever run against the default branch. For this ecosystem the cost is small — an action advisory arrives as an ordinary bump on the weekly run — but it is a real trade.open-pull-requests-limit: 10, up from the default 5. Nine distinct actions are in use, and 5 would hold majors back with nothing saying that it had.What is deliberately absent
No other ecosystem is configured: external dependencies are forbidden, there are no submodules, and the one pinned tool —
gcovrinscripts/install.sh— lives in a shell script that no Dependabot ecosystem can parse, so that pin keeps moving by hand.Dependabot also correctly leaves the five local reusable-workflow references in
regression_test.ymlalone; they carry no version to move.Notes
actions/cache@v1rotted because nothing ran, not because nobody was told; the trigger fixes in Ran the regression suites on dev, where the pull requests actually are #652 and Revived the Cortex-M build, which had compiled nothing since June #653 are the cure for that half.eclipse-threadxrepository has a Dependabot configuration, so this sets the pattern rather than following one. Thedependencieslabel it uses already exists in this repository.Assisted-by: Claude Opus 5 noreply@anthropic.com