summaryrefslogtreecommitdiffstats
path: root/dovetail
diff options
context:
space:
mode:
Diffstat (limited to 'dovetail')
-rw-r--r--dovetail/conf/cmd_config.yml6
-rw-r--r--dovetail/conf/dovetail_config.yml4
-rw-r--r--dovetail/conf/functest_config.yml1
-rw-r--r--dovetail/conf/yardstick_config.yml1
-rw-r--r--dovetail/container.py6
-rw-r--r--dovetail/utils/dovetail_utils.py19
6 files changed, 35 insertions, 2 deletions
diff --git a/dovetail/conf/cmd_config.yml b/dovetail/conf/cmd_config.yml
index e2159ca7..1c6418cb 100644
--- a/dovetail/conf/cmd_config.yml
+++ b/dovetail/conf/cmd_config.yml
@@ -52,6 +52,12 @@ cli:
path:
- 'functest/docker_tag'
help: 'Overwrite tag for functest docker container (e.g. stable or latest)'
+ creds:
+ flags:
+ - '--creds'
+ path:
+ - 'creds'
+ help: 'Openstack Credential file location'
control:
testsuite:
flags:
diff --git a/dovetail/conf/dovetail_config.yml b/dovetail/conf/dovetail_config.yml
index 2476ed1f..c8f9fbe4 100644
--- a/dovetail/conf/dovetail_config.yml
+++ b/dovetail/conf/dovetail_config.yml
@@ -3,6 +3,10 @@ work_dir: /home/opnfv/dovetail
result_dir: /home/opnfv/dovetail/results
report_file: 'dovetail_report.txt'
cli_file_name: 'cmd_config.yml'
+
+# OPENSTACK Credential file
+creds: '/home/opnfv/dovetail/openstack.creds'
+
# TO DO: once version scheme settled, adjust accordingly
repo: 'https://github.com/opnfv/dovetail/tree/master/'
COMPLIANCE_PATH: compliance/
diff --git a/dovetail/conf/functest_config.yml b/dovetail/conf/functest_config.yml
index 682d19bf..ceb894b3 100644
--- a/dovetail/conf/functest_config.yml
+++ b/dovetail/conf/functest_config.yml
@@ -17,3 +17,4 @@ functest:
store_type: 'file'
file_path: 'tempest/tempest.log'
db_url: 'http://testresults.opnfv.org/test/api/v1/results?case=%s&last=1'
+ creds: '/home/opnfv/functest/conf/openstack.creds'
diff --git a/dovetail/conf/yardstick_config.yml b/dovetail/conf/yardstick_config.yml
index d13cf2c6..d971c104 100644
--- a/dovetail/conf/yardstick_config.yml
+++ b/dovetail/conf/yardstick_config.yml
@@ -24,3 +24,4 @@ yardstick:
store_type: 'file'
file_path: 'yardstick.log'
db_url: 'http://testresults.opnfv.org/test/api/v1/results?case=%s&last=1'
+ creds: '/home/opnfv/yardstick/openstack.creds'
diff --git a/dovetail/container.py b/dovetail/container.py
index 948dce93..62070442 100644
--- a/dovetail/container.py
+++ b/dovetail/container.py
@@ -46,10 +46,12 @@ class Container:
docker_image = cls.get_docker_image(type)
envs = dovetail_config[type]['envs']
opts = dovetail_config[type]['opts']
+ creds = ' -v %s:%s ' % (dovetail_config['creds'],
+ dovetail_config[type]['creds'])
result_volume = ' -v %s:%s ' % (dovetail_config['result_dir'],
dovetail_config[type]['result']['dir'])
- cmd = 'sudo docker run %s %s %s %s %s /bin/bash' % \
- (opts, envs, sshkey, result_volume, docker_image)
+ cmd = 'sudo docker run %s %s %s %s %s %s /bin/bash' % \
+ (opts, envs, sshkey, creds, result_volume, docker_image)
dt_utils.exec_cmd(cmd, cls.logger)
ret, container_id = \
dt_utils.exec_cmd("sudo docker ps | grep " + docker_image +
diff --git a/dovetail/utils/dovetail_utils.py b/dovetail/utils/dovetail_utils.py
index e4f91987..2d5f0dd1 100644
--- a/dovetail/utils/dovetail_utils.py
+++ b/dovetail/utils/dovetail_utils.py
@@ -10,6 +10,7 @@
#
import sys
+import time
import subprocess
from collections import Mapping, Set, Sequence
@@ -29,6 +30,15 @@ def exec_cmd(cmd, logger=None, exit_on_error=True, info=False,
print(msg_exec)
p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
+
+ # show progress bar
+ seconds = 0
+ while p.poll() is None:
+ seconds += 1
+ if seconds > 3:
+ show_progress_bar(seconds)
+ time.sleep(1)
+
output = p.communicate()
for line in output[0].strip().split('\n'):
line = line.replace('\n', '')
@@ -89,3 +99,12 @@ def get_obj_by_path(obj, dst_path):
for path, obj in objwalk(obj):
if path == dst_path:
return obj
+
+
+def show_progress_bar(length):
+ max_len = 50
+ length %= max_len
+ sys.stdout.write('Running ' + ' ' * max_len + '\r')
+ sys.stdout.flush()
+ sys.stdout.write('Running ' + '=' * length + '>' + '\r')
+ sys.stdout.flush()