Skip to content

Speed up release workflow with native arm64 runners#369

Merged
tvancott42 merged 1 commit intomainfrom
feature/release-speed
Feb 27, 2026
Merged

Speed up release workflow with native arm64 runners#369
tvancott42 merged 1 commit intomainfrom
feature/release-speed

Conversation

@tvancott42
Copy link
Collaborator

Summary

  • Native arm64 builds - Replaces QEMU emulation with GitHub's free ubuntu-24.04-arm runners. Each platform builds natively in parallel, then a merge job creates the multi-arch manifest.
  • Remove redundant test job - CI already runs build+test on every push to main before releases are tagged.
  • Speedtest image unchanged - Trivial build (copy files into nginx:alpine), still uses QEMU since it takes ~22 sec anyway.

Expected: ~31 min → ~10-12 min.

Test plan

  • Merge to main, tag next release, verify both platform builds complete
  • docker buildx imagetools inspect ghcr.io/ozark-connect/network-optimizer:<version> shows both amd64 and arm64
  • Speedtest image also published correctly
  • docker compose pull && docker compose up -d works on NAS (arm64) and local (amd64)

Replace QEMU-emulated multi-platform Docker build with parallel native
builds using GitHub's free arm64 runners (ubuntu-24.04-arm). Each
platform builds natively and pushes by digest, then a merge job creates
the multi-arch manifest.

Also removes redundant test job since CI already runs build+test on
every push to main before releases are tagged.

Expected improvement: ~31 min → ~10-12 min.
@tvancott42 tvancott42 merged commit 85fc358 into main Feb 27, 2026
1 check passed
@tvancott42 tvancott42 deleted the feature/release-speed branch February 27, 2026 13:02
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