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