diff options
author | Morgan Richomme <morgan.richomme@orange.com> | 2017-03-17 14:41:06 +0100 |
---|---|---|
committer | Morgan Richomme <morgan.richomme@orange.com> | 2017-03-19 13:43:26 +0000 |
commit | 05ea9bf4ae2cdd0af0f97eca90a7c443f35d1a2a (patch) | |
tree | a7ef3098cc1bf223e93224c6471c8a19e60168f1 | |
parent | 54a9968b62f74a28a45075422d89d6dc9a3818b7 (diff) |
Bug Fix: retrieve version from build tag in weekly jobs
- fix regex issue
- add unit test to cover weekly and dummy build tags
- remove useless logs
JIRA: FUNCTEST-765
Change-Id: I7a8d40b4662f4557cd080669da46fb1c32d2ad6d
Signed-off-by: Morgan Richomme <morgan.richomme@orange.com>
(cherry picked from commit f15a4f277fb61b86074e949e2323b8f652969dd1)
-rw-r--r-- | functest/tests/unit/utils/test_functest_utils.py | 13 | ||||
-rw-r--r-- | functest/utils/functest_utils.py | 7 |
2 files changed, 15 insertions, 5 deletions
diff --git a/functest/tests/unit/utils/test_functest_utils.py b/functest/tests/unit/utils/test_functest_utils.py index 8bfdb5e49..e5bae62f6 100644 --- a/functest/tests/unit/utils/test_functest_utils.py +++ b/functest/tests/unit/utils/test_functest_utils.py @@ -33,6 +33,7 @@ class FunctestUtilsTesting(unittest.TestCase): self.installer = 'test_installer' self.scenario = 'test_scenario' self.build_tag = 'jenkins-functest-fuel-opnfv-jump-2-daily-master-190' + self.build_tag_week = 'jenkins-functest-fuel-baremetal-weekly-master-8' self.version = 'master' self.node_name = 'test_node_name' self.project = 'test_project' @@ -152,11 +153,21 @@ class FunctestUtilsTesting(unittest.TestCase): self.scenario) @mock.patch('functest.utils.functest_utils.get_build_tag') - def test_get_version_default(self, mock_get_build_tag): + def test_get_version_daily_job(self, mock_get_build_tag): mock_get_build_tag.return_value = self.build_tag self.assertEqual(functest_utils.get_version(), self.version) @mock.patch('functest.utils.functest_utils.get_build_tag') + def test_get_version_weekly_job(self, mock_get_build_tag): + mock_get_build_tag.return_value = self.build_tag_week + self.assertEqual(functest_utils.get_version(), self.version) + + @mock.patch('functest.utils.functest_utils.get_build_tag') + def test_get_version_with_dummy_build_tag(self, mock_get_build_tag): + mock_get_build_tag.return_value = 'whatever' + self.assertEqual(functest_utils.get_version(), 'unknown') + + @mock.patch('functest.utils.functest_utils.get_build_tag') def test_get_version_unknown(self, mock_get_build_tag): mock_get_build_tag.return_value = "unknown_build_tag" self.assertEqual(functest_utils.get_version(), "unknown") diff --git a/functest/utils/functest_utils.py b/functest/utils/functest_utils.py index e5e755d7f..9e13ffe90 100644 --- a/functest/utils/functest_utils.py +++ b/functest/utils/functest_utils.py @@ -111,12 +111,13 @@ def get_version(): # if launched through CI the build tag has the following format # jenkins-<project>-<installer>-<pod>-<job>-<branch>-<id> # e.g. jenkins-functest-fuel-opnfv-jump-2-daily-master-190 + # jenkins-functest-fuel-baremetal-weekly-master-8 # use regex to match branch info - rule = "daily-(.+?)-[0-9]*" + rule = "(dai|week)ly-(.+?)-[0-9]*" build_tag = get_build_tag() m = re.search(rule, build_tag) if m: - return m.group(1) + return m.group(2) else: return "unknown" @@ -156,8 +157,6 @@ def get_db_url(): # if TEST_DB_URL declared in env variable, use it! db_url = os.environ['TEST_DB_URL'] except KeyError: - logger.info("DB URL not declared as env variable," - "use local configuration") db_url = get_functest_config('results.test_db_url') return db_url |