Skip to content

ci: test on FreeBSD, NetBSD and OpenBSD without Cirrus - #255

Open
neilpang wants to merge 1 commit into
smol-rs:masterfrom
neilpang:ci/bsd-vmactions
Open

neilpang wants to merge 1 commit into
smol-rs:masterfrom
neilpang:ci/bsd-vmactions

Conversation

@neilpang

@neilpang neilpang commented Aug 2, 2026

Copy link
Copy Markdown

Closes #253

Cirrus CI shut down on 2026-06-01, which removed the BSD coverage. ci.yml
notes "We don't test BSDs, since we already test them in Cirrus", so those
three targets currently have no CI at all.

This runs the same cargo test in FreeBSD, NetBSD and OpenBSD VMs booted
under QEMU/KVM on regular ubuntu-latest runners.

OpenBSD installs rust from packages rather than rustup, for the same reason
the old .cirrus.yml did -- it is a tier 3 Rust target. That does pin it to
whatever the ports tree ships: 1.94.1 today, against 1.97.1 from rustup on
the other two.

Verification

https://github.com/neilpang/async-io/actions/runs/30709401078

target rustc tests time
x86_64-unknown-freebsd 1.97.1 (rustup) 84 passed, 0 failed 3m05s
x86_64-unknown-netbsd 1.97.1 (rustup) 84 passed, 0 failed 4m39s
x86_64-unknown-openbsd 1.94.1 (pkg_add) 83 passed, 0 failed 5m00s

All three green on the first attempt, with RUSTFLAGS=-D warnings.

Two things I deliberately left out; happy to add either:

  • The old .cirrus.yml also tested i686-unknown-freebsd. I skipped the
    32-bit target to keep this reviewable; it needs a rustup target plus
    --target.
  • The comment in ci.yml ("We don't test BSDs, since we already test them in
    Cirrus") is now stale, but I did not touch ci.yml so this PR stays to one
    file.

Cirrus CI shut down on 2026-06-01, which removed the BSD coverage that
ci.yml explicitly defers to it. Run the same cargo test in FreeBSD,
NetBSD and OpenBSD VMs booted under QEMU/KVM on ubuntu-latest runners.

OpenBSD installs rust from packages rather than rustup, for the same
reason the old .cirrus.yml did: it is a tier 3 Rust target.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

CirrusCI will shut down on 2026-06-01

1 participant