Add hostapd hwsim test workflow - #56
Merged
ksperling-apple merged 8 commits intoAug 16, 2026
Merged
Conversation
ksperling-apple
force-pushed
the
hostapd-hwsim-tests
branch
12 times, most recently
from
August 13, 2026 01:52
7276b14 to
b43ed25
Compare
For now this just runs the certificate pinning tests
This means the base OpenWrt version now only lives in the matter-openwrt-build Dockerfile rather than separately in each workflow file as well.
ksperling-apple
force-pushed
the
hostapd-hwsim-tests
branch
from
August 13, 2026 02:24
b43ed25 to
4408e19
Compare
ksperling-apple
marked this pull request as ready for review
August 13, 2026 02:55
Contributor
Author
|
/gemini review |
There was a problem hiding this comment.
Pull request overview
Adds automated hostapd hwsim testing to CI by introducing a dedicated runner container and a new workflow that prepares an OpenWrt-patched hostapd source tree and executes hwsim tests inside a nested QEMU VM. It also centralizes OpenWrt version selection into a composite action and expands CI package builds to include wpad variants.
Changes:
- Add a
hostapd-hwsim-testsworkflow to prepare OpenWrt-patched hostapd sources and run hwsim tests under QEMU with selectable TLS backends. - Add a
hostapd-hwsim-runnercontainer (Dockerfile +qemu-run) to support nested VM execution required formac80211_hwsim. - Introduce a reusable
openwrt-versioncomposite action and use it from existing container/package build workflows; add wpad variants to CI config.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| overlay/hostapd/patches/o110-tests-force-tls-config.patch | Adjusts hwsim build/test scripts to allow forcing TLS backend configs and disables DPP under wolfSSL. |
| overlay/hostapd/patches/o002-compile-guards.patch | Adds compile guards to allow building hostapd/wpa_supplicant without ubus/ucode dependencies. |
| .github/workflows/hostapd-hwsim-tests.yaml | New workflow to build patched hostapd sources and run hwsim tests in QEMU. |
| .github/workflows/build-packages.yaml | Switches to centralized OpenWrt version selection and adds workflow_dispatch override input. |
| .github/workflows/build-matter-openwrt-build.yaml | Replaces inline version-detection with the new composite openwrt-version action. |
| .github/workflows/build-hostapd-hwsim-runner.yaml | Adds workflow to build/push the new hwsim runner container image. |
| .github/actions/openwrt-version/action.yaml | New composite action to derive OPENWRT_VERSION from an override or the Dockerfile. |
| .containers/hostapd-hwsim-runner/qemu-run | New helper script to run commands inside a QEMU VM with virtiofs. |
| .containers/hostapd-hwsim-runner/Dockerfile | New container image that installs build deps, QEMU tooling, kernel/modules, and wolfSSL built from source. |
| .config.ci | Adds wpad (hostapd) package variants to the main CI build set. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Tick the box to add this pull request to the merge queue (same as
|
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.
Uh oh!
There was an error while loading. Please reload this page.