ci(build): add FreeBSD 15.1 & NetBSD 11.0 legs; bump OpenBSD to 7.9 - #15
Merged
Conversation
Parameterize the vmactions `release` per matrix entry so one OS can build
multiple versions, then:
- FreeBSD: keep 14.3, add 15.1 -> cloudflared-freebsd15-amd64 (OPNsense 15)
- NetBSD: keep 10.1, add 11.0 -> cloudflared-netbsd11-amd64
- OpenBSD: bump 7.8 -> 7.9 (asset name cloudflared-openbsd7-amd64 unchanged)
Also set `fail-fast: false` so a new/older leg failing cannot cancel the
proven ones mid-release.
Verified before adding: vmactions ships conf/{15.1,11.0,7.9}.conf, and the
package sets exist — NetBSD 11.0 pkgsrc has ruby34 + go-1.26.5, OpenBSD 7.9
has ruby-3.4 + go-1.26.
…uby 4.0) OpenBSD 7.9 makes ruby 4.0 the default; `pkg_add ruby-34` fuzzy-resolved to ruby-4.0 (gem40, not gem34), so `gem34 install fpm` failed with exit 127. fpm is never used by the cloudflared build target (only `gmake cloudflared` runs), so remove the ruby/gem/libffi install entirely — eliminating the ruby-version-drift failure mode rather than chasing version pins.
This was referenced Aug 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Expands the native BSD build matrix from 3 legs to 5:
The
release:value is now parameterized per matrix entry (${{ matrix.release }}) so a single OS can build multiple versions, andfail-fast: falseensures one leg failing can't cancel the proven ones.Why
OPNsense's current release is built on FreeBSD 15.1, so a matching
freebsd15binary keeps in-sync whilefreebsd14continues to support older installs as long as possible. (These are staticCGO_ENABLED=0Go binaries, so the 14 build likely already runs on 15 — this is explicit version-sync + future-proofing.)Verification (before adding — to avoid another failed release)
conf/15.1.conf,conf/11.0.conf,conf/7.9.confall exist in the respectivevmactions/*-vmactions (the authoritative source; the-builderrelease assets lag and are not it).x86_64/11.0/Allhas 27,462 packages includingruby34-3.4.9nb2andgo-1.26.5, plus every other dep the prepare step installs.ruby-3.4.9p1andgo-1.26.2.Test plan
build_unix.yamlfor a tag and confirm all 5 legs go green and upload their assets (used here to re-release 2026.8.0 with the freebsd15/netbsd11 binaries).