ci(release): the build jobs run on the Forgejo runner #116
No reviewers
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot!116
Loading…
Reference in a new issue
No description provided.
Delete branch "HumanBean/Longshot:ci/runner-build-fixes"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The first nightly release on the Forgejo runner failed in its build jobs, so no nightly was published: the Windows back end looked for the Vulkan headers on our own forge, the AppImage job had no Node for its actions, and dav1d's download hit one refused connection.
What changed
scripts/fetch_commit.sh(a repository URL, a pinned commit and a folder) replacesactions/checkoutwithrepository:(on Forgejo that names a repository of this instance) inbuild-windows.yml,vulkan-dlss.ymlandci.yml: the same pinned commits, fetched from GitHub, with no token sent. Tested in act-24.04 on the runner's dind.build-linux.ymlinstalls Node.js v24.22.3 (pinned by SHA-256, onlybin/node) in theubuntu:22.04container before the first action. The exit 127 was the checkout step itself (exec: "node": executable file not found); "Package installs without fsync" passed in the log. Tested in ubuntu:22.04 on the dind: checkout's dist runs.scripts/windows/dav1d.shadds--retry-all-errors, then falls back to VideoLAN's GitHub mirror of the tag (it unpacks to the same pinned tree,01ecdd01…).scripts/linux/deps.sh's curl retries refused connections too.build-linux.yml,build-windows.yml) and download (release.yml) is tried once more when it fails. Forgejo signs artifact links with ROOT_URL, which goes through Cloudflare, and the action does not resend a block that fails.scripts/release.pynotes()gives git-cliff no range when there is no tag before it and no first commit. This is the same change as LongshotLauncher's PR, and both copies of the file stay byte-identical,tests/test_release.pytoo.docs/forgejo-runners.md.Flags and settings
None.
Measurements
main:
94bbc205(2026-11-13, the failed nightly)this PR: ci/runner-build-fixes @
5aa09e05(rebased on main3cbf12e8)94bbc2055aa09e05(these runs were at 9f31a214, the same changes before the rebase onto3cbf12e8)tests/run_all.py: 493 passed, 2 failed (test_bake_portability, test_builder_log_read_only, which also fail on main), the same on main and on this branch, in two interleaved runs each.Testing
Tested: the new steps in the runner's own images (see above), and
tests/run_all.py.Not tested: a full release run. Main's nightly will verify it after the merge.
Needs other testers: None.
Screenshots
Nothing on screen
Risk and rollback
CI only. Reverting the commit is enough.
Reviewer notes
This PR's runs on the runner used temporary
pull_requesttriggers onbuild-linux.ymlandbuild-windows.yml. They have been removed.Issues
None.
Checklist
For everyone
type(scope): description).main.python -I -B tests/run_all.pyrun and passing (any failure that also fails onmainis named above).third_party/untouched (a new folder with aPROVENANCE.mdinstead).9f31a214475aa09e050fWIP: ci(release): the build jobs run on the Forgejo runnerto ci(release): the build jobs run on the Forgejo runner