summaryrefslogtreecommitdiffstats
path: root/legacy/assets
diff options
context:
space:
mode:
authorYujun Zhang <zhang.yujunz@zte.com.cn>2017-01-08 09:48:31 +0800
committerYujun Zhang <zhang.yujunz@zte.com.cn>2017-01-11 15:14:16 +0800
commit23b627df622eeafafa215ce19764310c1d55dd55 (patch)
treed92c4c9b8a50a03461a40d2a2aba67bc7312041a /legacy/assets
parent23f48e46a46976ae6f6d97aea11440e6a8b63121 (diff)
Reorganize the project folders
Code from Brahmaputra is no longer maintained, including: - docker - playbooks - scripts - utils They are moved to legacy folder to avoid unnecessary confusion to new developers. Change-Id: Ia50383ca5c3bd82571eb7b2184e7f83e264ff8a7 Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
Diffstat (limited to 'legacy/assets')
-rw-r--r--legacy/assets/perftest/common/git_proxy_pbook.yaml11
-rw-r--r--legacy/assets/perftest/common/sys_info_pbook.yaml42
-rw-r--r--legacy/assets/perftest/common/sys_proxy_pbook.yaml53
-rw-r--r--legacy/assets/perftest/dhrystone.yaml111
-rw-r--r--legacy/assets/perftest/dpi.yaml126
-rw-r--r--legacy/assets/perftest/etc/dpi_average.sh14
-rw-r--r--legacy/assets/perftest/etc/fio_test_job13
-rw-r--r--legacy/assets/perftest/etc/info_collect.py86
-rw-r--r--legacy/assets/perftest/fio.yaml112
-rw-r--r--legacy/assets/perftest/iperf.yaml162
-rw-r--r--legacy/assets/perftest/ramspeed.yaml115
-rw-r--r--legacy/assets/perftest/ssl.yaml119
-rw-r--r--legacy/assets/perftest/summary23
-rw-r--r--legacy/assets/perftest/whetstone.yaml111
-rw-r--r--legacy/assets/suite/compute16
-rw-r--r--legacy/assets/suite/compute.yaml46
-rw-r--r--legacy/assets/suite/network9
-rw-r--r--legacy/assets/suite/storage8
-rw-r--r--legacy/assets/testplan/default/compute/dhrystone_bm.yaml33
-rw-r--r--legacy/assets/testplan/default/compute/dhrystone_vm.yaml45
-rw-r--r--legacy/assets/testplan/default/compute/dpi_bm.yaml34
-rw-r--r--legacy/assets/testplan/default/compute/dpi_vm.yaml35
-rw-r--r--legacy/assets/testplan/default/compute/ramspeed_bm.yaml34
-rw-r--r--legacy/assets/testplan/default/compute/ramspeed_vm.yaml45
-rw-r--r--legacy/assets/testplan/default/compute/ssl_bm.yaml31
-rw-r--r--legacy/assets/testplan/default/compute/ssl_vm.yaml36
-rw-r--r--legacy/assets/testplan/default/compute/whetstone_bm.yaml33
-rw-r--r--legacy/assets/testplan/default/compute/whetstone_vm.yaml44
-rw-r--r--legacy/assets/testplan/default/network/iperf_bm.yaml50
-rw-r--r--legacy/assets/testplan/default/network/iperf_vm.yaml43
-rw-r--r--legacy/assets/testplan/default/network/iperf_vm_2.yaml44
-rw-r--r--legacy/assets/testplan/default/storage/fio_bm.yaml39
-rw-r--r--legacy/assets/testplan/default/storage/fio_vm.yaml44
33 files changed, 1767 insertions, 0 deletions
diff --git a/legacy/assets/perftest/common/git_proxy_pbook.yaml b/legacy/assets/perftest/common/git_proxy_pbook.yaml
new file mode 100644
index 00000000..5cb6f450
--- /dev/null
+++ b/legacy/assets/perftest/common/git_proxy_pbook.yaml
@@ -0,0 +1,11 @@
+#git
+- name: set git proxy(http)
+ shell: "git config --global http.proxy {{ http_proxy }}"
+ when: http_proxy is defined
+ ignore_errors: yes
+
+- name: set git proxy(https)
+ shell: "git config --global https.proxy {{https_proxy}}"
+ when: https_proxy is defined
+ ignore_errors: yes
+
diff --git a/legacy/assets/perftest/common/sys_info_pbook.yaml b/legacy/assets/perftest/common/sys_info_pbook.yaml
new file mode 100644
index 00000000..5c2d8f79
--- /dev/null
+++ b/legacy/assets/perftest/common/sys_info_pbook.yaml
@@ -0,0 +1,42 @@
+ - name: Epel Release install when CentOS
+ shell: sudo yum install epel-release -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Inxi install when CentOS
+ shell: sudo yum install inxi -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Software Properties Common
+ shell: sudo apt-get install software-properties-common -y
+ when: ansible_os_family == "Debian"
+
+ - name: adding trusty-backport main repo
+ shell: sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse"
+ when: ansible_os_family == "Debian"
+
+ - name: adding trusty main repo
+ shell: sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse"
+ when: ansible_os_family == "Debian"
+
+ - name: system info collection tool install when Ubuntu
+ shell: sudo apt-get update && apt-get install inxi -y
+ when: ansible_os_family == "Debian"
+
+ - name: Install ansible copy dependencies if remote host has selinux enabled
+ shell: sudo yum install libselinux-python -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Install ansiblle copy dependencies if remote host has selinux enaled
+ shell: sudo apt-get install python-selinux -y
+ when: ansible_os_family == "Debian"
+
+ - name: system_info script copy
+ copy: src=../etc/info_collect.py dest={{home_dir.stdout}}/qtip_result/
+
+ - name: collecting system informaton for non-network test cases
+ shell: cd $HOME/qtip_result && sudo python info_collect.py c
+ when: not network
+
+ - name: collecting system information for network test cases
+ shell: cd $HOME/qtip_result && sudo python info_collect.py n
+ when: network
diff --git a/legacy/assets/perftest/common/sys_proxy_pbook.yaml b/legacy/assets/perftest/common/sys_proxy_pbook.yaml
new file mode 100644
index 00000000..bf4a8ccb
--- /dev/null
+++ b/legacy/assets/perftest/common/sys_proxy_pbook.yaml
@@ -0,0 +1,53 @@
+#env
+- name: insert shell proxy http
+ lineinfile: dest=/etc/profile.d/proxy.sh state=present create=yes owner=root group=root mode=0644 regexp="export http_proxy={{ http_proxy }}"
+ insertafter=EOF line="export http_proxy={{ http_proxy }}"
+ when: http_proxy is defined
+ ignore_errors: yes
+
+- name: insert shell proxy https
+ lineinfile: dest=/etc/profile.d/proxy.sh state=present create=yes owner=root group=root mode=0644 regexp="export https_proxy={{ https_proxy }}"
+ insertafter=EOF line="export https_proxy={{ https_proxy }}"
+ when: https_proxy is defined
+ ignore_errors: yes
+
+- name: insert no proxy
+ lineinfile: dest=/etc/profile.d/proxy.sh state=present create=yes owner=root group=root mode=0644 regexp="{{ no_proxy }}"
+ insertafter=EOF line="export no_proxy={{ no_proxy }}"
+ when: no_proxy is defined
+ ignore_errors: yes
+
+#wget
+- name: insert wget proxy(http)
+ lineinfile: dest=/etc/wgetrc state=present regexp="http_proxy={{ http_proxy }}"
+ insertafter="^#http_proxy" line="http_proxy={{ http_proxy }}"
+ when: http_proxy is defined
+ ignore_errors: yes
+
+- name: insert wget proxy(https)
+ lineinfile: dest=/etc/wgetrc state=present regexp="https_proxy={{ https_proxy }}"
+ insertafter="^#https_proxy" line="https_proxy={{ https_proxy }}"
+ when: https_proxy is defined
+ ignore_errors: yes
+
+#yum
+- name: insert yum proxy(http)
+ lineinfile: dest=/etc/yum.conf state=present regexp="proxy={{ http_proxy }}"
+ insertafter=EOF line="proxy={{ http_proxy }}"
+ when: ansible_os_family == "RedHat" and http_proxy is defined
+ ignore_errors: yes
+
+#apt
+
+- name: insert apt proxy(http)
+ lineinfile: dest=/etc/apt/apt.conf state=present create=yes regexp="Acquire::http::Proxy \"{{ http_proxy }}\";"
+ insertafter=EOF line="Acquire::http::Proxy \"{{ http_proxy }}\";"
+ when: ansible_os_family == "Debian" and http_proxy is defined
+ ignore_errors: yes
+
+- name: insert apt proxy(https)
+ lineinfile: dest=/etc/apt/apt.conf state=present create=yes regexp="Acquire::https::Proxy \"{{ https_proxy }}\";"
+ insertafter=EOF line="Acquire::https::Proxy \"{{ https_proxy }}\";"
+ when: ansible_os_family == "Debian" and https_proxy is defined
+ ignore_errors: yes
+
diff --git a/legacy/assets/perftest/dhrystone.yaml b/legacy/assets/perftest/dhrystone.yaml
new file mode 100644
index 00000000..896aadfc
--- /dev/null
+++ b/legacy/assets/perftest/dhrystone.yaml
@@ -0,0 +1,111 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making dhrystone directory
+ file: path={{Dest_dir}}/dhrystone state=directory
+
+ - name: making temporary dhrystone directory
+ file: path={{Dest_dir}}/dhrystone/dhrystone_temp state=directory
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: checking home directory
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning tempT
+ file: path={{home_dir.stdout}}/tempT state=absent
+
+ - name: cleaning qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: make directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing UnixBench dependencies if CentOS
+ shell: yum install git gcc patch perl-Time-HiRes -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing UnixBench dependencies if Ubuntu
+ shell: apt-get install git gcc patch perl -y
+ when: ansible_os_family == "Debian"
+
+ - include: ./common/git_proxy_pbook.yaml
+
+ - name: Clone unixbench
+ git: repo=https://github.com/kdlucas/byte-unixbench.git
+ dest=$HOME/tempT
+
+ - name: make
+ shell: sudo make --directory $HOME/tempT/UnixBench/
+
+ - name: Run dhrystone
+ shell: cd $HOME/tempT/UnixBench/&& sudo ./Run -v dhrystone
+
+ - name: collecting and transforming result script copy
+ copy: src={{workingdir}}/qtip/utils/transform/ubench_transform.py dest={{home_dir.stdout}}/qtip_result/
+
+ - name: transforming result
+ shell: cd $HOME/qtip_result/ && sudo python ubench_transform.py
+
+ - name: copying consolidated report script
+ copy: src={{workingdir}}/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result/
+
+ - name: making consolidated report
+ shell: cd $HOME/qtip_result && sudo python final_report.py Dhrystone {{fname}}
+
+ - name: making directory
+ file: path={{home_dir.stdout}}/qtip_result/log state=directory
+
+ - name: copying result to temp directory
+ shell: sudo cp -r $HOME/tempT/UnixBench/results/* $HOME/qtip_result/log/
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/dhrystone/dhrystone_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/log/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/log/{{item}} dest={{Dest_dir}}/dhrystone/dhrystone_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning tempT
+ file: path={{home_dir.stdout}}/tempT state=absent
+
+ - name: cleaning_qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/dhrystone/dhrystone_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/dhrystone/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/dhrystone/logs state=directory
+
+ - name: extracting_log
+ shell: (find {{Dest_dir}}/dhrystone/dhrystone_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/dhrystone/logs)
+
+ - name: removing dhrystone_temp
+ file: path={{Dest_dir}}/dhrystone/dhrystone_temp state=directory
diff --git a/legacy/assets/perftest/dpi.yaml b/legacy/assets/perftest/dpi.yaml
new file mode 100644
index 00000000..2a10bef6
--- /dev/null
+++ b/legacy/assets/perftest/dpi.yaml
@@ -0,0 +1,126 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making dpi directory
+ file: path={{Dest_dir}}/dpi state=directory
+
+ - name: making temporary whetstone directory
+ file: path={{Dest_dir}}/dpi/dpi_temp state=directory
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: echo
+ shell: echo $USER
+
+ - name: checking home directory
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning
+ file: path={{home_dir.stdout}}/tempD state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: make qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing nDPI dependencies if CentOS
+ shell: sudo yum install git gcc patch perl-Time-HiRes autofconf automake libpcap-devel libtool -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing nDPI dependcies if Ubuntu
+ shell: sudo apt-get install git gcc patch autoconf automake libpcap-dev libtool -y
+ when: ansible_os_family == "Debian"
+
+ - name: making nDPI temporary directory
+ file: path=$HOME/tempD state=directory
+
+ - include: ./common/git_proxy_pbook.yaml
+
+ - name: Clone nDPI
+ git: repo=https://github.com/ntop/nDPI.git
+ dest=$HOME/tempD/nDPI
+
+ - name: autogen
+ shell: cd $HOME/tempD/nDPI && sudo ./autogen.sh
+
+ - name: configure
+ shell: cd $HOME/tempD/nDPI && sudo ./configure
+
+ - name: make
+ shell: cd $HOME/tempD/nDPI && sudo make
+
+ - name: Fetching Test_pcap file
+ shell: cd $HOME/tempD/nDPI/example && wget http://build.opnfv.org/artifacts.opnfv.org/qtip/utilities/test.pcap
+
+ - name: fetch Averaging script
+ copy: src=./etc/dpi_average.sh dest={{home_dir.stdout}}/tempD/nDPI/example mode=777
+
+ - name: Run nDPI benchmark
+ shell: cd $HOME/tempD/nDPI/example && sudo ./dpi_average.sh
+
+ - name: copy result to temp_direc
+ shell: sudo cp $HOME/tempD/nDPI/example/dpi_dump.txt $HOME/qtip_result
+
+ - name: fetch dpi result transform script
+ copy: src={{workingdir}}/qtip/utils/transform/dpi_transform.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: Transforming results
+ shell: cd $HOME/qtip_result && sudo python dpi_transform.py
+
+ - name: copy report formation script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: consolidating report
+ shell: cd $HOME/qtip_result && sudo python final_report.py DPI {{fname}}
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/dpi/dpi_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/dpi/dpi_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning tempD
+ file: path={{home_dir.stdout}}/tempD state=absent
+
+ - name: cleaning_qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/dpi/dpi_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/dpi/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/dpi/logs state=directory
+
+ - name: extracting_log
+ shell: (find {{Dest_dir}}/dpi/dpi_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/dpi/logs)
+
+ - name: removing dpi_temp
+ file: path={{Dest_dir}}/dpi/dpi_temp state=absent
diff --git a/legacy/assets/perftest/etc/dpi_average.sh b/legacy/assets/perftest/etc/dpi_average.sh
new file mode 100644
index 00000000..405d3ff6
--- /dev/null
+++ b/legacy/assets/perftest/etc/dpi_average.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+COUNTER=0
+WDIR=$PWD
+while [ $COUNTER -lt 10 ]; do
+
+ echo $WDIR
+ $( ./ndpiReader -i test.pcap >> $WDIR/dpi_dump.txt )
+ let COUNTER=COUNTER+1
+ echo "Run number: $COUNTER"
+
+done
+
+
diff --git a/legacy/assets/perftest/etc/fio_test_job b/legacy/assets/perftest/etc/fio_test_job
new file mode 100644
index 00000000..6817abca
--- /dev/null
+++ b/legacy/assets/perftest/etc/fio_test_job
@@ -0,0 +1,13 @@
+[global]
+
+runtime= 600
+ioengine=libaio
+iodepth=2
+direct=1
+bs=4k
+rw=randrw
+
+[job1]
+size=5G
+
+
diff --git a/legacy/assets/perftest/etc/info_collect.py b/legacy/assets/perftest/etc/info_collect.py
new file mode 100644
index 00000000..3fc35d5a
--- /dev/null
+++ b/legacy/assets/perftest/etc/info_collect.py
@@ -0,0 +1,86 @@
+import os
+import pickle
+import json
+import sys
+
+os.system('inxi -b -c0 -n > $PWD/est_2')
+est_ob = open("est_2", "r+")
+est_ob2 = open("est_1", "w+")
+in_string = est_ob.read().replace('\n', ' ')
+cpu_idle = float(os.popen("""top -bn1 | grep "Cpu(s)" | awk '{print $8}'""").read().rstrip())
+cpu_usage = 100 - cpu_idle
+est_ob2.write(in_string)
+est_ob.close()
+est_ob2.close()
+
+inxi_host = os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Host:).*(?=Kernel)' """).read().lstrip().rstrip()
+inxi_mem = os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Memory:).*(?=MB)' """).read().lstrip().rstrip() + "MB"
+inxi_cpu = os.popen("""cat $PWD/est_1 | grep -o -P '(?<=CPU).*(?=speed)' | cut -f2 -d':'""").read().lstrip().rstrip()
+inxi_distro = os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Distro:).*(?=Machine:)' """).read().rstrip().lstrip()
+inxi_kernel = os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Kernel:).*(?=Console:)' """).read().rstrip().lstrip()
+inxi_HD = os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=HDD Total Size:).*(?=Info:)' """).read().rstrip().lstrip()
+inxi_product = os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=product:).*(?=Mobo:)' """).read().rstrip().lstrip()
+
+info_dict = {'hostname': inxi_host,
+ 'product': inxi_product,
+ 'os': inxi_distro,
+ 'kernel': inxi_kernel,
+ 'cpu': inxi_cpu,
+ 'cpu_usage': '{0}%'.format(str(round(cpu_usage, 3))),
+ 'memory_usage': inxi_mem,
+ 'disk_usage': inxi_HD}
+network_flag = str(sys.argv[1]).rstrip()
+
+if (network_flag == 'n'):
+
+ info_dict['network_interfaces'] = {}
+ tem_2 = """ cat $PWD/est_1 | grep -o -P '(?<=Network:).*(?=Info:)'"""
+ print os.system(tem_2 + ' > Hello')
+ i = int(os.popen(tem_2 + " | grep -o 'Card' | wc -l ").read())
+ print i
+
+ for x in range(1, i + 1):
+ tem = """ cat $PWD/est_1 | grep -o -P '(?<=Card-""" + str(x) + """:).*(?=Card-""" + str(x + 1) + """)'"""
+ if i == 1:
+ tem = """ cat $PWD/est_1 | grep -o -P '(?<=Network:).*(?=Info:)'"""
+ inxi_card_1 = ((os.popen(tem + " | grep -o -P '(?<=Card:).*(?=Drives:)'|sed 's/ *driver:.*//'").read().rstrip().lstrip()))
+ print inxi_card_1
+ info_dict['network_interfaces']['interface_' + str(x)] = {}
+ info_dict['network_interfaces']['interface_' + str(x)]['network_card'] = inxi_card_1
+ inxi_card_2 = ((os.popen(tem + "| grep -o -P '(?<=Card:).*(?=Drives:)'|sed -e 's/^.*IF: //'").read())).rstrip().lstrip()
+ info_dict['network_interfaces']['interface_' + str(x)]['interface_info'] = inxi_card_2
+ elif x < (i):
+ print "two"
+ inxi_card_1 = ((os.popen(tem + "| sed 's/ *driver:.*//'").read().rstrip().lstrip()))
+ info_dict['network_interfaces']['interface_' + str(x)] = {}
+ info_dict['network_interfaces']['interface_' + str(x)]['network_Card'] = inxi_card_1
+ inxi_card_2 = ((os.popen(tem + "|sed -e 's/^.*IF: //'").read())).rstrip().lstrip()
+ info_dict['network_interfaces']['interface_' + str(x)]['interface_info'] = inxi_card_2
+ elif x == i:
+ print "Three"
+ info_dict['network_interfaces']['interface_' + str(x)] = {}
+ inxi_card_1 = ((os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Card-""" + str(x) + """:).*(?=Drives:)'| sed 's/ *driver:.*//' """).read().rstrip().lstrip()))
+ info_dict['network_interfaces']['interface_' + str(x)]['network_Card'] = inxi_card_1
+ inxi_card_2 = ((os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Card-""" + str(x) + """:).*(?=Drives:)'| sed -e 's/^.*IF: //' """).read().rstrip().lstrip()))
+ info_dict['network_interfaces']['interface_' + str(x)]['interface_info'] = inxi_card_2
+ else:
+ print "No network cards"
+ os.system("bwm-ng -o plain -c 1 | grep -v '=' | grep -v 'iface' | grep -v '-' > bwm_dump")
+ n_interface = int(os.popen(" cat bwm_dump | grep -v 'total' | wc -l ").read().rstrip())
+ interface = {}
+ for x in range(1, n_interface):
+ interface_name = os.popen(" cat bwm_dump | awk 'NR==" + str(x) + "' | awk '{print $1}' ").read().rstrip().replace(':', '')
+ interface[str(interface_name)] = {}
+ interface[str(interface_name)]['Rx (KB/s)'] = os.popen(" cat bwm_dump | awk 'NR==" + str(x) + "' | awk '{print $2}' ").read().rstrip()
+ interface[str(interface_name)]['Tx (KB/s)'] = os.popen(" cat bwm_dump | awk 'NR==" + str(x) + "' | awk '{print $4}' ").read().rstrip()
+ interface[str(interface_name)]['Total (KB/s)'] = os.popen(" cat bwm_dump | awk 'NR== " + str(x) + "' | awk '{print $6}' ").read().rstrip()
+
+ info_dict['interface_io'] = interface
+
+print info_dict
+
+with open('./sys_info_temp', 'w+')as out_info:
+ pickle.dump(info_dict, out_info)
+
+with open('temp', 'w+') as result_json:
+ json.dump(info_dict, result_json, indent=4, sort_keys=True)
diff --git a/legacy/assets/perftest/fio.yaml b/legacy/assets/perftest/fio.yaml
new file mode 100644
index 00000000..0da9407d
--- /dev/null
+++ b/legacy/assets/perftest/fio.yaml
@@ -0,0 +1,112 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making fio directory
+ file: path={{Dest_dir}}/fio state=directory
+
+ - name: making temporary fio directory
+ file: path={{Dest_dir}}/fio/fio_temp state=directory
+
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: checking home directory
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning fio directory
+ file: path={{home_dir.stdout}}/fio state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: making fio temporary directory
+ file: path={{home_dir.stdout}}/fio state=directory
+
+ - name: making results temporary directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing fio dependencies when CentOS
+ shell: sudo yum install wget gcc libaio-devel -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing fio dependencies when Ubuntu
+ shell: sudo apt-get install wget gcc libaio-dev -y
+ when: ansible_os_family == "Debian"
+
+ - name: Fetching fio
+ shell: cd $HOME/fio/ && wget http://freecode.com/urls/3aa21b8c106cab742bf1f20d60629e3f -O fio.tar.gz
+
+ - name: Untar fio
+ shell: cd $HOME/fio/ && sudo tar -zxvf fio.tar.gz
+
+ - name: configure
+ shell: cd $HOME/fio/fio-2.1.10 && sudo ./configure && sudo make
+
+ - name: Fetching fio job
+ copy: src=./etc/fio_test_job dest={{home_dir.stdout}}/fio/fio-2.1.10/
+
+ - name: Benchmarking block storage through fio
+ shell: cd $HOME/fio/fio-2.1.10 && sudo ./fio --output-format=json --output=$HOME/qtip_result/fio_result.json fio_test_job
+
+ - name: Fetching result transformation script
+ copy: src={{workingdir}}/qtip/utils/transform/fio_transform.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: Transforming result
+ shell: cd $HOME/qtip_result && sudo python fio_transform.py
+
+ - name: copy report formation script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: consolidating report
+ shell: cd $HOME/qtip_result && sudo python final_report.py FIO {{fname}}
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/fio/fio_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/fio/fio_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning fio
+ file: path={{home_dir.stdout}}/fio state=absent
+
+ - name: cleaning_qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/fio/fio_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/fio/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/fio/logs state=directory
+
+ - name: extracting_log
+ shell: (find {{Dest_dir}}/fio/fio_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/fio/logs)
+
+ - name: removing fio_log
+ file: path={{Dest_dir}}/fio/fio_temp state=absent
diff --git a/legacy/assets/perftest/iperf.yaml b/legacy/assets/perftest/iperf.yaml
new file mode 100644
index 00000000..a1755f7c
--- /dev/null
+++ b/legacy/assets/perftest/iperf.yaml
@@ -0,0 +1,162 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making Iperf directory
+ file: path={{Dest_dir}}/iperf state=directory
+
+ - name: making temporary iperf directory
+ file: path={{Dest_dir}}/iperf/iperf_temp state=directory
+
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: Rolename
+ set_fact:
+ rolename: "{{role}}"
+ when: role is defined
+
+ - name: installertype
+ set_fact:
+ installertype: "{{installer}}"
+
+ - name: Get Hostname
+ shell: echo $HOSTNAME
+ register: hostID
+
+ - name: echo
+ shell: echo index_var
+
+ - name: checking home directory
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning iperf directory
+ file: path={{home_dir.stdout}}/iperf state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: making Iperf temporary directory
+ file: path={{home_dir.stdout}}/iperf state=directory
+
+ - name: making results temporary directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: true
+
+ - name: Installing Epel-release when CentOS
+ shell: sudo yum install epel-release -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Allow iperf server port in iptables input rules
+ shell: iptables -A INPUT -p tcp --dport {{iperf_port}} -j ACCEPT
+ vars:
+ iperf_port: 5201
+ ignore_errors: yes
+ when: rolename == "1-server" and installertype == 'fuel'
+
+ - name: Installing IPERF when Ubuntu
+ shell: sudo apt-get install iperf3 -y
+ when: ansible_os_family == "Debian"
+
+ - name: Installing Iperf3
+ shell: sudo yum install iperf3 -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Running iperf on server
+ shell: iperf3 -s
+ async: 400
+ poll: 0
+ when: rolename == "1-server"
+
+ - name: Running Iperf on Host
+ shell: iperf3 --time {{duration}} -b 0 G -c {{ip1}} -J -O10 >> {{home_dir.stdout}}/qtip_result/iperf_raw.json
+ ignore_errors: yes
+ with_items:
+ - "{{ip1}}"
+ when: rolename == "2-host" and "{{privateip1}}" == "NONE"
+
+ - name: Running Iperf on Host
+ shell: iperf3 --time {{duration}} -b 0 G -c {{privateip1}} -J -O10 >> {{home_dir.stdout}}/qtip_result/iperf_raw.json
+ ignore_errors: yes
+ with_items:
+ - "{{ip1}}"
+ when: rolename == "2-host" and "{{privateip1}}" != "NONE"
+
+ - name: Fetching result transformation script
+ copy: src={{workingdir}}/qtip/utils/transform/iperf_transform.py dest={{home_dir.stdout}}/qtip_result
+ - name: Transforming result
+
+ shell: cd $HOME/qtip_result && sudo python iperf_transform.py
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: copy report formation script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: consolidating report
+ shell: cd $HOME/qtip_result && sudo python final_report.py IPERF {{fname}}
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: Files to Copy
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/iperf/iperf_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/iperf/iperf_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+ when: rolename =="2-host" and "{{ip2}}" == ''
+
+ - name: cleaning iperf directory
+ file: path={{home_dir.stdout}}/iperf state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: Rolename
+ set_fact:
+ rolename: "{{role}}"
+ when: role is defined
+
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/iperf/iperf_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/iperf/)
+ when: rolename == "2-host"
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/iperf/logs state=directory
+
+ - name: extracting_log
+ shell: ( find {{Dest_dir}}/iperf/iperf_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/iperf/logs)
+ when: rolename == "2-host"
+
+ - name: removing iperf_raw file
+ file: path={{Dest_dir}}/iperf/iperf_raw.json state=absent
+ when: rolename == "2-host"
+
+ - name: removing iperf_temp
+ file: path={{Dest_dir}}/iperf/iperf_temp state=absent
diff --git a/legacy/assets/perftest/ramspeed.yaml b/legacy/assets/perftest/ramspeed.yaml
new file mode 100644
index 00000000..83ecd8bf
--- /dev/null
+++ b/legacy/assets/perftest/ramspeed.yaml
@@ -0,0 +1,115 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making ramspeed directory
+ file: path={{Dest_dir}}/ramspeed state=directory
+
+ - name: making temporary ramspeed directory
+ file: path={{Dest_dir}}/ramspeed/ramspeed_temp state=directory
+
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: checking home directory
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning ramspeed directory
+ file: path={{home_dir.stdout}}/ramspeed state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: making ramspeed temporary directory
+ file: path={{home_dir.stdout}}/ramspeed state=directory
+
+ - name: making results temporary directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing RAM_Speed dependencies when CentOS
+ shell: sudo yum install wget gcc -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing RAM_Speed dependencies when Ubuntu
+ shell: sudo apt-get install wget gcc -y
+ when: ansible_os_family == "Debian"
+
+ - name: make dummy file
+ shell: sudo touch $HOME/ramspeed/ramspeed.tar.gz
+
+ - name: Fetching RAM_Speed
+ shell: cd $HOME/ramspeed/ && sudo wget -O ramspeed.tar.gz https://docs.google.com/uc?id=0B92Bp5LZTM7gRFctalZLMktTNDQ
+
+ - name: Untar RAM_SPeed
+ shell: cd $HOME/ramspeed/ && sudo tar -zxvf ramspeed.tar.gz
+
+ - name: configure
+ shell: cd $HOME/ramspeed/ramsmp-3.5.0 && ./build.sh
+
+ - name: Benchmarking IntMem Bandwidth
+ shell: cd $HOME/ramspeed/ramsmp-3.5.0 && ./ramsmp -b 3 -l 5 -p 1 >> $HOME/qtip_result/Intmem
+
+ - name: Benchmarking FloatMem Bandwidth
+ shell: cd $HOME/ramspeed/ramsmp-3.5.0 && ./ramsmp -b 6 -l 5 -p 1 >> $HOME/qtip_result/Floatmem
+
+ - name: Fetching result transformation script
+ copy: src={{workingdir}}/qtip/utils/transform/ramspeed_transform.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: Transforming result
+ shell: cd $HOME/qtip_result && sudo python ramspeed_transform.py
+
+ - name: copy report formation script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: consolidating report
+ shell: cd $HOME/qtip_result && sudo python final_report.py RamSpeed {{fname}}
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/ramspeed/ramspeed_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/ramspeed/ramspeed_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning ramspeed directory
+ file: path={{home_dir.stdout}}/ramspeed state=absent
+
+ - name: cleaning previous results
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: extracting_json
+ shell: (find /{{Dest_dir}}/ramspeed/ramspeed_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/ramspeed/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/ramspeed/logs state=directory
+
+ - name: extracting_log
+ shell: ( find {{Dest_dir}}/ramspeed/ramspeed_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/ramspeed/logs)
+
+ - name: removing ramspeed_log
+ file: path={{Dest_dir}}/ramspeed/ramspeed_temp state=absent
diff --git a/legacy/assets/perftest/ssl.yaml b/legacy/assets/perftest/ssl.yaml
new file mode 100644
index 00000000..6002bfff
--- /dev/null
+++ b/legacy/assets/perftest/ssl.yaml
@@ -0,0 +1,119 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making ssl directory
+ file: path={{Dest_dir}}/ssl state=directory
+
+ - name: making temporary ssl directory
+ file: path={{Dest_dir}}/ssl/ssl_temp state=directory
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: checking home directory
+ shell: sudo echo $HOME
+ register: home_dir
+
+ - name: cleaning Open_SSL directory
+ file: path={{home_dir.stdout}}/Open_SSL state=absent
+
+ - name: cleaning_qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: making OpenSSL temporary directory
+ file: path={{home_dir.stdout}}/Open_SSL state=directory
+
+ - name: making results temporary directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing OpenSSL dependencies when CentOS
+ shell: sudo yum install git wget gcc patch perl-Time-HiRes autofconf automake libpcap-devel libtool -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing OpenSSL dependencies when Ubuntu
+ shell: sudo apt-get install git gcc wget perl autoconf automake libpcap-dev libtool -y
+ when: ansible_os_family == "Debian"
+
+ - name: Fetching OpenSSL
+ shell: cd $HOME/Open_SSL/ && sudo wget http://artifacts.opnfv.org/qtip/utilities/openssl-1.0.2f.tar.gz
+
+ - name: Untar OpenSSL
+ shell: cd $HOME/Open_SSL/ && sudo tar -zxvf openssl-1.0.2f.tar.gz
+ - name: configure
+ shell: cd $HOME/Open_SSL/openssl-1.0.2f && sudo ./config
+
+ - name: make
+ shell: cd $HOME/Open_SSL/openssl-1.0.2f && sudo make
+
+ - name: make install
+ shell: cd $HOME/Open_SSL/openssl-1.0.2f && sudo make install
+
+ - name: Benchmarking RSA signatures
+ shell: cd $HOME/Open_SSL/openssl-1.0.2f/apps && sudo ./openssl speed rsa >> $HOME/qtip_result/RSA_dump
+
+ - name: Benchmaring AES-128-cbc cipher encryption throughput
+ shell: cd $HOME/Open_SSL/openssl-1.0.2f/apps && sudo ./openssl speed -evp aes-128-cbc >> $HOME/qtip_result/AES-128-CBC_dump
+
+ - name: Fetching result transformation script
+ copy: src={{workingdir}}/qtip/utils/transform/ssl_transform.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: Transforming result
+ shell: cd $HOME/qtip_result && python ssl_transform.py
+
+ - name: copy report formation script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result
+
+ - name: consolidating report
+ shell: cd $HOME/qtip_result && python final_report.py SSL {{fname}}
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/ssl/ssl_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/ssl/ssl_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning Open_SSL directory
+ file: path={{home_dir.stdout}}/Open_SSL state=absent
+
+ - name: cleaning_qtip_result
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: echo
+ shell: echo $PWD
+
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/ssl/ssl_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/ssl/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/ssl/logs state=directory
+
+ - name: extracting_log
+ shell: (find {{Dest_dir}}/ssl/ssl_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/ssl/logs)
+
+ - name: removing ssl_temp
+ file: path={{Dest_dir}}/ssl/ssl_temp state=absent
diff --git a/legacy/assets/perftest/summary b/legacy/assets/perftest/summary
new file mode 100644
index 00000000..5891408c
--- /dev/null
+++ b/legacy/assets/perftest/summary
@@ -0,0 +1,23 @@
+---
+
+ test_cases:
+ - name: fio
+ description: Storage performance benchmark
+
+ - name: iperf
+ description: Measures the network throughput
+
+ - name: dpi
+ description: Traffic classification rate provides a measure for CPU performance
+
+ - name: ssl
+ description: CPU performance benchmark
+
+ - name: dhrystone
+ description: Evaluate CPU's integer operation performance
+
+ - name: whetstone
+ description: Evaluate CPU's floating point performance
+
+ - name: ramspeed
+ description: Measures the memory performance of a machine
diff --git a/legacy/assets/perftest/whetstone.yaml b/legacy/assets/perftest/whetstone.yaml
new file mode 100644
index 00000000..d6eae85f
--- /dev/null
+++ b/legacy/assets/perftest/whetstone.yaml
@@ -0,0 +1,111 @@
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: making whetstone directory
+ file: path={{Dest_dir}}/whetstone state=directory
+
+ - name: making temporary whetstone directory
+ file: path={{Dest_dir}}/whetstone/whetstone_temp state=directory
+
+ - hosts: "{{role}}"
+ become: yes
+ remote_user: "{{username}}"
+
+ tasks:
+ - name: storing_home
+ shell: echo $HOME
+ register: home_dir
+
+ - name: cleaning tempT directory
+ file: path={{home_dir.stdout}}/tempT state=absent
+
+ - name: cleaning qtip result directory
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - name: making qtip_result directory
+ file: path={{home_dir.stdout}}/qtip_result state=directory
+
+ - include: ./common/sys_proxy_pbook.yaml
+
+ - include: ./common/sys_info_pbook.yaml
+ vars:
+ network: false
+
+ - name: Installing UnixBench dependencies if CentOS
+ shell: sudo yum install git gcc patch perl-Time-HiRes -y
+ when: ansible_os_family == "RedHat"
+
+ - name: Installing UnixBench dependencies if Ubuntu
+ shell: sudo apt-get install git gcc patch perl -y
+ when: ansible_os_family == "Debian"
+
+ - include: ./common/git_proxy_pbook.yaml
+
+ - name: Clone unixbench
+ git: repo=https://github.com/kdlucas/byte-unixbench.git
+ dest=$HOME/tempT
+
+ - name: make
+ shell: sudo make --directory $HOME/tempT/UnixBench/
+
+ - name: Run Whetstone
+ shell: cd $HOME/tempT/UnixBench/&&./Run -v whetstone
+
+ - name: collecting and transforming result script copy
+ copy: src={{workingdir}}/qtip/utils/transform/ubench_transform.py dest={{home_dir.stdout}}/qtip_result/
+
+ - name: transforming result
+ shell: cd $HOME/qtip_result && sudo python ubench_transform.py
+
+ - name: copying consolidated report script
+ copy: src={{workingdir}}/qtip/utils/transform/final_report.py dest={{home_dir.stdout}}/qtip_result/
+
+ - name: making consolidated report
+ shell: cd $HOME/qtip_result && sudo python final_report.py Whetstone {{fname}}
+
+ - name: making directory
+ file: path={{home_dir.stdout}}/qtip_result/log state=directory
+
+ - name: copying result to temp directory
+ shell: sudo cp -r $HOME/tempT/UnixBench/results/* $HOME/qtip_result/log
+
+ - name: registering files
+ shell: (cd $HOME/qtip_result/; find . -maxdepth 1 -name "*.json") | cut -d'/' -f2
+ register: files_to_copy
+
+ - name: copy results
+ fetch: src={{home_dir.stdout}}/qtip_result/{{item}} dest={{Dest_dir}}/whetstone/whetstone_temp
+ with_items: "{{files_to_copy.stdout_lines}}"
+
+ - name: registering log files
+ shell: (cd $HOME/qtip_result/log/; find . -maxdepth 1 -name "*.log") | cut -d'/' -f2
+ register: copy_log_results
+
+ - name: copying log results
+ fetch: src={{home_dir.stdout}}/qtip_result/log/{{item}} dest={{Dest_dir}}/whetstone/whetstone_temp
+ with_items: "{{copy_log_results.stdout_lines}}"
+
+ - name: cleaning tempT directory
+ file: path={{home_dir.stdout}}/tempT state=absent
+
+ - name: cleaning qtip result directory
+ file: path={{home_dir.stdout}}/qtip_result state=absent
+
+ - hosts: localhost
+ connection: local
+ gather_facts: no
+
+ tasks:
+ - name: extracting_json
+ shell: (find {{Dest_dir}}/whetstone/whetstone_temp/ -name "*.json" | xargs cp -t {{Dest_dir}}/whetstone/)
+
+ - name: making_logs_folder
+ file: path={{Dest_dir}}/whetstone/logs state=directory
+
+ - name: extracting_log
+ shell: (find {{Dest_dir}}/whetstone/whetstone_temp/ -name "*.log" | xargs cp -t {{Dest_dir}}/whetstone/logs)
+
+ - name: removing whetstone_temp
+ file: path={{Dest_dir}}/whetstone/whetstone_temp state=absent
diff --git a/legacy/assets/suite/compute b/legacy/assets/suite/compute
new file mode 100644
index 00000000..3bf1b184
--- /dev/null
+++ b/legacy/assets/suite/compute
@@ -0,0 +1,16 @@
+{
+ "bm": [
+ "dhrystone_bm.yaml",
+ "whetstone_bm.yaml",
+ "ramspeed_bm.yaml",
+ "dpi_bm.yaml",
+ "ssl_bm.yaml"
+ ],
+ "vm": [
+ "dhrystone_vm.yaml",
+ "whetstone_vm.yaml",
+ "ramspeed_vm.yaml",
+ "dpi_vm.yaml",
+ "ssl_vm.yaml"
+ ]
+}
diff --git a/legacy/assets/suite/compute.yaml b/legacy/assets/suite/compute.yaml
new file mode 100644
index 00000000..197d5720
--- /dev/null
+++ b/legacy/assets/suite/compute.yaml
@@ -0,0 +1,46 @@
+QPI: compute
+description: sample performance index of computing
+
+formula: weighted arithmetic mean
+
+section:
+- name: Integer
+ weight: 0.3
+ formula: geometric mean
+ perftests:
+ - name: dhrystone
+ workloads:
+ - single_cpu
+ - multi_cpu
+- name: Floating
+ weight: 0.3
+ formula: geometric mean
+ perftests:
+ - name: whetstone
+ workloads:
+ - single_cpu
+ - multi_cpu
+- name: Memory
+ weight: 0.2
+ formula: geometric mean
+ perftests:
+ - name: ramspeed
+ workloads:
+ - int: [add, average, copy, scale, triad]
+ - float: [add, average, copy, scale, triad]
+- name: DPI
+ weight: 0.1
+ formula: geometric mean
+ perftests:
+ - name: dpi
+ workloads:
+ - bps
+ - pps
+- name: SSL
+ weight: 0.1
+ formula: geometric mean
+ perftests:
+ - name: ssl
+ workloads:
+ - aes_128_cbc: [512, 1024, 2048, 4096]
+ - rsa_sig: [16, 64, 256, 1024, 8192]
diff --git a/legacy/assets/suite/network b/legacy/assets/suite/network
new file mode 100644
index 00000000..58ce5cb9
--- /dev/null
+++ b/legacy/assets/suite/network
@@ -0,0 +1,9 @@
+{
+ "bm": [
+ "iperf_bm.yaml"
+ ],
+ "vm": [
+ "iperf_vm.yaml",
+ "iperf_vm_2.yaml"
+ ]
+}
diff --git a/legacy/assets/suite/storage b/legacy/assets/suite/storage
new file mode 100644
index 00000000..f3068dd5
--- /dev/null
+++ b/legacy/assets/suite/storage
@@ -0,0 +1,8 @@
+{
+ "bm": [
+ "fio_bm.yaml"
+ ],
+ "vm": [
+ "fio_vm.yaml"
+ ]
+}
diff --git a/legacy/assets/testplan/default/compute/dhrystone_bm.yaml b/legacy/assets/testplan/default/compute/dhrystone_bm.yaml
new file mode 100644
index 00000000..64741537
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/dhrystone_bm.yaml
@@ -0,0 +1,33 @@
+
+Scenario:
+ benchmark: dhrystone
+ host: machine_1, machine_2
+ server:
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ ''' This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role: '''
diff --git a/legacy/assets/testplan/default/compute/dhrystone_vm.yaml b/legacy/assets/testplan/default/compute/dhrystone_vm.yaml
new file mode 100644
index 00000000..8f5a4165
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/dhrystone_vm.yaml
@@ -0,0 +1,45 @@
+Scenario:
+ benchmark: dhrystone
+ host: virtualmachine_1, virtualmachine_2
+ server: blakc
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ '''This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+ machine_1:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: host
+ machine_2:
+ ip: 172.18.0.15
+ pw: Op3nStack
+ role: host
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/compute/dpi_bm.yaml b/legacy/assets/testplan/default/compute/dpi_bm.yaml
new file mode 100644
index 00000000..14cb6d0d
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/dpi_bm.yaml
@@ -0,0 +1,34 @@
+Scenario:
+ benchmark: dpi
+ host: machine_1,machine_2
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+ Virtual_Machines:
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dpi"
+ Overview: >
+ '''This test will run the DPI benchmark in serial on virutalmachine_1 and virtualmachine_2.\n
+ if you wish to add a host machine add the following information under the Host_Machine tag
+ virtualmachine_2:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+
+ role: 1host
+ flavor: m1.large
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/compute/dpi_vm.yaml b/legacy/assets/testplan/default/compute/dpi_vm.yaml
new file mode 100644
index 00000000..10e86993
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/dpi_vm.yaml
@@ -0,0 +1,35 @@
+Scenario:
+ benchmark: dpi
+ 1Run : virtualmachine_1, virtualmachine_2
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1Run
+ flavor: m1.large
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1Run
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dpi"
+ Overview: >
+ '''This test will run the DPI benchmark in parallel on virutalmachine_1 and virtualmachine_2.\n
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/compute/ramspeed_bm.yaml b/legacy/assets/testplan/default/compute/ramspeed_bm.yaml
new file mode 100644
index 00000000..ed8fc700
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/ramspeed_bm.yaml
@@ -0,0 +1,34 @@
+Scenario:
+ benchmark: ramspeed
+ host: machine_1, machine_2
+ server:
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ ''' This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role: '''
+
+
diff --git a/legacy/assets/testplan/default/compute/ramspeed_vm.yaml b/legacy/assets/testplan/default/compute/ramspeed_vm.yaml
new file mode 100644
index 00000000..a6a4363f
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/ramspeed_vm.yaml
@@ -0,0 +1,45 @@
+Scenario:
+ benchmark: ramspeed
+ host: virtualmachine_1, virtualmachine_2
+ server: blakc
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ '''This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+ machine_1:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: host
+ machine_2:
+ ip: 172.18.0.15
+ pw: Op3nStack
+ role: host
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/compute/ssl_bm.yaml b/legacy/assets/testplan/default/compute/ssl_bm.yaml
new file mode 100644
index 00000000..cc5a8903
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/ssl_bm.yaml
@@ -0,0 +1,31 @@
+Scenario:
+ benchmark: ssl
+ host: machine_1,machine_2
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "ssl"
+ Overview: >
+ '''This test will run the SSL benchmark in parallel on machine_1 and machine_1.
+ If you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
diff --git a/legacy/assets/testplan/default/compute/ssl_vm.yaml b/legacy/assets/testplan/default/compute/ssl_vm.yaml
new file mode 100644
index 00000000..37824896
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/ssl_vm.yaml
@@ -0,0 +1,36 @@
+Scenario:
+ benchmark: ssl
+ host: virtualmachine_1, virtualmachine_2
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: 'QTIP_CentOS'
+ flavor: 'm1.large'
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: 'QTIP_CentOS'
+ flavor: 'm1.large'
+ role: host
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "ssl"
+ Overview: >
+ '''This test will run the SSL benchmark in parallel on virtualmachine_1 and machine_1.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
diff --git a/legacy/assets/testplan/default/compute/whetstone_bm.yaml b/legacy/assets/testplan/default/compute/whetstone_bm.yaml
new file mode 100644
index 00000000..3c128b60
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/whetstone_bm.yaml
@@ -0,0 +1,33 @@
+Scenario:
+ benchmark: whetstone
+ host: machine_1, machine_2
+
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+ Virtual_Machines:
+
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "whetstone"
+ Overview: >
+ ''' This test will run the whetstone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a baremetal machine add the following information under the Virtual_Machine tag
+
+ machine_3:
+ ip:
+ pw:
+ role:
+ '''
+
+
diff --git a/legacy/assets/testplan/default/compute/whetstone_vm.yaml b/legacy/assets/testplan/default/compute/whetstone_vm.yaml
new file mode 100644
index 00000000..0f1e8748
--- /dev/null
+++ b/legacy/assets/testplan/default/compute/whetstone_vm.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: whetstone
+ host: virtualmachine_1, virtualmachine_1
+ server:
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ '''This test will run the whetstone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+ virtualmachine_1:
+ availability_zone: nova
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/network/iperf_bm.yaml b/legacy/assets/testplan/default/network/iperf_bm.yaml
new file mode 100644
index 00000000..3aa8310d
--- /dev/null
+++ b/legacy/assets/testplan/default/network/iperf_bm.yaml
@@ -0,0 +1,50 @@
+Scenario:
+ benchmark: iperf
+ topology: Client and Server on different baremetal Compute nodes
+ server: machine_1
+ client: machine_2
+ benchmark_details:
+ duration: 20
+ protocol: tcp
+ bandwidthGbps: 10
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: 1-server
+ machine_2:
+ ip:
+ pw:
+ role: 2-host
+
+ Virtual_Machines:
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/network/iperf_vm.yaml b/legacy/assets/testplan/default/network/iperf_vm.yaml
new file mode 100644
index 00000000..49bf13ad
--- /dev/null
+++ b/legacy/assets/testplan/default/network/iperf_vm.yaml
@@ -0,0 +1,43 @@
+Scenario:
+ benchmark: iperf
+ topology: Client and Server on ONE compute
+ server : virtualmachine_1
+ client: virtualmachine_2
+ description: 'Leave the bandwidth as 0 to throttle maximum traffic'
+ benchmark_details:
+ duration: 20
+ protocol: tcp
+ bandwidthGbps: 0
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/network/iperf_vm_2.yaml b/legacy/assets/testplan/default/network/iperf_vm_2.yaml
new file mode 100644
index 00000000..c5b94715
--- /dev/null
+++ b/legacy/assets/testplan/default/network/iperf_vm_2.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: iperf
+ topology: Client and Server on two different compute nodes
+ server : virtualmachine_1
+ client: virtualmachine_2
+ description: 'Leave the bandwidth as 0 to throttle maximum traffic'
+ benchmark_details:
+ duration: 20
+ protocol: tcp
+ bandwidthGbps: 0
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/legacy/assets/testplan/default/storage/fio_bm.yaml b/legacy/assets/testplan/default/storage/fio_bm.yaml
new file mode 100644
index 00000000..d0001ea2
--- /dev/null
+++ b/legacy/assets/testplan/default/storage/fio_bm.yaml
@@ -0,0 +1,39 @@
+Scenario:
+ benchmark: fio
+ host: machine_1, machine_2
+ server:
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip:
+ pw:
+ role: host
+ machine_2:
+ ip:
+ pw:
+ role: host
+
+
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Storage"
+ Benchmark: "FIO"
+ Overview: >
+ '''This test will run the FIO benchmark in parallel on host machines "machine_1" and "machine_2".\n
+ The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+ The job conists of an fio load of:
+ 1.50% rand read 50% rand write
+ 2.Asynch engine
+ 3.Direct IO.
+ 4.Queing depth of 2
+
+ if you wish to add another machine add the following information under the Host_Machines tag
+ machine_3:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: host
+ '''
+
diff --git a/legacy/assets/testplan/default/storage/fio_vm.yaml b/legacy/assets/testplan/default/storage/fio_vm.yaml
new file mode 100644
index 00000000..0e7f121b
--- /dev/null
+++ b/legacy/assets/testplan/default/storage/fio_vm.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: fio
+ host: virtualmachine_1, virtualmachine_2
+ server:
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+Test_Description:
+ Test_category: "Storage"
+ Benchmark: "FIO"
+ Overview: >
+ '''This test will run the FIO benchmark in parallel on virtualmachine_1 and virtualmachine_2.\n
+ The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+ The job conists of an fio load of:
+ 1.50% rand read 50% rand write
+ 2.Asynch engine
+ 3.Direct IO.
+ 4.Queing depth of 2
+
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_3:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+