Hosts the profile and shared workflows for ffbuilds.
bump.yml— daily version PRs via wader/bump, thengh pr merge --auto --squashdocker.yml— Alpine 3.24.1 + edge matrix, GHCR publish, GitHub Releases, FFmpeg cascade rebuildslinter.yml— super-linter
Callers must pass push_images so images are published on main (reusable workflows see github.event_name as workflow_call).
New library images live in this workspace as static-lib{lcms2,jxl,srt,ssh,zmq,rabbitmq,rtmp,vvenc,xeve,xevd}. Create and push them with:
for lib in lcms2 jxl srt ssh zmq rabbitmq rtmp vvenc xeve xevd; do
gh repo create "ffbuilds/static-lib${lib}" --public \
--source="/Users/barrett/github.com/ffbuilds/static-lib${lib}" \
--remote=origin --push
doneEnable auto-merge so green bump PRs land:
gh repo list ffbuilds --limit 200 --json name -q '.[].name' | while read -r name; do
gh api -X PATCH "repos/ffbuilds/${name}" -f allow_auto_merge=true
doneRequire CI before merge (check name docker / ci-success):
gh repo list ffbuilds --limit 200 --json name -q '.[].name' | while read -r name; do
gh api -X PUT "repos/ffbuilds/${name}/branches/main/protection" \
--input - <<'EOF'
{
"required_status_checks": {
"strict": true,
"contexts": ["docker / ci-success"]
},
"enforce_admins": false,
"required_pull_request_reviews": null,
"restrictions": null
}
EOF
donePublish .github reusable workflows to main before the first FFmpeg 9 image build. New lib images must exist in GHCR before static-ffmpeg-gplv3 can COPY --from them.