From: Quirin Gylstorff <quirin.gylsto...@siemens.com>

Add the schematic architecture of the current tests setup.

Signed-off-by: Quirin Gylstorff <quirin.gylsto...@siemens.com>
---
 tests/README.md | 45 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/tests/README.md b/tests/README.md
index ffe7ba2..6ee8ada 100644
--- a/tests/README.md
+++ b/tests/README.md
@@ -35,8 +35,53 @@ and check machine data from the target.
 
 The xenomai test suite executes the xeno-test tool from xenomai/testsuite.
 
+# Test Architecture
+
+To test xenomai-images on the target hardware the following architecture
+is used:
+```
+                                                               +----------+
+                                                               | Target 1 |
+                                                            /--|  beagle  |
++-----------+        +---------+       +---------+    /-----   |  bone    |
+|           |        | LAVA    |       | LAVA    | ---         +----------+
+| gitlab-   | ------ | master  |------ | Dis-    | --
+| runner    |        |         |       | patcher | \ \---      +----------+
++-----------+        +---------+       +---------+  \-   \---  | Target 2 |
+                                                      \      \-| x86-64   |
+                                                       \       |          |
+                                                        \-     +----------+
+                                                          \
+                                                           \   +----------+
+                                                            \- | Target n |
+                                                              \| qemu     |
+                                                               |          |
+                                                               +----------+
+```
+A test is deployed in the following steps:
+1. gitlab-runner: builds the artifacts
+2. After the build is successful the build artifacts are deployed to the
+   Lava master per scp.
+3. The runner sends a lava job description to the LAVA master, who triggers the
+job execution on LAVA Dispatcher.
+
+The LAVA master selects the LAVA Dispatcher to execute the given job on a
+target. Qemu targets are executed directly on the LAVA Dispatcher. For 
non-virtual
+targets the payload (kernel,rootfs,...) is deployed via tftp to the selected
+hardware.
+
+The dispatcher executes the following steps:
+1. Instrumentation of the rootfs. This will collect the necessary lavatools
+and adds them to the rootfs
+2. Power up the target
+3. deploy the payload(kernel,rootfs,...) with help of the bootloader
+4. trigger the payload boot
+5. execute the tests
+6. power off the target
+
 # LAVA Setup
 
 Setup a lava environment by following the
 [installation 
guide](https://docs.lavasoftware.org/lava/first-installation.html)
 or use [lava-docker](https://github.com/kernelci/lava-docker).
+
-- 
2.20.1


Reply via email to