aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQiLiang <liangqi1@huawei.com>2016-03-24 17:37:52 -0700
committerqi liang <liangqi1@huawei.com>2016-03-25 15:14:03 +0000
commit4d521ee0101c260e5be58ce6b6fa8014f72789ac (patch)
tree4959b748c5fb644fd6684653c3b231743a04c745
parent3f9a8ea7b2c35b1298e7d318b0d7c687dfa5aabe (diff)
Add Logical view part of SWA
JIRA: - Change-Id: I64ada7e2ea1b7e668b93ae10c22c7c1c9facf6f7 Signed-off-by: QiLiang <liangqi1@huawei.com> (cherry picked from commit 2375ac7a7a3f55fd92a7d4307688967107cb1038)
-rwxr-xr-xdocs/userguide/architecture.rst35
-rw-r--r--docs/userguide/images/Logical_view.pngbin0 -> 58840 bytes
2 files changed, 34 insertions, 1 deletions
diff --git a/docs/userguide/architecture.rst b/docs/userguide/architecture.rst
index 800e82224..3abb67b7d 100755
--- a/docs/userguide/architecture.rst
+++ b/docs/userguide/architecture.rst
@@ -156,7 +156,40 @@ on OPNFV testing dashboard which use MongoDB as backend.
Logical View
============
-TBD(Qiliang)
+Yardstick Logical View describes the most important classes, their
+organization, and the most important use-case realizations.
+
+Main classes:
+
+**TaskCommands** - "yardstick task" subcommand handler.
+
+**HeatContext** - Do test yaml file context section model convert to HOT,
+deploy and undeploy Openstack heat stack.
+
+**Runner** - Logic that determines how a test scenario is run and reported.
+
+**TestScenario** - Type/class of measurement for example Ping, Pktgen, (Iperf,
+LmBench, ...)
+
+**Dispatcher** - Choose user defined way to store test results.
+
+TaskCommands is the "yardstick task" subcommand's main entry. It takes yaml
+file (e.g. test.yaml) as input, and uses HeatContext to convert the yaml
+file's context section to HOT. After Openstacik heat stack is deployed by
+HeatContext with the converted HOT, TaskCommands use Runner to run specified
+TestScenario. During first runner initialization, it will create output
+process. The output process use Dispatcher to push test results. The Runner
+will also create a process to execute TestScenario. And there is a
+multiprocessing queue between each runner process and output process, so the
+runner process can push the real-time test results to the storage media.
+TestScenario is commonly connected with VMs by using ssh. It sets up VMs and
+run test measurement scripts through the ssh tunnel. After all TestScenaio
+is finished, TaskCommands will undeploy the heat stack. Then the whole test is
+finished.
+
+.. image:: images/Logical_view.png
+ :width: 800px
+ :alt: Yardstick Logical View
Process View (Test execution flow)
==================================
diff --git a/docs/userguide/images/Logical_view.png b/docs/userguide/images/Logical_view.png
new file mode 100644
index 000000000..cdb805448
--- /dev/null
+++ b/docs/userguide/images/Logical_view.png
Binary files differ