Skip to content

ci: add platform build coverage#358

Draft
abhinavagarwal07 wants to merge 1 commit into
libfuse:masterfrom
abhinavagarwal07:ci-platform-coverage
Draft

ci: add platform build coverage#358
abhinavagarwal07 wants to merge 1 commit into
libfuse:masterfrom
abhinavagarwal07:ci-platform-coverage

Conversation

@abhinavagarwal07
Copy link
Copy Markdown
Collaborator

New build-platforms.yml with compile-only jobs for portability and build-hardening checks:

  • ubuntu-22.04 and ubuntu-24.04-arm via matrix with explicit runner labels
  • ubuntu-24.04-release (--buildtype=release), ubuntu-24.04-debug (--buildtype=debug), and ubuntu-24.04-hardened (_FORTIFY_SOURCE=3, -fstack-protector-strong)
  • Alpine/musl via Docker container (alpine:3.21)
  • FreeBSD 14 via vmactions/freebsd-vm

All build-only — no runtime tests (the test harness is not yet portable to these platforms). Meson build logs uploaded on failure for all platforms. All actions SHA-pinned to Node 24-capable versions, host runners pinned to ubuntu-24.04.

Compile-only platform checks catch portability issues (musl libc differences, FreeBSD header availability, ARM alignment) and hardening regressions (release-mode optimizations exposing UB, _FORTIFY_SOURCE=3 catching buffer overflows at higher optimization levels) without the cost of full test infrastructure on each platform. Runtime tests for these platforms can be added incrementally as the test harness gains cross-platform mount/unmount abstractions.

- New build-platforms.yml with build-only jobs for portability checking
- Linux matrix: ubuntu-22.04, ubuntu-24.04-arm, plus release/debug/hardened build variants
- Hardened build uses _FORTIFY_SOURCE=3 and -fstack-protector-strong
- Alpine/musl via Docker container (alpine:3.21)
- FreeBSD 14 via vmactions/freebsd-vm
- All compile-only, no runtime tests (test harness not yet portable to these platforms)
- Upload meson build logs on failure for all platforms including FreeBSD
- All actions pinned to Node 24-capable SHAs, host runners pinned to ubuntu-24.04
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