From fd8498598096cabb991cf3494220a9715d3360f7 Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Thu, 13 Apr 2023 10:33:20 +0200 Subject: Allow setting env vars via testcases.yaml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It helps defining env vars per test cases. /home/opnfv/functest/conf/env_file is rather designed for comme env vars ro all test cases (see OpenStack Creds). Change-Id: Ic5d34701475440e1f768bbb22be7a4cfa3e1625b Signed-off-by: Cédric Ollivier --- xtesting/ci/run_tests.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xtesting/ci/run_tests.py b/xtesting/ci/run_tests.py index 0b94c28b..57562ef4 100644 --- a/xtesting/ci/run_tests.py +++ b/xtesting/ci/run_tests.py @@ -143,6 +143,7 @@ class Runner(): def run_test(self, test): """Run one test case""" + # pylint: disable=too-many-branches if not test.is_enabled() or test.is_skipped(): msg = prettytable.PrettyTable( header_style='upper', padding_width=5, @@ -168,6 +169,11 @@ class Runner(): LOGGER.info("Skipping test case '%s'...", test.get_name()) LOGGER.info("Test result:\n\n%s\n", test_case) return testcase.TestCase.EX_TESTCASE_SKIPPED + if 'env' in run_dict: + LOGGER.info( + "Setting env for test case '%s'...", test.get_name()) + for key, value in run_dict['env'].items(): + os.environ[key] = str(value) LOGGER.info("Running test case '%s'...", test.get_name()) try: kwargs = run_dict['args'] -- cgit 1.2.3-korg