diff options
author | Cedric Ollivier <cedric.ollivier@orange.com> | 2018-08-11 08:53:15 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2018-08-11 08:53:15 +0000 |
commit | 232464bfa350e41472ee659c27d9a4d4fb98585e (patch) | |
tree | c4b62692eda72f6105c13543650d0d546f8440c8 /functest/opnfv_tests | |
parent | 0aabe8ec3a60040208aff847ffecbcd9a5128a73 (diff) | |
parent | 86a239dba6e5c2abced2b1de53e57aba3c04b82c (diff) |
Merge "Test OpenStack vGPU feature"
Diffstat (limited to 'functest/opnfv_tests')
-rw-r--r-- | functest/opnfv_tests/openstack/vgpu/__init__.py | 0 | ||||
-rw-r--r-- | functest/opnfv_tests/openstack/vgpu/vgpu.py | 54 |
2 files changed, 54 insertions, 0 deletions
diff --git a/functest/opnfv_tests/openstack/vgpu/__init__.py b/functest/opnfv_tests/openstack/vgpu/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/functest/opnfv_tests/openstack/vgpu/__init__.py diff --git a/functest/opnfv_tests/openstack/vgpu/vgpu.py b/functest/opnfv_tests/openstack/vgpu/vgpu.py new file mode 100644 index 000000000..a900eb203 --- /dev/null +++ b/functest/opnfv_tests/openstack/vgpu/vgpu.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python + +# Copyright (c) 2018 Kontron 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 + +"""vGPU testcase implementation.""" + +from __future__ import division + +import logging + +from functest.core import singlevm + + +class vGPU(singlevm.SingleVm2): + """OpenStack vGPU Test Case.""" + + __logger = logging.getLogger(__name__) + + filename = ('/home/opnfv/functest/images/' + 'ubuntu-16.04-server-cloudimg-amd64-disk1.img') + flavor_ram = 4096 + flavor_vcpus = 2 + flavor_disk = 40 + flavor_extra_specs = {'resources:VGPU': '1'} + username = 'ubuntu' + ssh_connect_loops = 12 + create_server_timeout = 300 + + def __init__(self, **kwargs): + """Initialize vGPU testcase object.""" + if "case_name" not in kwargs: + kwargs["case_name"] = "vgpu" + super(vGPU, self).__init__(**kwargs) + + def execute(self): + """ + Test if the vGPU exist. + """ + (_, stdout, stderr) = self.ssh.exec_command('lspci') + lspci_output = stdout.read() + self.__logger.debug("output:\n%s", stdout.read()) + self.__logger.debug("error:\n%s", stderr.read()) + if ('VGA compatible controller: Intel' in lspci_output or + 'VGA compatible controller: Nvidia' in lspci_output): + self.__logger.info("The VM have a vGPU") + return 0 + else: + self.__logger.error("The VM haven't any vGPU") + return 1 |