diff options
author | Cédric Ollivier <cedric.ollivier@orange.com> | 2022-03-03 15:29:16 +0100 |
---|---|---|
committer | Cédric Ollivier <cedric.ollivier@orange.com> | 2022-03-04 15:04:42 +0100 |
commit | 890e9579023fc624496d192fa54bca8f65091620 (patch) | |
tree | 2e08e6b4eca51de73c676ea01d7ac1c41576e5a2 /xtesting/utils | |
parent | fc11ac167011af9a2230b06118ca256ef7e8ca88 (diff) |
Search config files in tree
It allows putting configurations in classical dirs.
It fallbacks to the python package for backward compatibility.
Change-Id: Ie33b9482fb197926c7d7d66ace815fa4ae01d02d
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
Diffstat (limited to 'xtesting/utils')
-rw-r--r-- | xtesting/utils/config.py | 23 | ||||
-rw-r--r-- | xtesting/utils/constants.py | 28 |
2 files changed, 51 insertions, 0 deletions
diff --git a/xtesting/utils/config.py b/xtesting/utils/config.py new file mode 100644 index 00000000..6f94fc8f --- /dev/null +++ b/xtesting/utils/config.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +# Copyright (c) 2022 Orange 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 + +# pylint: disable=missing-docstring + +import os + +from xtesting.utils import constants + + +def get_xtesting_config(filename, default): + """Search Xtesting configs (i.e. testcases.yaml)""" + for path in constants.XTESTING_PATHES: + abspath = os.path.abspath(os.path.expanduser(path)) + if os.path.isfile(os.path.join(abspath, filename)): + return os.path.join(abspath, filename) + return default diff --git a/xtesting/utils/constants.py b/xtesting/utils/constants.py index 18e03f68..dfd46e22 100644 --- a/xtesting/utils/constants.py +++ b/xtesting/utils/constants.py @@ -1,5 +1,33 @@ #!/usr/bin/env python +# Copyright (c) 2019 Orange 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 + # pylint: disable=missing-docstring +import os +import sys + +import pkg_resources + ENV_FILE = '/var/lib/xtesting/conf/env_file' + +XTESTING_PATHES = [ + "~/.xtesting", "/etc/xtesting", os.path.join(sys.prefix + "/etc/xtesting")] + +TESTCASE_DESCRIPTION = 'testcases.yaml' +TESTCASE_DESCRIPTION_DEFAULT = pkg_resources.resource_filename( + 'xtesting', 'ci/{}'.format(TESTCASE_DESCRIPTION)) + +RESULTS_DIR = '/var/lib/xtesting/results' +LOG_PATH = os.path.join(RESULTS_DIR, 'xtesting.log') +DEBUG_LOG_PATH = os.path.join(RESULTS_DIR, 'xtesting.debug.log') + +INI_PATH_DEFAULT = pkg_resources.resource_filename( + 'xtesting', 'ci/logging.ini') +DEBUG_INI_PATH_DEFAULT = pkg_resources.resource_filename( + 'xtesting', 'ci/logging.debug.ini') |