DPDK patches and discussions
 help / color / mirror / Atom feed
From: Owen Hilyard <ohilyard@iol.unh.edu>
To: "Juraj Linkeš" <juraj.linkes@pantheon.tech>
Cc: thomas@monjalon.net, david.marchand@redhat.com,
	 Honnappa.Nagarahalli@arm.com, lijuan.tu@intel.com,
	kda@semihalf.com,  bruce.richardson@intel.com, dev@dpdk.org
Subject: Re: [PATCH v5 00/10] dts: ssh connection to a node
Date: Tue, 11 Oct 2022 11:40:51 -0400	[thread overview]
Message-ID: <CAHx6DYCciH9nPKxH+x-XP0ZXogYQFirawPhEbsD6wMVEn3WdsA@mail.gmail.com> (raw)
In-Reply-To: <20220926141713.2415010-1-juraj.linkes@pantheon.tech>

[-- Attachment #1: Type: text/plain, Size: 6491 bytes --]

On Mon, Sep 26, 2022 at 10:17 AM Juraj Linkeš <juraj.linkes@pantheon.tech>
wrote:

> All the necessary code needed to connect to a node in a topology with
> a bit more, such as basic logging and some extra useful methods.
>
> To run the code, modify the config file, conf.yaml and execute ./main.py
> from the root dts folder. Here's an example config:
> executions:
>   - system_under_test: "SUT 1"
> nodes:
>   - name: "SUT 1"
>     hostname: 127.0.0.1
>     user: root
>     password: mypw.change.me
>
> There are configuration files with a README that help with setting up
> the execution/development environment.
>
> The code only connects to a node. You'll see logs emitted to console
> saying where DTS connected.
>
> There's only a bit of documentation, as there's not much to document.
> We'll add some real docs when there's enough functionality to document,
> when the HelloWorld testcases is in (point 4 in our roadmap below). What
> will be documented later is runtime dependencies and how to set up the DTS
> control node environment.
>
> This is our current roadmap:
> 1. Review this patchset and do the rest of the items in parallel, if
> possible.
> 2. We have extracted the code needed to run the most basic testcase,
> HelloWorld, which runs the DPDK Hello World application. We'll split
> this along logical/functional boundaries and send after 1 is done.
> 3. Once we have 2 applied, we're planning on adding a basic functional
> testcase - pf_smoke. This send a bit of traffic, so the big addition is
> the software traffic generator, Scapy. There's some work already done on
> Traffic generators we'll be sending as a dependence on this patch
> series.
> 4. After 3, we'll add a basic performance testcase which doesn't use
> Scapy, but Trex or Ixia instead.
> 5. This is far in the future, but at this point we should have all of
> the core functionality in place. What then remains is adding the rest of
> the testcases.
>
> We're already working on items 2-4 and we may send more patches even
> before this patch series is accepted if that's beneficial. The new
> patches would then depend on this patch.
>
> This patch, as well as all others in the pipeline, are the result of
> extensive DTS workgroup review which happens internally. If you'd like
> us to make it more public we'd have no problem with that.
>
> v3:
> Added project config files and developer tools.
> Removed locks for parallel nodes, which are not needed now and will be
> implemented much later (in a different patch).
>
> v4:
> Minor fixes - added missing Exception and utils function.
>
> v5:
> Reordered commits because the dependencies between commits changed.
> Added more developer tools.
> Added definitions of DTS testbed elements.
> Reworked SSH implementation - split it so that the split between an
> abstraction and the actual implementation is clearer.
> Modified the directory structure to better organize the current and the
> future code.
>
> Juraj Linkeš (9):
>   dts: add project tools config
>   dts: add developer tools
>   dts: add basic logging facility
>   dts: add remote session abstraction
>   dts: add ssh connection module
>   dts: add node base class
>   dts: add dts workflow module
>   dts: add dts executable script
>   maintainers: add dts maintainers
>
> Owen Hilyard (1):
>   dts: add config parser module
>
>  .editorconfig                                 |   2 +-
>  .gitignore                                    |   9 +-
>  MAINTAINERS                                   |   5 +
>  devtools/python-checkpatch.sh                 |  39 ++
>  devtools/python-format.sh                     |  54 +++
>  devtools/python-lint.sh                       |  26 ++
>  doc/guides/contributing/coding_style.rst      |   4 +-
>  dts/.devcontainer/devcontainer.json           |  30 ++
>  dts/Dockerfile                                |  39 ++
>  dts/README.md                                 | 154 ++++++++
>  dts/conf.yaml                                 |   6 +
>  dts/framework/__init__.py                     |   4 +
>  dts/framework/config/__init__.py              |  99 +++++
>  dts/framework/config/conf_yaml_schema.json    |  73 ++++
>  dts/framework/dts.py                          |  69 ++++
>  dts/framework/exception.py                    |  71 ++++
>  dts/framework/logger.py                       | 115 ++++++
>  dts/framework/remote_session/__init__.py      |   5 +
>  .../remote_session/remote_session.py          | 100 +++++
>  .../remote_session/session_factory.py         |  16 +
>  dts/framework/remote_session/ssh_session.py   | 189 ++++++++++
>  dts/framework/settings.py                     | 108 ++++++
>  dts/framework/testbed_model/__init__.py       |   8 +
>  dts/framework/testbed_model/node.py           |  83 +++++
>  dts/framework/utils.py                        |  31 ++
>  dts/main.py                                   |  24 ++
>  dts/poetry.lock                               | 351 ++++++++++++++++++
>  dts/pyproject.toml                            |  55 +++
>  28 files changed, 1765 insertions(+), 4 deletions(-)
>  create mode 100755 devtools/python-checkpatch.sh
>  create mode 100755 devtools/python-format.sh
>  create mode 100755 devtools/python-lint.sh
>  create mode 100644 dts/.devcontainer/devcontainer.json
>  create mode 100644 dts/Dockerfile
>  create mode 100644 dts/README.md
>  create mode 100644 dts/conf.yaml
>  create mode 100644 dts/framework/__init__.py
>  create mode 100644 dts/framework/config/__init__.py
>  create mode 100644 dts/framework/config/conf_yaml_schema.json
>  create mode 100644 dts/framework/dts.py
>  create mode 100644 dts/framework/exception.py
>  create mode 100644 dts/framework/logger.py
>  create mode 100644 dts/framework/remote_session/__init__.py
>  create mode 100644 dts/framework/remote_session/remote_session.py
>  create mode 100644 dts/framework/remote_session/session_factory.py
>  create mode 100644 dts/framework/remote_session/ssh_session.py
>  create mode 100644 dts/framework/settings.py
>  create mode 100644 dts/framework/testbed_model/__init__.py
>  create mode 100644 dts/framework/testbed_model/node.py
>  create mode 100644 dts/framework/utils.py
>  create mode 100755 dts/main.py
>  create mode 100644 dts/poetry.lock
>  create mode 100644 dts/pyproject.toml
>
> --
> 2.30.2
>
>
Everything looks good from my perspective.

[-- Attachment #2: Type: text/html, Size: 7609 bytes --]

      parent reply	other threads:[~2022-10-11 15:41 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-26 14:17 Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 01/10] dts: add project tools config Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 02/10] dts: add developer tools Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 03/10] dts: add config parser module Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 04/10] dts: add basic logging facility Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 05/10] dts: add remote session abstraction Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 06/10] dts: add ssh connection module Juraj Linkeš
2022-09-27 10:12   ` Stanislaw Kardach
2022-09-30  8:10     ` Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 07/10] dts: add node base class Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 08/10] dts: add dts workflow module Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 09/10] dts: add dts executable script Juraj Linkeš
2022-09-26 14:17 ` [PATCH v5 10/10] maintainers: add dts maintainers Juraj Linkeš
2022-10-11 15:40 ` Owen Hilyard [this message]

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=CAHx6DYCciH9nPKxH+x-XP0ZXogYQFirawPhEbsD6wMVEn3WdsA@mail.gmail.com \
    --to=ohilyard@iol.unh.edu \
    --cc=Honnappa.Nagarahalli@arm.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=juraj.linkes@pantheon.tech \
    --cc=kda@semihalf.com \
    --cc=lijuan.tu@intel.com \
    --cc=thomas@monjalon.net \
    /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).