Repository navigation
ci: Dependabot updates the actionlint image and the composite actions - #72
Merged
Merged
Conversation
The actionlint image was a docker:// line in ci.yml, which Dependabot does not update, so it stayed on its version unless bumped by hand. It is now one FROM line in .github/actionlint/Dockerfile, which a new docker entry in dependabot.yml watches; ci.yml's actionlint step and tools/linux/setup.sh both read it there. A docker PR waits for the owner in update-prs.yml, as the GitHub Actions PRs do. The github-actions entry had directory '/', which covers .github/workflows only, so e2e-setup's setup-firefox pin would never have been updated; it now also watches /.github/actions/*. checkToolchain.test.mjs fails for a pin in a form Dependabot does not update. docs/maintenance.md says how to pin a new tool. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From the review: Dependabot does not update a job's container: or a service's image either, so the guard test refuses those too, and it now checks that update-prs.yml gives the docker kind its reason, so an actionlint image update cannot drift onto the merge path. setup.sh takes only a full 64-digit digest, so a mangled pin stops with its own message. Co-Authored-By: Claude Opus 5.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.
Since #60, nearly all of #10 arrives by itself: Node's LTS major as a pull request for you, pnpm 11.x merging itself, pnpm 12 once Dependabot supports it, npm packages and GitHub Actions through Dependabot, patched libraries, mpv, runner images, Firefox stable and beta. Two pins still had no updater. This PR gives both one, adds a test so a future pin cannot go without one, and ships nothing to Firefox (no release).
What was still by hand
docker://line in ci.yml. Dependabot does not update those lines (GitHub's docs say so; dependabot-core#5819), so it stayed on 1.7.12 unless bumped by hand, as the comment in dependabot.yml said..github/actions/e2e-setup, the setup of every e2e job, pinsbrowser-actions/setup-firefoxv1.7.2. Dependabot's github-actions entry haddirectory: '/', which scans.github/workflowsonly, so that pin would never get a pull request. It is current today only because v1.7.2 is still the newest release.What changes
FROM rhysd/actionlint:1.7.12@sha256:...line, the only place the image is named. Nothing builds the image.docker runon the checkout (mounted read-only), in place of thedocker://line. tools/linux/setup.sh reads the same line for the WSL verify.dockerentry for/.github/actionlint, weekly with a 5-day cooldown, like the others. Dependabot updates the tag and the digest of such a FROM line together. The github-actions entry now watches/and/.github/actions/*.docker://image, if Dependabot stops watching the composite actions, or if the actionlint pin is not one tag-and-digest FROM line that a docker entry watches and that ci.yml and setup.sh read.Tests
docker://line back in ci.yml; the digest missing; a second FROM line; the composite actions, or the docker entry, dropped from dependabot.yml; the docker entry watching/; an action pinned by tag; a commit pin without its version comment; an unpinned setup-firefox in e2e-setup; setup.sh or ci.yml reading another file; a jobcontainer:in a workflow; the docker kind, or its reason, dropped from update-prs.yml.pnpm run verify:linux workflows: actionlint 1.7.12 with shellcheck 0.11.0 passes on every workflow, the new step included, on Ubuntu 24.04 and 26.04. setup.sh took the pin from the new file (it stops with an error when it finds none).caseblocks, cut out of the file and run in bash for seven branch names:dependabot/docker/...gets its reason and waits; npm, Actions, pnpm and Node branches come out as before.docker runitself could not run here (no Docker on this machine). On this PR's first CI run, "Lint workflows" pulled the image by its digest and actionlint passed.container:andservices:images (Dependabot updates neither), it checks that the docker kind keeps its reason in update-prs.yml, and setup.sh takes only a full 64-digit digest.After merging
🤖 Generated with Claude Code