ci: run unit and integration tests on freebsd #4128
Draft
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.
Follow up on ipdxco/custom-github-runners#24
This PR adds FreeBSD builds support (unit + integration) using https://github.com/cross-platform-actions/action (the action runs FreeBSD in a VM; using macos provides faster builds).
Providing native FreeBSD self-hosted runners would require using unofficial runner binary (https://github.com/ChristopherHX/github-act-runner). Looking through the description of the repo, that can sometimes result in irrecoverable breakage of GitHub Actions in a repo where such runner is used which we'd definitely want to avoid. That's why I decided using VM action is safer. We could still look into running VMs on self-hosted machines to speed up the builds though.
Issues I noticed when using the action:
Testing:
Unit test failures:
[FAIL] HTTP 0.9 integration tests [It] allows setting of headers
[FAIL] HTTP 0.9 integration tests [It] performs request
Integration test failures:
HTTP tests [It] *
(self tests, using QUIC v1)HTTP tests [It] *
(self tests, using QUIC v2)