chore(ci): custom self-hosted runner image with Android + Flatpak build deps preinstalled #227
Labels
No labels
area:auth
area:ci
area:db
area:infra
area:native
area:pwa
area:service
epic
feature
foundation
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
james/carol#227
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?
Context
#188 (PR #222) ships the Flatpak release via a tag-driven Forgejo workflow that installs Rust,
webkit2gtk-4.1-dev,flatpak-builder, and the GNOME 48 Flatpak runtime on every run. Same situation on #187 (PR #207) for Android — every release pays the JDK 21 + Android SDK install tax.Baking those deps into a custom self-hosted Forgejo Actions runner image trims ~5–10 min per release per platform and removes a class of "the build tooling drifted upstream" flakes.
Source
Follow-up flagged in #222.
Scope
.forgejo/runner-image/or a separate repo if cleaner) on top of the existingjs-24.04runner base, preinstalled with:cmdline-tools+ the platform / build-tools versions the Tauri / Expo SDK 56 prebuild needs (pin from #207's workflow),gradlecaches if practical.apps/client/src-tauri/rust-toolchain.tomlif present (else stable),webkit2gtk-4.1-dev+ its transitive build deps (libsoup-3.0,libjavascriptcoregtk-4.1-dev, etc.),flatpak,flatpak-builder, and the GNOME Platform 48 SDK runtime + extensions preinstalled withflatpak install --user.git-cliff,cosign,actionlint,gitleaks,jq— anything the existing workflows already install on every run.forge.wynning.tech/james/carol-runner:YYYY-MM-DD) and document indocs/ci.mdhow to roll a new build when underlying deps refresh.release-android.ymlandrelease-flatpak.ymlto use the new image; drop the per-run install steps.js-24.04base updates.Acceptance criteria
release-android.ymlandrelease-flatpak.ymlno longer install JDK / Android SDK / Rust / webkit2gtk / flatpak-builder during the run.docs/ci.mdcovers how to roll a new runner image when deps need refreshing.Out of scope
Composes with
Part of
#176