DPDK patches and discussions
 help / color / mirror / Atom feed
* [RFC PATCH 0/7] dts: revamp framework
@ 2025-02-03 15:16 Luca Vizzarro
  2025-02-03 15:16 ` [RFC PATCH 1/7] dts: add port topology configuration Luca Vizzarro
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Luca Vizzarro @ 2025-02-03 15:16 UTC (permalink / raw)
  To: dev; +Cc: Luca Vizzarro, Patrick Robb, Paul Szczepanek

Hi there,

This series enables the topology configuration and implements it in the
framework. Moreover, it performs quite a few refactors and a change on
how the test suites operate through the use of a Context. Finally, the
runtime internals are now isolated under the new TestRun and are further
reworked into a finite state machine for ease of handling.

Mind that unfortunately these commits may be breaking in intermediate
steps. Due to the amount of work done in one go, it was rather difficult
to have individually working commits.

I am currently requesting for comments on how we can improve this
further. In the meantime, I am going to remove node discrimination (TG
vs SUT) in the nodes configuration and allow the test run to define the
TG and SUT configurations.

I understand this is a lot of changes so please bear with me, I may have
missed some documentation changes, or even added proper documentation in
some instances. Please do point everything out.

Best,
Luca

Luca Vizzarro (7):
  dts: add port topology configuration
  dts: isolate test specification to config
  dts: revamp Topology model
  dts: improve Port model
  dts: add runtime status
  dts: add global runtime context
  dts: revamp runtime internals

 doc/api/dts/framework.context.rst             |   8 +
 doc/api/dts/framework.status.rst              |   8 +
 doc/api/dts/framework.test_run.rst            |   8 +
 doc/api/dts/index.rst                         |   3 +
 doc/guides/conf.py                            |   3 +-
 dts/framework/config/__init__.py              | 138 +++--
 dts/framework/config/node.py                  |  25 +-
 dts/framework/config/test_run.py              | 144 +++++-
 dts/framework/context.py                      | 107 ++++
 dts/framework/exception.py                    |  33 +-
 dts/framework/logger.py                       |  36 +-
 dts/framework/remote_session/dpdk_shell.py    |  53 +-
 .../single_active_interactive_shell.py        |  14 +-
 dts/framework/remote_session/testpmd_shell.py |  27 +-
 dts/framework/runner.py                       | 485 +-----------------
 dts/framework/status.py                       |  64 +++
 dts/framework/test_result.py                  | 136 +----
 dts/framework/test_run.py                     | 443 ++++++++++++++++
 dts/framework/test_suite.py                   |  73 ++-
 dts/framework/testbed_model/capability.py     |  42 +-
 dts/framework/testbed_model/linux_session.py  |  47 +-
 dts/framework/testbed_model/node.py           |  29 +-
 dts/framework/testbed_model/os_session.py     |  16 +-
 dts/framework/testbed_model/port.py           |  97 ++--
 dts/framework/testbed_model/sut_node.py       |  50 +-
 dts/framework/testbed_model/tg_node.py        |  30 +-
 dts/framework/testbed_model/topology.py       | 165 +++---
 dts/framework/utils.py                        |   8 +-
 dts/nodes.example.yaml                        |  24 +-
 dts/test_runs.example.yaml                    |   3 +
 dts/tests/TestSuite_blocklist.py              |   6 +-
 dts/tests/TestSuite_checksum_offload.py       |  14 +-
 dts/tests/TestSuite_dual_vlan.py              |   6 +-
 dts/tests/TestSuite_dynamic_config.py         |   8 +-
 dts/tests/TestSuite_dynamic_queue_conf.py     |   1 -
 dts/tests/TestSuite_hello_world.py            |   2 +-
 dts/tests/TestSuite_l2fwd.py                  |   9 +-
 dts/tests/TestSuite_mac_filter.py             |  10 +-
 dts/tests/TestSuite_mtu.py                    |  17 +-
 dts/tests/TestSuite_pmd_buffer_scatter.py     |   9 +-
 ...stSuite_port_restart_config_persistency.py |   8 +-
 dts/tests/TestSuite_promisc_support.py        |   8 +-
 dts/tests/TestSuite_smoke_tests.py            |   3 +-
 dts/tests/TestSuite_softnic.py                |   4 +-
 dts/tests/TestSuite_uni_pkt.py                |  14 +-
 dts/tests/TestSuite_vlan.py                   |   8 +-
 46 files changed, 1287 insertions(+), 1159 deletions(-)
 create mode 100644 doc/api/dts/framework.context.rst
 create mode 100644 doc/api/dts/framework.status.rst
 create mode 100644 doc/api/dts/framework.test_run.rst
 create mode 100644 dts/framework/context.py
 create mode 100644 dts/framework/status.py
 create mode 100644 dts/framework/test_run.py

-- 
2.43.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-02-04 21:08 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-02-03 15:16 [RFC PATCH 0/7] dts: revamp framework Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 1/7] dts: add port topology configuration Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 2/7] dts: isolate test specification to config Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 3/7] dts: revamp Topology model Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 4/7] dts: improve Port model Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 5/7] dts: add runtime status Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 6/7] dts: add global runtime context Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 7/7] dts: revamp runtime internals Luca Vizzarro
2025-02-04 21:08 ` [RFC PATCH 0/7] dts: revamp framework Dean Marx

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).