DPDK patches and discussions
 help / color / mirror / Atom feed
From: Luca Vizzarro <luca.vizzarro@arm.com>
To: dev@dpdk.org
Cc: Nicholas Pratte <npratte@iol.unh.edu>,
	Dean Marx <dmarx@iol.unh.edu>,
	Luca Vizzarro <luca.vizzarro@arm.com>,
	Patrick Robb <probb@iol.unh.edu>,
	Paul Szczepanek <paul.szczepanek@arm.com>
Subject: [PATCH v2 0/7] dts: revamp framework
Date: Wed, 12 Feb 2025 16:45:53 +0000	[thread overview]
Message-ID: <20250212164600.23759-1-luca.vizzarro@arm.com> (raw)
In-Reply-To: <20250203151613.2436570-1-luca.vizzarro@arm.com>

Hi there,

sending some more final code, hence dropping the RFC.

v2:
- applied suggested changes to the port topology config
- re-implemented FSM from a generator function to a more traditional
  approach where each state is actually is self-contained in its own
  class.
- dropped the status enums (as a consequence of the above)
- fixed some docstrings

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 global runtime context
  dts: revamp runtime internals
  dts: remove node distinction

 doc/api/dts/framework.context.rst             |   8 +
 doc/api/dts/framework.remote_session.dpdk.rst |   8 +
 doc/api/dts/framework.remote_session.rst      |   1 +
 doc/api/dts/framework.test_run.rst            |   8 +
 doc/api/dts/index.rst                         |   2 +
 doc/guides/conf.py                            |   3 +-
 dts/framework/config/__init__.py              | 138 ++--
 dts/framework/config/node.py                  |  96 +--
 dts/framework/config/test_run.py              | 214 +++++-
 dts/framework/context.py                      | 120 ++++
 dts/framework/exception.py                    |  33 +-
 dts/framework/logger.py                       |  26 +-
 .../sut_node.py => remote_session/dpdk.py}    | 462 ++++++-------
 dts/framework/remote_session/dpdk_shell.py    |  59 +-
 .../single_active_interactive_shell.py        |  12 +-
 dts/framework/remote_session/testpmd_shell.py |  27 +-
 dts/framework/runner.py                       | 547 +--------------
 dts/framework/test_result.py                  | 138 +---
 dts/framework/test_run.py                     | 641 ++++++++++++++++++
 dts/framework/test_suite.py                   |  80 ++-
 dts/framework/testbed_model/capability.py     |  70 +-
 dts/framework/testbed_model/linux_session.py  |  47 +-
 dts/framework/testbed_model/node.py           | 100 +--
 dts/framework/testbed_model/os_session.py     |  16 +-
 dts/framework/testbed_model/port.py           |  97 ++-
 dts/framework/testbed_model/tg_node.py        | 105 ---
 dts/framework/testbed_model/topology.py       | 165 ++---
 .../traffic_generator/__init__.py             |   8 +-
 .../testbed_model/traffic_generator/scapy.py  |  12 +-
 .../traffic_generator/traffic_generator.py    |   9 +-
 dts/framework/utils.py                        |   8 +-
 dts/nodes.example.yaml                        |  24 +-
 dts/test_runs.example.yaml                    |   4 +
 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            |   9 +-
 dts/tests/TestSuite_softnic.py                |   6 +-
 dts/tests/TestSuite_uni_pkt.py                |  14 +-
 dts/tests/TestSuite_vlan.py                   |   8 +-
 49 files changed, 1726 insertions(+), 1697 deletions(-)
 create mode 100644 doc/api/dts/framework.context.rst
 create mode 100644 doc/api/dts/framework.remote_session.dpdk.rst
 create mode 100644 doc/api/dts/framework.test_run.rst
 create mode 100644 dts/framework/context.py
 rename dts/framework/{testbed_model/sut_node.py => remote_session/dpdk.py} (59%)
 create mode 100644 dts/framework/test_run.py
 delete mode 100644 dts/framework/testbed_model/tg_node.py

-- 
2.43.0


  parent reply	other threads:[~2025-02-12 16:46 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-03 15:16 [RFC PATCH " Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 1/7] dts: add port topology configuration Luca Vizzarro
2025-02-07 18:25   ` Nicholas Pratte
2025-02-12 16:47     ` Luca Vizzarro
2025-02-11 18:00   ` Dean Marx
2025-02-12 16:47     ` Luca Vizzarro
2025-02-03 15:16 ` [RFC PATCH 2/7] dts: isolate test specification to config Luca Vizzarro
2025-02-10 19:09   ` Nicholas Pratte
2025-02-11 18:11   ` Dean Marx
2025-02-03 15:16 ` [RFC PATCH 3/7] dts: revamp Topology model Luca Vizzarro
2025-02-10 19:42   ` Nicholas Pratte
2025-02-11 18:18   ` Dean Marx
2025-02-03 15:16 ` [RFC PATCH 4/7] dts: improve Port model Luca Vizzarro
2025-02-11 18:56   ` Dean Marx
2025-02-03 15:16 ` [RFC PATCH 5/7] dts: add runtime status Luca Vizzarro
2025-02-11 19:45   ` Dean Marx
2025-02-12 18:50   ` Nicholas Pratte
2025-02-03 15:16 ` [RFC PATCH 6/7] dts: add global runtime context Luca Vizzarro
2025-02-11 20:26   ` Dean Marx
2025-02-03 15:16 ` [RFC PATCH 7/7] dts: revamp runtime internals Luca Vizzarro
2025-02-11 20:50   ` Dean Marx
2025-02-04 21:08 ` [RFC PATCH 0/7] dts: revamp framework Dean Marx
2025-02-12 16:52   ` Luca Vizzarro
2025-02-12 16:45 ` Luca Vizzarro [this message]
2025-02-12 16:45   ` [PATCH v2 1/7] dts: add port topology configuration Luca Vizzarro
2025-02-12 16:45   ` [PATCH v2 2/7] dts: isolate test specification to config Luca Vizzarro
2025-02-12 16:45   ` [PATCH v2 3/7] dts: revamp Topology model Luca Vizzarro
2025-02-12 16:45   ` [PATCH v2 4/7] dts: improve Port model Luca Vizzarro
2025-02-12 16:45   ` [PATCH v2 5/7] dts: add global runtime context Luca Vizzarro
2025-02-12 19:45     ` Nicholas Pratte
2025-02-12 16:45   ` [PATCH v2 6/7] dts: revamp runtime internals Luca Vizzarro
2025-02-12 16:46   ` [PATCH v2 7/7] dts: remove node distinction Luca Vizzarro
2025-02-12 16:47   ` [PATCH v2 0/7] dts: revamp framework Luca Vizzarro
2025-02-12 16:45 Luca Vizzarro
2025-02-12 16:46 ` Luca Vizzarro

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250212164600.23759-1-luca.vizzarro@arm.com \
    --to=luca.vizzarro@arm.com \
    --cc=dev@dpdk.org \
    --cc=dmarx@iol.unh.edu \
    --cc=npratte@iol.unh.edu \
    --cc=paul.szczepanek@arm.com \
    --cc=probb@iol.unh.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).