summaryrefslogtreecommitdiffstats
path: root/dovetail/test_runner.py
diff options
context:
space:
mode:
authorxudan <xudan16@huawei.com>2018-03-23 00:03:58 -0400
committerGeorg Kunz <georg.kunz@ericsson.com>2018-04-10 10:21:02 +0000
commit8b0d80d556dfd7935b6464ec76b49c9c0e6249e0 (patch)
tree4bc938b2043e89f5a88cb81f81196a9da3b75f0f /dovetail/test_runner.py
parentde58a1bd6d908aefc8461c866901e64c12454c8b (diff)
Support to specify docker image for each test case
1. Currently each type of test cases will use one docker image. 2. For example, Functest test cases use opnfv/functest-restapi:euphrates Yardstick uses opnfv/yardstick:opnfv-5.1.0 3. It needs to support to specify the docker image for each test case. 4. For example, vping test cases use opnfv/functest-smoke:euphrates sdnvpn uses opnfv/functest-features:euphrates 5. The benefit of this is that these docker images are well verified by Functest CI and from Functest plan, they may not support functest-restapi docker image in its future release. JIRA: DOVETAIL-638 Change-Id: I8a30eea2233aeff809af2e241b6c939194397832 Signed-off-by: xudan <xudan16@huawei.com>
Diffstat (limited to 'dovetail/test_runner.py')
-rw-r--r--dovetail/test_runner.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/dovetail/test_runner.py b/dovetail/test_runner.py
index 26b85a1e..b059047f 100644
--- a/dovetail/test_runner.py
+++ b/dovetail/test_runner.py
@@ -51,14 +51,15 @@ class DockerRunner(object):
return dest_path
def run(self):
+ docker_image = Container.get_docker_image(self.testcase)
if dt_cfg.dovetail_config['offline']:
- exist = Container.check_image_exist(self.testcase.validate_type())
+ exist = Container.get_image_id(docker_image)
if not exist:
self.logger.error("{} image doesn't exist, can't run offline."
.format(self.testcase.validate_type()))
return
else:
- if not Container.pull_image(self.testcase.validate_type()):
+ if not Container.pull_image(docker_image):
self.logger.error("Failed to pull the image.")
return
# for sdnvpn, there is a need to download needed images to config_dir
@@ -71,7 +72,7 @@ class DockerRunner(object):
self.logger.error('Image {} not found.'.format(img_name))
return
container_id = Container.create(self.testcase.validate_type(),
- self.testcase.name())
+ self.testcase.name(), docker_image)
if not container_id:
self.logger.error('Failed to create container.')
return