Export build CI job + Godot version pinning #3
Labels
No labels
blocked:needs-attention
blocked:needs-decision
blocked:needs-decompose
blocked:needs-design
blocked:needs-triage
blocked:unclassified
bug
documentation
enhancement
gsd-spec
in-progress
needs-decompose
priority:high
priority:low
priority:medium
quickfix
test
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/veilwalkers#3
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
export_presets.cfgships skeleton presets for Windows Desktop, Linux/X11, and Android (arm64), but CI never exercises them — nothing catches a broken preset until a human tries to export by hand. Also, the project targets Godot 4.3 while dev hosts may run newer editors (a 4.7 shadowing bug already bit once:VirtualJoysticknative-class collision, fixed inc16562f).Landable scope:
godot --headless --export-release) and archives the artifactLanded in commit
d63172e(ci: add headless Linux/X11 release export job + pin Godot 4.3).What landed:
export-linuxjob in.forgejo/workflows/ci.ymlthat downloads the official Godot 4.3 stable Linux binary + matching export templates fromgodotengine/godot-builds, installs the X11/GL runtime libs the produced binary links against, runsgodot --headless --export-release "Linux/X11"headlessly, smoke-tests the resulting binary's--version, and uploads it as theveilwalkers-linux-x86_64workflow artifact (14-day retention). Gated on push tomainonly (PR exports produce artifacts no one can fetch).Godot 4.3+to exactGodot 4.3, with a new Forward-compat policy section documenting the 4.3 pin and theVirtualJoysticknative-class shadowing incident fromc16562fthat motivates it.Why the explicit 4.3 download: the
checkjob still uses whatever Godot the self-hosted runner ships with — that's fine for import/parse/tests because those catch shadowing at parse time. The export job downloads a known-good 4.3 explicitly so the export path stays reproducible regardless of runner drift, and matches whatproject.godotconfig/features=PackedStringArray("4.3", ...)declares.Next push to
mainshould produce the artifact under Actions →CI→export-linux.