Repository navigation
build: pin Actions and Docker sources to commit SHAs and digests - #80
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 5 minutes. View limit detailsLimit details: You’ve used the included review currently available. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (6)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
This PR pins all GitHub Actions to commit SHAs with version comments, pins the Dockerfile syntax and base image to digests, and pins every third-party library source to a commit hash (with verification steps for zimg and FFmpeg). It also adds a docker ecosystem to dependabot for automatic digest updates. No library versions or build behavior change.
review-bot, model nvidia/nemotron-3-ultra-550b-a55b:free, verdict approve
There was a problem hiding this comment.
This PR pins all third-party GitHub Actions to commit SHAs, pins the Dockerfile base image and syntax to digests, and adds commit SHAs for every library source (keeping the existing branch/tags for documentation). Verification steps ensure zimg and FFmpeg clones match the pinned commits. Dependabot is extended to the docker ecosystem for image/syntax digest updates. The check-doc-versions script regex is updated to handle the new digest format. No behavior changes.
review-bot, model nvidia/nemotron-3-ultra-550b-a55b:free, verdict approve
What
uses:in.github/workflowsto a full commit SHA with a# vX.Y.Zcomment. Same major versions as before, newest release in each major.# syntax=) todocker/dockerfile:1.10@sha256:..., and every library to a commit (<LIB>_COMMITnext to each existing<LIB>_BRANCHversion, whichscripts/check-doc-versions.mjsstill reads). The zimg and FFmpeggit clonesteps check that the cloned tag resolves to the pinned commit, so the FFmpeg version string is unchanged.dockerecosystem to.github/dependabot.yml.No library versions, build flags or other behavior change. x264 (
4-cores) and lame (master) were branches; they are pinned to their current heads.Why
A moved tag, branch or image can change what CI builds and publishes without any commit here. Backports the supply-chain part of upstream ffmpegwasm#958.
Updating a pin
github-actionswas already independabot.yml) bumps SHA pins and the version comment.dockerentry covers them.<LIB>_BRANCHand<LIB>_COMMITtogether. Resolve the commit withgit ls-remote <url> refs/tags/<tag>^{}.Not run locally
Raspberry Pi, so no Docker build. CI builds the cores. Workflow and dependabot YAML parse, and every
uses:line is pinned (grep).Noticed, not fixed
permissions: contents: readand job-level elevation where needed, so nothing changed there.dockerfile-upstream:master-labstodockerfile:1.10, as upstream did. It relies on gitADDbeing stable in 1.10; CI will confirm.