Merge "Precise self.result in pytest_suite_runner.py"
[functest.git] / functest / utils / env.py
1 #!/usr/bin/env python
2
3 import os
4 import re
5
6 import six
7
8
9 default_envs = {
10     'NODE_NAME': 'unknown_pod',
11     'CI_DEBUG': 'false',
12     'DEPLOY_SCENARIO': 'os-nosdn-nofeature-noha',
13     'DEPLOY_TYPE': 'virt',
14     'INSTALLER_TYPE': None,
15     'INSTALLER_IP': None,
16     'BUILD_TAG': None,
17     'OS_ENDPOINT_TYPE': None,
18     'OS_AUTH_URL': None
19 }
20
21
22 class Environment(object):
23
24     def __init__(self):
25         for k, v in six.iteritems(os.environ):
26             self.__setattr__(k, v)
27         for k, v in six.iteritems(default_envs):
28             if k not in os.environ:
29                 self.__setattr__(k, v)
30         self._set_ci_run()
31         self._set_ci_loop()
32
33     def _set_ci_run(self):
34         if self.BUILD_TAG:
35             self.IS_CI_RUN = True
36         else:
37             self.IS_CI_RUN = False
38
39     def _set_ci_loop(self):
40         if self.BUILD_TAG and re.search("daily", self.BUILD_TAG):
41             self.CI_LOOP = "daily"
42         else:
43             self.CI_LOOP = "weekly"
44
45
46 ENV = Environment()