Commit Graph
9 Commits
Author SHA1 Message Date
haylan ea7f49fe9f docs(research): evaluate debian-slim vs alpine for base image (#8)
Answers wayfinder ticket #8: does a glibc-based slim distro
(debian:bookworm-slim / trixie-slim) get most of Alpine's size win
without the musl risk #4-#6 found?

Verdict: not worth it. Debian bookworm-slim (26.92 MB compressed) is
within ~5% of ubuntu:noble (28.37 MB) per Docker Hub's official image
listings - nowhere near Alpine's musl size class. Debian does clear
every capability gap Alpine hit (posix-threads mingw-w64 in stable,
X11/audio dev headers, official Blender tarball runs unmodified since
it's glibc), but the size case for leaving Ubuntu was Alpine's alone.

Related to #4, #5, #6
2026-08-06 22:44:34 +02:00
haylanandClaude-Bot 20d3660485 fix(ci): restore executable bit on directly-invoked scripts
scripts/resolve-blender-url.sh, resolve-godot-version.sh, and
test-lib.sh were committed as mode 644 (Windows checkouts don't
preserve the git exec bit, and it was never set). publish.yml invokes
the first two as ./scripts/resolve-*.sh, which needs it — the runner
failed with "Permission denied". lib.sh stays 644, it's only sourced.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 22:16:06 +02:00
haylan 2071119c0d Merge pull request 'fix(publish,docker): fix Blender runtime, CI disk/retry, local build docs' (#1) from feat/auto-godot-blender-tracking into main 2026-08-06 20:04:05 +00:00
haylanandClaude-Bot 5564948d0a docs: document building the image locally for testing
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 22:03:10 +02:00
haylanandClaude-Bot 5ef5fce4a4 fix(publish): free runner disk before build and retry docker push
Auto-tracking the newest Godot/Blender means most nightly runs now
build genuinely new multi-GB layers instead of hitting cache, and
nothing ever pruned old ones — the runner's disk fills up over
successive runs until a push fails. Prune before building, and retry
docker push a few times to ride out transient registry 500s.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 22:03:06 +02:00
haylanandClaude-Bot 1e283fd77f fix(docker): install Blender's missing runtime libs
blender --version failed with "libxkbcommon.so.0: cannot open shared
object file" — libxkbcommon0, libsm6, and libice6 aren't pulled in by
anything else in the image. Caught via a local docker build (see
README), which the prior push-only workflow never exercised.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 22:02:59 +02:00
haylanandClaude-Bot e1f3cba486 feat: auto-track newest Godot and Blender in publish workflow
Replace the fixed 4.7.1 Dockerfile/workflow pin with:
- a nightly schedule that resolves the newest stable Godot (4.0+) and
  newest stable Blender, and builds+pushes <version> plus a floating
  latest tag only when the Godot version actually changed
- a workflow_dispatch free-text version input to (re)build any specific
  Godot version on demand, always with newest-at-build-time Blender,
  overwriting that tag without touching latest
- scripts/resolve-godot-version.sh and scripts/resolve-blender-url.sh,
  with shared parsing logic in scripts/lib.sh and an offline smoke test
  in scripts/test-lib.sh
- Blender is now fetched directly from download.blender.org instead of
  apt (Ubuntu noble's apt package is stuck on 4.0.2)
- drop the push-to-main trigger; schedule + workflow_dispatch only

Scope is Godot 4.0+ only — .blend import is a Godot 4 feature, so 3.x
builds have no use for the Blender toolchain this image adds.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 20:55:21 +02:00
haylanandClaude-Bot 1d15d6950f fix(publish): explicitly link pushed image to this repository
Gitea packages belong to the owner, not a repo, by default — pushing
alone doesn't surface the image under this repo's Packages tab, and
the org.opencontainers.image.source label some workflows set for this
doesn't auto-link on Gitea (closed feature request, never
implemented). Call the link API explicitly after push instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 20:20:13 +02:00
haylanandClaude-Bot 9d1b3e8a04 feat: add custom godot-ci export-toolchain image
Publish godot-ci image / publish (push) Failing after 7s
Bakes export-template.yml's apt-get toolchain into an image extending
barichello/godot-ci:4.7.1, plus a publish workflow to push it to this
repo's Gitea package registry.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 19:50:34 +02:00