Skip to content

Add hostapd hwsim test workflow - #56

Merged
ksperling-apple merged 8 commits into
project-chip:mainfrom
ksperling-apple:hostapd-hwsim-tests
Aug 16, 2026
Merged

Add hostapd hwsim test workflow#56
ksperling-apple merged 8 commits into
project-chip:mainfrom
ksperling-apple:hostapd-hwsim-tests

Conversation

@ksperling-apple

@ksperling-apple ksperling-apple commented Aug 12, 2026

Copy link
Copy Markdown
Contributor
  • Add hostapd-hwsim-runner container. This has all the hostapd build dependencies as well as a qemu-based setup for running the hwsim tests inside a nested VM (due to the need for the mac80211_hwsim kernel module).
  • Add hostapd-hwsim-tests workflow and necessary patches for compiling ubus / ucode support out of an OpenWrt-patched hostapd.
  • Use the new openwrt-version action from the other build jobs. This means the base OpenWrt version now only lives in the matter-openwrt-build Dockerfile rather than separately in each workflow file as well.
  • Add wpad (hostapd) packages to the main CI config.

@ksperling-apple
ksperling-apple force-pushed the hostapd-hwsim-tests branch 12 times, most recently from 7276b14 to b43ed25 Compare August 13, 2026 01:52
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
ksperling-apple marked this pull request as ready for review August 13, 2026 02:55
@ksperling-apple

Copy link
Copy Markdown
Contributor Author

/gemini review

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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-tests workflow to prepare OpenWrt-patched hostapd sources and run hwsim tests under QEMU with selectable TLS backends.
  • Add a hostapd-hwsim-runner container (Dockerfile + qemu-run) to support nested VM execution required for mac80211_hwsim.
  • Introduce a reusable openwrt-version composite 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.

Comment thread overlay/hostapd/patches/o110-tests-force-tls-config.patch Outdated
Comment thread .github/workflows/hostapd-hwsim-tests.yaml
Comment thread .containers/hostapd-hwsim-runner/Dockerfile
@ksperling-apple ksperling-apple added the sdk-maintainer-approved PR marked by `matter-sdk-maintainers` as suitable for MERGE label Aug 13, 2026
@mergify

mergify Bot commented Aug 13, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@ksperling-apple
ksperling-apple merged commit f7d16db into project-chip:main Aug 16, 2026
11 checks passed
@ksperling-apple
ksperling-apple deleted the hostapd-hwsim-tests branch August 16, 2026 23:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review - pending sdk-maintainer-approved PR marked by `matter-sdk-maintainers` as suitable for MERGE

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants