Skip to content

Setting up a runner for a Supported NIC driver

Jakub K edited this page May 15, 2024 · 2 revisions

Starting with Linux v6.12 all NIC drivers will be required to run an instance of the netdev CI (announcement). This page contains info about how to set up a runner, please open a discussion or reach out on the mailing list if anything is unclear.

Netdev CI system primer

Netdev CI generates branches to test (and a JSON manifest of all branches) and expects the runner (i.e. the remote end) to output results in JSON format somewhere where the CI can fetch them from over HTTP. One of the simplest ways to publish the results is to upload them to GitHub Storage (this is what TDC runners do).

See How the CI system works for more details and JSON schemas.

TODO

  • currently we only have 1 "stream" of branches - cut every 3h, for drivers we'll likely need to create a less frequent stream; please test using the "3h stream" for now

Driver tests

Drivers are expected to be tested with the drivers/net and drivers/net/hw selftest targets.

See Running driver tests for more details on how to compile, deploy and run the tests.

Executors

NIPA currently has no code for running on real machines, netdev maintainers themselves only run the tests in virtual machines. This is an area where we expect contributions from driver maintainers, or for drivers maintainers to do their own thing.

UI

The driver tests will feed into existing UIs but we will also create a special UI to highlight the supported drivers.

TODO

  • the UI should be pretty simple to do, but we need the first driver to start reporting..