Skip to content

TASK-050: publish release assets and README download table - #38

Merged
pythoninthegrass merged 1 commit into
mainfrom
task-050
Sep 14, 2026
Merged

pythoninthegrass merged 1 commit into
mainfrom
task-050

Conversation

@pythoninthegrass

Copy link
Copy Markdown
Contributor

Summary

  • Extend extension:build (Linux) to produce a template_release GDExtension too (previously debug-only), and author Linux/Windows Godot export presets from scratch, empirically verified via real --export-release runs.
  • Add export-*/package-*/ship-* task triads (taskfiles/release.yml) producing neo_snake-linux-x86_64.tar.gz, neo_snake-windows-x86_64.zip, and neo_snake-web.zip.
  • Add .github/workflows/release.yml (triggered by release: published and workflow_dispatch), uploading each platform's asset via gh release upload --clobber through thin task ci:release-<platform> wrappers, plus an update-readme job that regenerates README.md's download table and pushes to main.
  • Add tools/update_readme_downloads.py, which regenerates the table between <!-- DOWNLOADS:START/END --> markers from a real release's assets.
  • backlog/decisions/decision-033 documents the new export presets, asset naming, and workflow design; decision-032 gets an addendum confirming the Apple signing secrets are now configured.

Test plan

  • task check green
  • actionlint .github/workflows/release.yml clean
  • Built Linux/Windows/Web release assets locally (Windows via docker/windows/Dockerfile's artifacts stage) and ran gh release upload --clobber for real against a disposable prerelease (v0.0.0-task050-verify, created and deleted in this session) — verifies AC#1 for those three platforms
  • Ran tools/update_readme_downloads.py against that real release: produced a correct table with real download URLs (AC#2), and a second run against the same release reported no change (AC#3)
  • macOS asset upload (via the existing self-hosted runner) and the fully-automated release: published trigger will be exercised for real once this merges and a real production release is published — cannot build a macOS DMG on this Linux dev host

🤖 Generated with Claude Code

Build a real template_release GDExtension on Linux (extension:build now
runs scons twice, matching build-macos/build-windows/build-web), author
Linux and Windows export presets from scratch, and add export/package/ship
task triads producing neo_snake-linux-x86_64.tar.gz,
neo_snake-windows-x86_64.zip, and neo_snake-web.zip.

Add .github/workflows/release.yml (release published + workflow_dispatch)
uploading each platform's asset via gh release upload --clobber, plus
tools/update_readme_downloads.py to regenerate README.md's download table
between DOWNLOADS:START/END markers from a real release's assets.
@pythoninthegrass
pythoninthegrass merged commit 34fff29 into main Sep 14, 2026
3 checks passed
@pythoninthegrass
pythoninthegrass deleted the task-050 branch September 14, 2026 02:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant