Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider re-enabling Cirrus CI for testing on FreeBSD #2550

Open
2 tasks
patmaddox opened this issue Nov 3, 2022 · 0 comments
Open
2 tasks

Consider re-enabling Cirrus CI for testing on FreeBSD #2550

patmaddox opened this issue Nov 3, 2022 · 0 comments
Labels
Feature Request Feature Request

Comments

@patmaddox
Copy link
Contributor

patmaddox commented Nov 3, 2022

Open questions

  • Is it desirable to broadly pursue FreeBSD compatibility? For my purposes, the only component I'm interested in is termios, because Tailscale uses it (see Add tailssh support on FreeBSD tailscale/tailscale#6155).
  • If so, how should we approach it? I propose that we start by simply not building the failing tests on FreeBSD. That would provide a TODO list of components to work on for FreeBSD support.

I would be happy to try an initial pass, using the proposed approach above. I suspect at least a category of the failures are due to Linux-specific unix.* var names. One example of addressing them in a single component is at #2544.

Context

From what I can tell, CI doesn't currently verify FreeBSD.

#2421 says:

Remove cirrus ci: It was only used for verifying freebsd buildability. We are going to use github actions for that instead (#2419)

GitHub actions doesn't officially support FreeBSD as far as I know. The method I'm aware of requires you to run a FreeBSD VM inside of a MacOS instance. That's pretty janky.

Cirrus CI runs directly on FreeBSD machines, so it should probably be re-instated for FreeBSD verification. I am happy to help with configuring it.

In #2544 (review), @rminnich suggested it would be worthwhile to bring back Cirrus CI for FreeBSD verification.

As an initial investigation, I tried running the u-root test suite on FreeBSD 13.1. Here are the failures:

--- FAIL: TestPackageRewriteFile (0.19s)
FAIL
FAIL	github.com/u-root/u-root/pkg/bb	0.202s
FAIL	github.com/u-root/u-root/pkg/boot [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/bls [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/bootcmd [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/boottest [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/esxi [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/fit [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/grub [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/jsonboot [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/localboot [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/menu [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/multiboot [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/netboot [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/netboot/ipxe [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/netboot/pxe [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/netboot/simple [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/purgatory [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/syslinux [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/systembooter [build failed]
FAIL	github.com/u-root/u-root/pkg/boot/uefi [build failed]
FAIL	github.com/u-root/u-root/pkg/checker [build failed]
FAIL	github.com/u-root/u-root/pkg/cmos [build failed]
FAIL	github.com/u-root/u-root/pkg/crypto [build failed]
FAIL	github.com/u-root/u-root/pkg/dhclient [build failed]
FAIL	github.com/u-root/u-root/pkg/dt [build failed]
FAIL	github.com/u-root/u-root/pkg/efivarfs [build failed]
--- FAIL: TestPassFD (0.00s)
--- FAIL: TestBadNonce (0.00s)
--- FAIL: TestBadSubsetNonce (0.00s)
--- FAIL: TestBadEmptyNonce (0.00s)
--- FAIL: TestTimeoutDoesntFire (0.00s)
--- FAIL: TestTimeoutFires (0.00s)
--- FAIL: TestWaitTimeout (0.00s)
--- FAIL: TestMultiServe (0.00s)
FAIL
FAIL	github.com/u-root/u-root/pkg/fdsrv	0.010s
FAIL	github.com/u-root/u-root/pkg/flash [build failed]
FAIL	github.com/u-root/u-root/pkg/flash/sfdp [build failed]
FAIL	github.com/u-root/u-root/pkg/ipmi [build failed]
FAIL	github.com/u-root/u-root/pkg/ipmi/ocp [build failed]
--- FAIL: TestLdd (0.00s)
--- FAIL: TestLddList (0.00s)
FAIL
FAIL	github.com/u-root/u-root/pkg/ldd	0.011s
FAIL	github.com/u-root/u-root/pkg/memio [build failed]
FAIL	github.com/u-root/u-root/pkg/mount [build failed]
FAIL	github.com/u-root/u-root/pkg/mount/block [build failed]
FAIL	github.com/u-root/u-root/pkg/mount/mtd [build failed]
FAIL	github.com/u-root/u-root/pkg/pci [build failed]
FAIL	github.com/u-root/u-root/pkg/pty [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch/eventlog [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch/launcher [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch/measurement [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch/policy [build failed]
FAIL	github.com/u-root/u-root/pkg/securelaunch/tpm [build failed]
FAIL	github.com/u-root/u-root/pkg/smbios [build failed]
FAIL	github.com/u-root/u-root/pkg/strace [build failed]
FAIL	github.com/u-root/u-root/pkg/strace/internal/abi [build failed]
FAIL	github.com/u-root/u-root/pkg/termios [build failed]
FAIL	github.com/u-root/u-root/pkg/tss [build failed]
FAIL	github.com/u-root/u-root/pkg/txtlog [build failed]
FAIL	github.com/u-root/u-root/pkg/uefivars/boot [build failed]
--- FAIL: TestCreateInitramfs (3.61s)
    --- FAIL: TestCreateInitramfs/Test_0_[BB_archive_with_ls_and_init] (1.39s)
    --- FAIL: TestCreateInitramfs/Test_5_[multi-mode_archive] (1.68s)
FAIL
FAIL	github.com/u-root/u-root/pkg/uroot	3.643s
FAIL	github.com/u-root/u-root/pkg/watchdog [build failed]
FAIL	github.com/u-root/u-root/pkg/watchdogd [build failed]
@patmaddox patmaddox added the Feature Request Feature Request label Nov 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request Feature Request
Projects
None yet
Development

No branches or pull requests

1 participant