[Fuego] About ftc requests

Tim.Bird at sony.com Tim.Bird at sony.com
Tue Jun 12 03:18:08 UTC 2018

> -----Original Message-----
> From: Daniel Sangorrin
> Hi Tim,
> There are several functions in ftc associated to what I think is the prototype
> of a fuego web app that you showed us during an ELC BoF session.
> - put-request
> - put-test
> - list-requests
> - run-request
> - package-run
> - put-run
> Are there any news or roadmap for this effort?
Unfortunately, it's been on my backburner.  The main reason it got stalled
was that I wanted to add security for all these transfers, but that turns it
into a much bigger project to get this working.

What we have now is actually very close to sufficient, for an insecure
(unencrypted, unauthenticated) transfer of materials.

There's a bug right now on the server with handling json with Unicode
(non-ASCII) characters, but it shouldn't be too hard to fix that.

The end goal is to automate some of this, but with very little effort
(IMHO), we do things like the following workflow manually:

1) create a test
2) put the test on the server (ftc put-test)
3) add a request to run the test on another person's board (ftc put-request)
we would need a list of host:boards that were available,
but to start with we could just know each other's host and board names.
4) notify the person to run the test (e.g. by e-mail or slack).  They would do:
5) ftc run-request
6) ftc put-run (maybe make it an option to do this automatically for runs based on remote requests)
7) the original user can download the run (we don't have ftc get-run yet)
8) the original user can analyze the results, looking at the logs, collateral material, etc.

This would allow anyone in the Fuego "network" to run a test on another person's board.
For example, Wang could update his busybox test, and make requests for the tests to
run on boards in my lab, so he can test how the test works on more than just his board.
I could test new tests on boards in multiple labs (yours, Liu's, Wang's, Khiem's, Dhinakar's),
which would help a lot with test development and quality.

One thing I'd like to discuss at the Fuego Jamboree is whether someone is willing to 
be the test subject for this, and actually try it out soon after the meeting (the following

> I am currently working on the integration of Fuego with Squad (and KernelCI)
> so I might touch some code there.
> Squad supports very similar functionality and can use LAVA to run the
> requests. However, for now I think that
> supporting put-run (publishing the results) will be enough for most Fuego
> users. What do you think?.

I have no problem with an alternate implementation of put-run.  Mine is
very simple - basically just creating a tar file and sending it to a server.
Since mine's not being actively used, you can do what you want.  Just sideline my code
so if I get serious about this and restart the work, the code is still there
to integrate.  That is, don't delete the code, but just put it in a dead routine or
something.  We could have the code autodetect what type of server it's
talking to, but to start with we could just have a flag indicating it's a kernelci,
squad, or fuego server.  Or, we could add a configuration item indicating
the server type in the fuego.conf file.

We can talk more about this next week.
 -- Tim

More information about the Fuego mailing list