feat: add option to extract downloaded binaries directly in versions folder - #190
Open
pablopenna wants to merge 3 commits into
Open
feat: add option to extract downloaded binaries directly in versions folder#190pablopenna wants to merge 3 commits into
pablopenna wants to merge 3 commits into
Conversation
…folder. Also adapted the local editor deletion flow to allow only deleting the editor binary instead of the parent folder (current behaviour).
The workflow delegated the build to firebelley/godot-export and was broken: it installed `wine64`, a package name Ubuntu 24.04 dropped, so `which wine64` resolved to nothing on ubuntu-latest. Wine is only needed so Godot can run rcedit to stamp the icon into the Windows .exe (the preset sets application/modify_resources=true). Godot logs a missing rcedit as an *info* message rather than an error, so the broken setup exported "successfully" and shipped an iconless binary on a green build. Replace the action with plain shell steps that download Godot and its export templates, import, export both presets, and create-or-update a draft release via the preinstalled gh CLI. Notable details: - Editor settings must be written to editor_settings-4.5.tres; Godot 4.x keys them by major.minor and silently ignores editor_settings-4.tres, which is what most CI examples write. - The export template directory is derived from templates/version.txt rather than hardcoded, keeping editor and templates in lockstep (4.5.2 looks for "4.5.2.stable", not "4.5.stable"). - Fail loudly when no wine binary is found, and verify export outputs are non-empty, so neither failure mode can ship silently. - Pin ubuntu-24.04, narrow permissions to contents:write, and add workflow_dispatch for building without cutting a tag. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The export step asserted Godots.console.exe exists, and the packaging step zipped it. The Windows preset sets debug/export_console_wrapper=1, which is the "Debug Only" enum value, so --export-release produces the GUI exe alone and the assertion failed on an otherwise clean build. Drop the file from both steps and record why it is absent, so shipping it stays a deliberate preset change (value 2) rather than something re-added to CI on the assumption Godot emits it. Co-Authored-By: Claude Opus 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.
Add option to extract downloaded binaries directly in versions folder. Off by default to keep existing behaviour.
For example, if this option is checked and we download Godot_v4.3.1 it will be downloaded and extracted to
/apps/godot/godot_4.3.1.bininstead of/apps/godot/Godot_v4.3.1/godot_4.3.1.bin(as of today).Also adapted the local editor deletion flow to allow only deleting the editor binary instead of the parent folder (current behaviour).