mbox

[RFC,v2,0/2] add DTS smoke tests

Message ID 20230512192540.401-2-jspewock@iol.unh.edu (mailing list archive)
Headers

Message

Jeremy Spewock May 12, 2023, 7:25 p.m. UTC
  From: Jeremy Spewock <jspewock@iol.unh.edu>

This update to the RFC adds a few more things such as physical devices
and virtual devices to the config, driver checks in the smoke tests, and interactive shell
handling.

Interactive shells are handled by creating two SSH connections upon
connecting to the SUT, one which is for normal non-interactive
opertaions and another (using paramiko) that is reserved for interactive shells. This
interactive session is stored in the main session of the SUT and can be
piloted using the interactive handler. This handler creates a new
channel off the session and provides methods for sending commands both
blindly and by expecting output. Then, classes are made for individual
DPDK applications that use one of these interactive handlers and know
how to handle that applications specific behaviors and outputs.

Old RFC:
* http://patches.dpdk.org/project/dpdk/patch/20230413175415.7683-3-jspewock@iol.unh.edu/

Jeremy Spewock (1):
  dts: added paramiko to dependencies

Jeremy Spewock (1):
  dts: add smoke tests

 dts/conf.yaml                                 |   9 +
 dts/framework/config/__init__.py              |  21 +++
 dts/framework/config/conf_yaml_schema.json    |  32 +++-
 dts/framework/dts.py                          |  19 ++-
 dts/framework/exception.py                    |  11 ++
 dts/framework/remote_session/os_session.py    |   6 +-
 .../remote_session/remote/__init__.py         |  28 +++
 dts/framework/test_result.py                  |  13 +-
 dts/framework/test_suite.py                   |  24 ++-
 dts/framework/testbed_model/__init__.py       |   5 +
 .../interactive_apps/__init__.py              |   6 +
 .../interactive_apps/interactive_command.py   |  57 +++++++
 .../interactive_apps/testpmd_driver.py        |  24 +++
 dts/framework/testbed_model/node.py           |   2 +
 dts/framework/testbed_model/sut_node.py       |   6 +
 dts/poetry.lock                               | 160 ++++++++++++++----
 dts/pyproject.toml                            |   1 +
 dts/tests/TestSuite_smoke_tests.py            |  94 ++++++++++
 18 files changed, 472 insertions(+), 46 deletions(-)
 create mode 100644 dts/framework/testbed_model/interactive_apps/__init__.py
 create mode 100644 dts/framework/testbed_model/interactive_apps/interactive_command.py
 create mode 100644 dts/framework/testbed_model/interactive_apps/testpmd_driver.py
 create mode 100644 dts/tests/TestSuite_smoke_tests.py