aboutsummaryrefslogtreecommitdiffstats
path: root/func/cli.py
diff options
context:
space:
mode:
Diffstat (limited to 'func/cli.py')
-rw-r--r--func/cli.py60
1 files changed, 60 insertions, 0 deletions
diff --git a/func/cli.py b/func/cli.py
new file mode 100644
index 00000000..235040b5
--- /dev/null
+++ b/func/cli.py
@@ -0,0 +1,60 @@
+##############################################################################
+# Copyright (c) 2015 Dell Inc and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+import sys
+import os
+from func.env_setup import Env_setup
+from func.driver import Driver
+from func.spawn_vm import SpawnVM
+import argparse
+
+
+class cli():
+
+ def __init__(self):
+
+ parser = argparse.ArgumentParser()
+
+ parser.add_argument('-s ', '--suite', help='compute network storage ')
+ parser.add_argument('-b', '--benchmark',
+ help='''COMPUTE:
+ dhrystone_serial.yaml \n
+ dhrystone_paralle.yaml \n
+ whetstone_serial.yaml \n
+ whetstone_parllel.yaml \n
+ dpi_serial.yaml \n
+ dpi_paralle.yaml \n
+ ssl_serial.yaml \n
+ ssl_parallel.yaml ''')
+ args = parser.parse_args()
+ if not (args.suite or args.benchmark):
+ parser.error('Not enough arguments, -h, --help ')
+ sys.exit(0)
+ if (args.suite and args.benchmark):
+ obj = Env_setup()
+ if os.path.isfile(
+ './test_cases/' +
+ args.suite +
+ '/' +
+ args.benchmark):
+
+ [benchmark, roles, vm_info] = obj.parse(
+ './test_cases/' + args.suite + '/' + args.benchmark)
+
+ if len(vm_info) != 0:
+ vmObj = SpawnVM(vm_info)
+
+ obj.callpingtest()
+ obj.callsshtest()
+ obj.updateAnsible()
+ dvr = Driver()
+ dvr.drive_bench(benchmark, obj.roles_dict.items())
+ else:
+ print (args.benchmark, ' is not a Template in the Directory - \
+ Enter a Valid file name. or use qtip.py -h for list')