Add support to list and show runners & scenarios 05/905/3
authorHans Feldt <hans.feldt@ericsson.com>
Fri, 26 Jun 2015 09:53:21 +0000 (11:53 +0200)
committerHans Feldt <hans.feldt@ericsson.com>
Mon, 29 Jun 2015 07:07:46 +0000 (09:07 +0200)
commitd7fd300e9a9bd480ad9f1500494021c42ec6ecee
tree1c9f0aa39aee9946814b1280ae4a354716fca155
parent40f49a42dd8476ad2332ecf2e0a57e6bf511aa63
Add support to list and show runners & scenarios

Example usage and output:

$ yardstick runner list
+------------------------------------------------------------------------------+
| Type             | Description
+------------------------------------------------------------------------------+
| Duration         | Run a scenario for a certain amount of time
| Arithmetic       | Run a scenario arithmetically stepping an input value
| Constant         | Run a scenario a certain number of times
+------------------------------------------------------------------------------+
$ yardstick runner show Duration
Run a scenario for a certain amount of time

If the scenario ends before the time has elapsed, it will be started again.

  Parameters
    duration - amount of time the scenario will be run for
        type:    int
        unit:    seconds
        default: 1 sec
    interval - time to wait between each scenario invocation
        type:    int
        unit:    seconds
        default: 1 sec

$ yardstick scenario list
+------------------------------------------------------------------------------+
| Type             | Description
+------------------------------------------------------------------------------+
| Iperf3           | Execute iperf3 between two hosts
| Pktgen           | Execute pktgen between two hosts
| Ping             | Execute ping between two hosts
+------------------------------------------------------------------------------+
$ yardstick scenario show Iperf3
Execute iperf3 between two hosts

By default TCP is used but UDP can also be configured.
For more info see http://software.es.net/iperf

  Parameters
    bytes - number of bytes to transmit
      only valid with a non duration runner, mutually exclusive with blockcount
        type:    int
        unit:    bytes
        default: 56
    udp - use UDP rather than TCP
        type:    bool
        unit:    na
        default: false
    nodelay - set TCP no delay, disabling Nagle's Algorithm
        type:    bool
        unit:    na
        default: false
    blockcount - number of blocks (packets) to transmit,
      only valid with a non duration runner, mutually exclusive with bytes
        type:    int
        unit:    bytes
        default: -

JIRA: -
Change-Id: If218e129a30af7e20792190003c214677e732252
Signed-off-by: Hans Feldt <hans.feldt@ericsson.com>
yardstick/benchmark/runners/arithmetic.py
yardstick/benchmark/runners/base.py
yardstick/benchmark/runners/duration.py
yardstick/benchmark/scenarios/base.py
yardstick/benchmark/scenarios/networking/iperf3.py
yardstick/benchmark/scenarios/networking/ping.py
yardstick/benchmark/scenarios/networking/pktgen.py
yardstick/cmd/__init__.py
yardstick/cmd/cli.py
yardstick/cmd/commands/runner.py [new file with mode: 0644]
yardstick/cmd/commands/scenario.py [new file with mode: 0644]