From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2CD0D430DB; Wed, 23 Aug 2023 16:45:07 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3741C410F1; Wed, 23 Aug 2023 16:45:07 +0200 (CEST) Received: from mail-yw1-f177.google.com (mail-yw1-f177.google.com [209.85.128.177]) by mails.dpdk.org (Postfix) with ESMTP id 50B0940223 for ; Wed, 23 Aug 2023 16:45:06 +0200 (CEST) Received: by mail-yw1-f177.google.com with SMTP id 00721157ae682-58d31f142eeso60910047b3.0 for ; Wed, 23 Aug 2023 07:45:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1692801905; x=1693406705; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=D6wOKkbiAF/SJM6wIeobriWZLU5BtO4nvT2I3YzqbVg=; b=a2fFz8HwHK2qHI22uUcPO8DRx7q8Fr50vzB4umxZo8Ujg+CaKSu5z7D9K3PXgFA+C1 B+frsfh14Rs1aV/5kBxiehTgh9CKcMt00zR9q0EM3byIRt0rakhGKTtATluswGDN/8TB Mh83fXYhrJWWP+u2y7plwAl4pKxQ/wz6UY1MU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692801905; x=1693406705; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=D6wOKkbiAF/SJM6wIeobriWZLU5BtO4nvT2I3YzqbVg=; b=e5zSm/Dw3kYqpcgwoqdCFA0Un6oqn9SUwfz/JGGwiSzYJiHCicUKdARAI8VeyvXgYg 9sWmQ6Sb9hKroCaYBscsSGJAKxcJ7Y+1T4V5jti+RGuau5eHApGeaKxhkKgX5gizpJ+s 6btsJXzGRHQFlp/SACRUAwIAotqaZl8Jzf2O1+f72qTx3Sw+qMIvda6w5UtUmcwuGecQ PcfdCh8o6Aby7Dn3LgDYiI62drglvhQsKmZKAgsNDMhwwhEyZqqaISKb5Kjwlu7M5VbM clnmTISsIKDa8IJF7Mse4u63eTkBZbqAk+cHZPqfrrd2pzObSnK+j/mINW+nhcq+ONRJ Ncug== X-Gm-Message-State: AOJu0YzZsGLwKA8XRAWPLGyQtkvmn1z5abrQSOqdU6KgBA2y7ApSTqFz +OQ4OvLuEw+olJ0EDPAZ3cLojnNjalXNaZxnZmlCKA== X-Google-Smtp-Source: AGHT+IHW8/s3WlITRb+bloHxd4ekomBGXHxomavExEwD/ne4cH3DOKxVu34/f5x/bc3FfanXfIl+jm7hF5U4HMlsak8= X-Received: by 2002:a81:8ac4:0:b0:592:25d5:9e50 with SMTP id a187-20020a818ac4000000b0059225d59e50mr6807150ywg.36.1692801905499; Wed, 23 Aug 2023 07:45:05 -0700 (PDT) MIME-Version: 1.0 References: <35340484-1d7e-7e5f-cad4-c965ba541397@oktetlabs.ru> <9ce9d7fd-4051-6d51-26bb-7e96e98c677e@oktetlabs.ru> <781ca146-955f-85af-5727-66015ae1d326@oktetlabs.ru> In-Reply-To: From: Adam Hassick Date: Wed, 23 Aug 2023 10:45:33 -0400 Message-ID: Subject: Re: Setting up DPDK PMD Test Suite To: Andrew Rybchenko Cc: Patrick Robb , Konstantin Ushakov , ci@dpdk.org Content-Type: multipart/alternative; boundary="00000000000040b89a0603982838" X-BeenThere: ci@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK CI discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ci-bounces@dpdk.org --00000000000040b89a0603982838 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Andrew, I've set up a test rig repository here, and have created configurations for our development testbed based off of the examples. We've been able to get the test suite to run manually on Mellanox CX5 devices once. However, we are running into an issue where, when RCF starts, the RCF connection times out very frequently. We aren't sure why this is the case. It works sometimes, but most of the time when we try to run the test engine, it encounters this issue. I've tried changing the RCF port by setting "TE_RCF_PORT=3D" and rebooting the testbed machines. Neither seems to fix the issue= . It also seems like the timeout takes far longer than 60 seconds, even when running "export TE_RCFUNIX_TIMEOUT=3D60" before I try to run the test suite= . I assume the unit for this variable is seconds? Thanks, Adam On Mon, Aug 21, 2023 at 10:19=E2=80=AFAM Adam Hassick wrote: > Hi Andrew, > > Thanks, I've cloned the example repository and will start setting up a > configuration for our development testbed today. I'll let you know if I r= un > into any difficulties or have any questions. > > - Adam > > On Sun, Aug 20, 2023 at 4:40=E2=80=AFAM Andrew Rybchenko < > andrew.rybchenko@oktetlabs.ru> wrote: > >> Hi Adam, >> >> I've published https://github.com/ts-factory/ts-rigs-sample. Hopefully >> it will help to define your test rigs and successfully run some tests >> manually. Feel free to ask any questions and I'll answer here and try to >> update documentation. >> >> Meanwhile I'll prepare missing bits for steps (2) and (3). >> Hopefully everything is in place for step (4), but we need to make steps >> (2) and (3) first. >> >> Andrew. >> >> On 8/18/23 21:40, Andrew Rybchenko wrote: >> >> Hi Adam, >> >> > I've conferred with the rest of the team, and we think it would be bes= t >> to move forward with mainly option B. >> >> OK, I'll provide the sample on Monday for you. It is almost ready right >> now, but I need to double-check it before publishing. >> >> Regards, >> Andrew. >> >> On 8/17/23 20:03, Adam Hassick wrote: >> >> Hi Andrew, >> >> I'm adding the CI mailing list to this conversation. Others in the >> community might find this conversation valuable. >> >> We do want to run testing on a regular basis. The Jenkins integration >> will be very useful for us, as most of our CI is orchestrated by Jenkins= . >> I've conferred with the rest of the team, and we think it would be best >> to move forward with mainly option B. >> If you would like to know anything about our testbeds that would help yo= u >> with creating an example ts-rigs repo, I'd be happy to answer any questi= ons >> you have. >> >> We have multiple test rigs (we call these "DUT-tester pairs") that we ru= n >> our existing hardware testing on, with differing network hardware and CP= U >> architecture. I figured this might be an important detail. >> >> Thanks, >> Adam >> >> On Thu, Aug 17, 2023 at 11:44=E2=80=AFAM Andrew Rybchenko < >> andrew.rybchenko@oktetlabs.ru> wrote: >> >>> Greatings Adam, >>> >>> I'm happy to hear that you're trying to bring it up. >>> >>> As I understand the final goal is to run it on regular basis. So, we >>> need to make it properly from the very beginning. >>> Bring up of all features consists of 4 steps: >>> >>> 1. Create site-specific repository (we call it ts-rigs) which contains >>> information about test rigs and other site-specific information like wh= ere >>> to send mails, where to store logs etc. It is required for manual execu= tion >>> as well, since test rigs description is essential. I'll return to the t= opic >>> below. >>> >>> 2. Setup logs storage for automated runs. Basically it is a disk space >>> plus apache2 web server with few CGI scripts which help a lot to save d= isk >>> space. >>> >>> 3. Setup Bublik web application which provides web interface to view >>> testing results. Same as https://ts-factory.io/bublik >>> >>> 4. Setup Jenkins to run tests on regularly, save logs in log storage (2= ) >>> and import it to bublik (3). >>> >>> Last few month we spent on our homework to make it simpler to bring up >>> automated execution using Jenkins - >>> https://github.com/ts-factory/te-jenkins >>> Corresponding bits in dpdk-ethdev-ts will be available tomorrow. >>> >>> Let's return to the step (1). >>> >>> Unfortunately there is no publicly available example of the ts-rigs >>> repository since sensitive site-specific information is located there. = But >>> I'm ready to help you to create it for UNH. I see two options here: >>> >>> (A) I'll ask questions and based on your answers will create the first >>> draft with my comments. >>> >>> (B) I'll make a template/example ts-rigs repo, publish it and you'll >>> create UNH ts-rigs based on it. >>> >>> Of course, I'll help to debug and finally bring it up in any case. >>> >>> (A) is a bit simpler for me and you, but (B) is a bit more generic and >>> will help other potential users to bring it up. >>> We can combine (A)+(B). I.e. start from (A). What do you think? >>> >>> Thanks, >>> Andrew. >>> >>> On 8/17/23 15:18, Konstantin Ushakov wrote: >>> >>> Greetings Adam, >>> >>> >>> Thanks for contacting us. I copy Andrew who would be happy to help >>> >>> Thanks, >>> Konstantin >>> >>> On 16 Aug 2023, at 21:50, Adam Hassick >>> wrote: >>> >>> =EF=BB=BF >>> Greetings Konstantin, >>> >>> I am in the process of setting up the DPDK Poll Mode Driver test suite >>> as an addition to our testing coverage for DPDK at the UNH lab. >>> >>> I have some questions about how to set the test suite arguments. >>> >>> I have been able to configure the Test Engine to connect to the hosts i= n >>> the testbed. The RCF, Configurator, and Tester all begin to run, howeve= r >>> the prelude of the test suite fails to run. >>> >>> https://ts-factory.io/doc/dpdk-ethdev-ts/index.html#test-parameters >>> >>> The documentation mentions that there are several test parameters for >>> the test suite, like for the IUT test link MAC, etc. These seem like th= ey >>> would need to be set somewhere to run many of the tests. >>> >>> I see in the Test Engine documentation, there are instructions on how t= o >>> create new parameters for test suites in the Tester configuration, but >>> there is nothing in the user guide or in the Tester guide for how to se= t >>> the arguments for the parameters when running the test suite that I can >>> find. I'm not sure if I need to write my own Tester config, or if I sho= uld >>> be setting these in some other way. >>> >>> How should these values be set? >>> >>> I'm also not sure what environment variables/arguments are strictly >>> necessary or which are optional. >>> >>> Regards, >>> Adam >>> >>> -- >>> *Adam Hassick* >>> Senior Developer >>> UNH InterOperability Lab >>> ahassick@iol.unh.edu >>> iol.unh.edu >>> +1 (603) 475-8248 >>> >>> >>> >> >> -- >> *Adam Hassick* >> Senior Developer >> UNH InterOperability Lab >> ahassick@iol.unh.edu >> iol.unh.edu >> +1 (603) 475-8248 >> >> >> >> > > -- > *Adam Hassick* > Senior Developer > UNH InterOperability Lab > ahassick@iol.unh.edu > iol.unh.edu > +1 (603) 475-8248 > --=20 *Adam Hassick* Senior Developer UNH InterOperability Lab ahassick@iol.unh.edu iol.unh.edu +1 (603) 475-8248 --00000000000040b89a0603982838 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Andrew,

I= 9;ve set up a test rig repository here, and have created configurations for= our development testbed based off of the examples.
We've been able = to get the test suite to run manually on Mellanox CX5 devices once.
Howe= ver, we are running into an issue where, when RCF starts, the RCF connectio= n times out very frequently. We aren't sure why this is the case.
It works sometimes, but most of the time when we try to run the test en= gine, it encounters this issue.
I've tried changing the R= CF port by setting "TE_RCF_PORT=3D<some port number>" and r= ebooting the testbed machines. Neither seems to fix the issue.

It also seems like the timeout takes far longer than 60 seconds= , even when running "export TE_RCFUNIX_TIMEOUT=3D60" before I try= to run the test suite.
I assume the unit for this variable is sec= onds?

Thanks,
Adam

On Mon, Aug 21, 2023 at 10:19= =E2=80=AFAM Adam Hassick <ahassi= ck@iol.unh.edu> wrote:
Hi Andrew,
Thanks, I've cloned the example repository and will start settin= g up a configuration for our development testbed today. I'll let you kn= ow if I run into any difficulties or have any questions.

=C2= =A0- Adam

On Sun, Aug 20, 2023 at 4:40=E2=80=AFAM Andrew Rybchenko <<= a href=3D"mailto:andrew.rybchenko@oktetlabs.ru" target=3D"_blank">andrew.ry= bchenko@oktetlabs.ru> wrote:
=20 =20 =20
Hi Adam,

I've published https://github.com/ts-factory/ts-rigs-sample. Hopefully it will help to define your test rigs and successfully run some tests manually. Feel free to ask any questions and I'll answer here and try to update documentation.

Meanwhile I'll prepare missing bits for steps (2) and (3).
Hopefully everything is in place for step (4), but we need to make steps (2) and (3) first.

Andrew.

On 8/18/23 21:40, Andrew Rybchenko wrote:
=20
Hi Adam,

> I've conferred with the rest of the team, and we think it would be best to move forward with mainly option B.

OK, I'll provide the sample on Monday for you. It is almost ready right now, but I need to double-check it before publishing.

Regards,
Andrew.

On 8/17/23 20:03, Adam Hassick wrote:
=20
Hi Andrew,

I'm adding the CI mailing list to this conversation. Others in the community might find this conversation valuable.

We do want to run testing on a regular basis. The Jenkins integration will be very useful for us, as most of our CI is orchestrated by Jenkins.
I've conferred with the rest of the team, and we think i= t would be best to move forward with mainly option B.
If you would like to know anything about our testbeds that would help you with creating an example ts-rigs repo, I'd be happy to answer any questions you have.

We have multiple test rigs (we call these "DUT-tester pairs") that we run our existing hardware testing on, with differing network hardware and CPU architecture. I figured this might be an important detail.

Thanks,
Adam

On Thu, Aug 17, 2023 at 11:44=E2=80=AFAM Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru= > wrote:
Greatings Adam,

I'm happy to hear that you're trying to bring it up= .

As I understand the final goal is to run it on regular basis. So, we need to make it properly from the very beginning.
Bring up of all features consists of 4 steps:

1. Create site-specific repository (we call it ts-rigs) which contains information about test rigs and other site-specific information like where to send mails, where to store logs etc. It is required for manual execution as well, since test rigs description is essential. I'll return to the topic below.

2. Setup logs storage for automated runs. Basically it is a disk space plus apache2 web server with few CGI scripts which help a lot to save disk space.

3. Setup Bublik web application which provides web interface to view testing results. Same as https://ts-factory.io/bublik=

4. Setup Jenkins to run tests on regularly, save logs in log storage (2) and import it to bublik (3).

Last few month we spent on our homework to make it simpler to bring up automated execution using Jenkins - https://github.com/ts-factory/te-jenkins
Corresponding bits in dpdk-ethdev-ts will be available tomorrow.

Let's return to the step (1).

Unfortunately there is no publicly available example of the ts-rigs repository since sensitive site-specific information is located there. But I'm ready to help you to create it for UNH. I see two options here:

(A) I'll ask questions and based on your answers will create the first draft with my comments.

(B) I'll make a template/example ts-rigs repo, publish it and you'll create UNH ts-rigs based on it.

Of course, I'll help to debug and finally bring it up i= n any case.

(A) is a bit simpler for me and you, but (B) is a bit more generic and will help other potential users to bring it up.
We can combine (A)+(B). I.e. start from (A). What do you think?

Thanks,
Andrew.

On 8/17/23 15:18, Konstantin Ushakov wrote:
Greetings Adam,


Thanks for contacting us. I copy Andrew who would be happy to help

Thanks,
Konstantin

On 16 Aug 2023, at 21:50, Adam Hassick <ahassick@iol.unh.edu> wrote:

=EF=BB=BF
Greetings Konstantin,

I am in the process of setting up the DPDK Poll Mode Driver test suite as an addition to our testing coverage for DPDK at the UNH lab.

I have some questions about how to set the test suite arguments.

I have been able to configure the Test Engine to connect to the hosts in the testbed. The RCF, Configurator, and Tester all begin to run, however the prelude of the test suite fails to run.
The documentation mentions that there are several test parameters for the test suite, like for the IUT test link MAC, etc. These seem like they would need to be set somewhere to run many of the tests.

I see in the Test Engine documentation, there are instructions on how to create new parameters for test suites in the Tester configuration, but there is nothing in the user guide or in the Tester guide for how to set the arguments for the parameters when running the test suite that I can find. I'm not sure if I need to write my own Tester config, or if I should be setting these in some other way.

How should these values be set?

I'm also not sure what environment variables/arguments are strictly necessary or which are optional.

Regards,
Adam

= --
Adam Hassic= k
Senior Developer
UNH InterOperability Lab=
+1 (603) 475-8248



--
Adam Hassick
Senior Developer
UNH InterOperability Lab
+1 (603) 475-8248




--
Adam Hassick
Senior Developer
UNH InterOperability Lab
+1 (603) 475-8248


--
Adam Hassick
Senior Developer
UNH InterOperability Lab
+1 (603) 475-8248
--00000000000040b89a0603982838--