Refactor domino using FeatureBase and new constants provider
[functest.git] / functest / utils / functest_constants.py
1 #!/usr/bin/env python
2 #
3 # yaohelan@huawei.com
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 import os
10
11 import functest.utils.functest_logger as ft_logger
12 import functest.utils.functest_utils as ft_utils
13
14 logger = ft_logger.Logger("functest_constants").getLogger()
15
16
17 """ global variables """
18 INSTALLERS = ['fuel', 'compass', 'apex', 'joid']
19 CI_INSTALLER_TYPE = os.getenv('INSTALLER_TYPE')
20 CI_INSTALLER_IP = os.getenv('INSTALLER_IP')
21 CI_SCENARIO = os.getenv('DEPLOY_SCENARIO')
22 CI_NODE = os.getenv('NODE_NAME')
23 CI_BUILD_TAG = os.getenv('BUILD_TAG')
24 CI_DEBUG = os.getenv('CI_DEBUG')
25 CI_LOOP = os.getenv('CI_LOOP')
26 OS_AUTH_URL = os.getenv('OS_AUTH_URL')
27 OS_USERNAME = os.getenv('OS_USERNAME')
28 OS_TENANT_NAME = os.getenv('OS_TENANT_NAME')
29 OS_PASSWORD = os.getenv('OS_PASSWORD')
30 OS_ENDPOINT_TYPE = os.getenv('OS_ENDPOINT_TYPE')
31 OS_REGION_NAME = os.getenv('OS_REGION_NAME')
32 OS_CACERT = os.getenv('OS_CACERT')
33 FUEL_ENV = os.getenv('FUEL_ENV')
34 SDN_CONTROLLER_IP = os.getenv('SDN_CONTROLLER_IP')
35 SDN_CONTROLLER = os.getenv('SDN_CONTROLLER')
36
37 if CI_BUILD_TAG is not None:
38     IS_CI_RUN = True
39 else:
40     IS_CI_RUN = False
41
42 CONFIG_FUNCTEST_YAML = os.getenv("CONFIG_FUNCTEST_YAML")
43
44
45 def get_value(functest_config_key, env_variable):
46     try:
47         constant = ft_utils.get_functest_config(functest_config_key)
48         # logger.debug("%s is defined in config_functest.yaml as [%s]"
49         #             % (env_variable, constant))
50         return constant
51     except ValueError:
52         logger.warning("%s is not defined in config_functest.yaml"
53                        % functest_config_key)
54         constant = os.getenv(env_variable)
55         if constant is None:
56             raise ValueError("%s is neither defined in config_functest.yaml"
57                              " nor environment variable" % env_variable)
58         else:
59             logger.debug("%s is defined as environment variable as [%s]"
60                          % (env_variable, constant))
61             return constant
62
63
64 HOME = get_value('general.dir.dir_home', 'HOME')
65 REPOS_DIR = get_value('general.dir.dir_repos', 'REPOS_DIR')
66 FUNCTEST_BASE_DIR = get_value('general.dir.functest',
67                               'FUNCTEST_BASE_DIR')
68 FUNCTEST_REPO_DIR = get_value('general.dir.repo_functest',
69                               'FUNCTEST_REPO_DIR')
70 FUNCTEST_TEST_DIR = get_value('general.dir.functest_test',
71                               'FUNCTEST_TEST_DIR')
72 FUNCTEST_CONF_DIR = get_value('general.dir.functest_conf',
73                               'FUNCTEST_CONF_DIR')
74 FUNCTEST_DATA_DIR = get_value('general.dir.functest_data',
75                               'FUNCTEST_DATA_DIR')
76 FUNCTEST_RESULTS_DIR = get_value('general.dir.results',
77                                  'FUNCTEST_RESULTS_DIR')
78 FUNCTEST_TESTCASES_YAML = get_value('general.functest.testcases_yaml',
79                                     'FUNCTEST_TESTCASES_YAML')
80 RALLY_DEPLOYMENT_NAME = get_value('rally.deployment_name',
81                                   'RALLY_DEPLOYMENT_NAME')
82 TEMPEST_REPO_DIR = get_value('general.dir.repo_tempest',
83                              'TEMPEST_REPO_DIR')
84
85 ENV_FILE = os.path.join(FUNCTEST_CONF_DIR, "env_active")
86
87 OPENSTACK_CREDS = get_value('general.openstack.creds', 'creds')
88 OPENSTACK_SNAPSHOT_FILE = get_value('general.openstack.snapshot_file',
89                                     'OPENSTACK_SNAPSHOT_FILE')
90
91 DOMINO_REPO_DIR = get_value('general.dir.repo_domino',
92                             'DOMINO_REPO_DIR')
93 SDNVPN_REPO_DIR = get_value('general.dir.repo_sdnvpn',
94                             'SDNVPN_REPO_DIR')
95 SFC_REPO_DIR = get_value('general.dir.repo_sfc',
96                          'SFC_REPO_DIR')
97
98 ONOS_SFC_IMAGE_NAME = get_value('onos_sfc.image_name',
99                                 'ONOS_SFC_IMAGE_NAME')
100 ONOS_SFC_IMAGE_FILENAME = get_value('onos_sfc.image_file_name',
101                                     'ONOS_SFC_IMAGE_FILENAME')
102 ONOS_SFC_RELATIVE_PATH = get_value('general.dir.dir_onos_sfc',
103                                    'ONOS_SFC_RELATIVE_PATH')
104 ONOS_SFC_IMAGE_BASE_URL = get_value('onos_sfc.image_base_url',
105                                     'ONOS_SFC_IMAGE_BASE_URL')
106 RALLY_RELATIVE_PATH = get_value('general.dir.dir_rally',
107                                 'RALLY_RELATIVE_PATH')
108 RALLY_PRIVATE_NET_NAME = get_value('rally.network_name',
109                                    'RALLY_PRIVATE_NET_NAME')
110 RALLY_PRIVATE_SUBNET_NAME = get_value('rally.subnet_name',
111                                       'RALLY_PRIVATE_SUBNET_NAME')
112 RALLY_PRIVATE_SUBNET_CIDR = get_value('rally.subnet_cidr',
113                                       'RALLY_PRIVATE_SUBNET_CIDR')
114 RALLY_ROUTER_NAME = get_value('rally.router_name', 'RALLY_ROUTER_NAME')
115 RALLY_INSTALLATION_DIR = get_value('general.dir.rally_inst',
116                                    'RALLY_INSTALLATION_DIR')
117 GLANCE_IMAGE_NAME = get_value('general.openstack.image_name',
118                               'GLANCE_IMAGE_NAME')
119 GLANCE_IMAGE_FILENAME = get_value('general.openstack.image_file_name',
120                                   'GLANCE_IMAGE_FILENAME')
121 GLANCE_IMAGE_FORMAT = get_value('general.openstack.image_disk_format',
122                                 'GLANCE_IMAGE_FORMAT')
123 FLAVOR_NAME = get_value('general.openstack.flavor_name',
124                         'FLAVOR_NAME')
125 FLAVOR_RAM = get_value('general.openstack.flavor_ram',
126                        'FLAVOR_RAM')
127 FLAVOR_DISK = get_value('general.openstack.flavor_disk',
128                         'FLAVOR_DISK')
129 FLAVOR_VCPUS = get_value('general.openstack.flavor_vcpus',
130                          'FLAVOR_VCPUS')
131 TEMPEST_PRIVATE_NET_NAME = get_value('tempest.private_net_name',
132                                      'TEMPEST_PRIVATE_NET_NAME')
133 TEMPEST_PRIVATE_SUBNET_NAME = get_value('tempest.private_subnet_name',
134                                         'TEMPEST_PRIVATE_SUBNET_NAME')
135 TEMPEST_PRIVATE_SUBNET_CIDR = get_value('tempest.private_subnet_cidr',
136                                         'TEMPEST_PRIVATE_SUBNET_CIDR')
137 TEMPEST_ROUTER_NAME = get_value('tempest.router_name',
138                                 'TEMPEST_ROUTER_NAME')
139 TEMPEST_TENANT_NAME = get_value('tempest.identity.tenant_name',
140                                 'TEMPEST_TENANT_NAME')
141 TEMPEST_TENANT_DESCRIPTION = get_value('tempest.identity.tenant_description',
142                                        'TEMPEST_TENANT_DESCRIPTION')
143 TEMPEST_USER_NAME = get_value('tempest.identity.user_name',
144                               'TEMPEST_USER_NAME')
145 TEMPEST_USER_PASSWORD = get_value('tempest.identity.user_password',
146                                   'TEMPEST_USER_PASSWORD')
147 TEMPEST_SSH_TIMEOUT = get_value('tempest.validation.ssh_timeout',
148                                 'TEMPEST_SSH_TIMEOUT')
149 TEMPEST_USE_CUSTOM_IMAGES = get_value('tempest.use_custom_images',
150                                       'TEMPEST_USE_CUSTOM_IMAGES')
151 TEMPEST_USE_CUSTOM_FLAVORS = get_value('tempest.use_custom_flavors',
152                                        'TEMPEST_USE_CUSTOM_FLAVORS')
153 TEMPEST_TEST_LIST_DIR = get_value('general.dir.tempest_cases',
154                                   'TEMPEST_TEST_LIST_DIR')
155 NAME_VM_1 = get_value('vping.vm_name_1', 'NAME_VM_1')
156 NAME_VM_2 = get_value('vping.vm_name_2', 'NAME_VM_2')
157 PING_TIMEOUT = get_value('vping.ping_timeout', 'PING_TIMEOUT')
158 VPING__IMAGE_NAME = get_value('vping.image_name', 'VPING__IMAGE_NAME')
159 VPING_VM_FLAVOR = get_value('vping.vm_flavor', 'VPING_VM_FLAVOR')
160 VPING_PRIVATE_NET_NAME = get_value('vping.private_net_name',
161                                    'VPING_PRIVATE_NET_NAME')
162 VPING_PRIVATE_SUBNET_NAME = get_value('vping.private_subnet_name',
163                                       'VPING_PRIVATE_SUBNET_NAME')
164 VPING_PRIVATE_SUBNET_CIDR = get_value('vping.private_subnet_cidr',
165                                       'VPING_PRIVATE_SUBNET_CIDR')
166 VPING_ROUTER_NAME = get_value('vping.router_name',
167                               'VPING_ROUTER_NAME')
168 VPING_SECGROUP_NAME = get_value('vping.sg_name',
169                                 'VPING_SECGROUP_NAME')
170 VPING_SECGROUP_DESCR = get_value('vping.sg_desc',
171                                  'VPING_SECGROUP_DESCR')
172 ONOSBENCH_USERNAME = get_value('ONOS.general.onosbench_username',
173                                'ONOSBENCH_USERNAME')
174 ONOSBENCH_PASSWORD = get_value('ONOS.general.onosbench_password',
175                                'ONOSBENCH_PASSWORD')
176 ONOSCLI_USERNAME = get_value('ONOS.general.onoscli_username',
177                              'ONOSCLI_USERNAME')
178 ONOSCLI_PASSWORD = get_value('ONOS.general.onoscli_password',
179                              'ONOSCLI_PASSWORD')
180 ONOS_RUNTIMEOUT = get_value('ONOS.general.runtimeout',
181                             'ONOS_RUNTIMEOUT')
182 ONOS_OCT = get_value('ONOS.environment.OCT', 'ONOS_OCT')
183 ONOS_OC1 = get_value('ONOS.environment.OC1', 'ONOS_OC1')
184 ONOS_OC2 = get_value('ONOS.environment.OC2', 'ONOS_OC2')
185 ONOS_OC3 = get_value('ONOS.environment.OC3', 'ONOS_OC3')
186 ONOS_OCN = get_value('ONOS.environment.OCN', 'ONOS_OCN')
187 ONOS_OCN2 = get_value('ONOS.environment.OCN2', 'ONOS_OCN2')
188 ONOS_INSTALLER_MASTER = get_value('ONOS.environment.installer_master',
189                                   'ONOS_INSTALLER_MASTER')
190 ONOS_INSTALLER_MASTER_USERNAME = get_value(
191     'ONOS.environment.installer_master_username',
192     'ONOS_INSTALLER_MASTER_USERNAME')
193 ONOS_INSTALLER_MASTER_PASSWORD = get_value(
194     'ONOS.environment.installer_master_password',
195     'ONOS_INSTALLER_MASTER_PASSWORD')
196 PROMISE_REPO_DIR = get_value('general.dir.dir_repo_promise',
197                              'PROMISE_REPO_DIR')
198 PROMISE_TENANT_NAME = get_value('promise.tenant_name',
199                                 'PROMISE_TENANT_NAME')
200 TENANT_DESCRIPTION = get_value('promise.tenant_description',
201                                'TENANT_DESCRIPTION')
202 PROMISE_USER_NAME = get_value('promise.user_name', 'PROMISE_USER_NAME')
203 PROMISE_USER_PWD = get_value('promise.user_pwd', 'PROMISE_USER_PWD')
204 PROMISE_IMAGE_NAME = get_value('promise.image_name',
205                                'PROMISE_IMAGE_NAME')
206 PROMISE_FLAVOR_NAME = get_value('promise.flavor_name',
207                                 'PROMISE_FLAVOR_NAME')
208 PROMISE_FLAVOR_VCPUS = get_value('promise.flavor_vcpus',
209                                  'PROMISE_FLAVOR_VCPUS')
210 PROMISE_FLAVOR_RAM = get_value('promise.flavor_ram',
211                                'PROMISE_FLAVOR_RAM')
212 PROMISE_FLAVOR_DISK = get_value('promise.flavor_disk',
213                                 'PROMISE_FLAVOR_DISK')
214 PROMISE_NET_NAME = get_value('promise.network_name', 'PROMISE_NET_NAME')
215 PROMISE_SUBNET_NAME = get_value('promise.subnet_name',
216                                 'PROMISE_SUBNET_NAME')
217 PROMISE_SUBNET_CIDR = get_value('promise.subnet_cidr',
218                                 'PROMISE_SUBNET_CIDR')
219 PROMISE_ROUTER_NAME = get_value('promise.router_name',
220                                 'PROMISE_ROUTER_NAME')
221 DOCTOR_REPO_DIR = get_value('general.dir.dir_repo_doctor',
222                             'DOCTOR_REPO_DIR')
223 COPPER_REPO_DIR = get_value('general.dir.repo_copper',
224                             'COPPER_REPO_DIR')
225 EXAMPLE_INSTANCE_NAME = get_value('example.example_vm_name',
226                                   'EXAMPLE_INSTANCE_NAME')
227 EXAMPLE_FLAVOR = get_value('example.example_flavor', 'EXAMPLE_FLAVOR')
228 EXAMPLE_IMAGE_NAME = get_value('example.example_image_name',
229                                'EXAMPLE_IMAGE_NAME')
230 EXAMPLE_PRIVATE_NET_NAME = get_value('example.example_private_net_name',
231                                      'EXAMPLE_PRIVATE_NET_NAME')
232 EXAMPLE_PRIVATE_SUBNET_NAME = get_value(
233     'example.example_private_subnet_name',
234     'EXAMPLE_PRIVATE_SUBNET_NAME')
235 EXAMPLE_PRIVATE_SUBNET_CIDR = get_value(
236     'example.example_private_subnet_cidr',
237     'EXAMPLE_PRIVATE_SUBNET_CIDR')
238 EXAMPLE_ROUTER_NAME = get_value('example.example_router_name',
239                                 'EXAMPLE_ROUTER_NAME')
240 EXAMPLE_SECGROUP_NAME = get_value('example.example_sg_name',
241                                   'EXAMPLE_SECGROUP_NAME')
242 EXAMPLE_SECGROUP_DESCR = get_value('example.example_sg_descr',
243                                    'EXAMPLE_SECGROUP_DESCR')
244 VIMS_DATA_DIR = get_value('general.dir.dir_vIMS_data',
245                           'VIMS_DATA_DIR')
246 VIMS_TEST_DIR = get_value('general.dir.dir_repo_vims_test',
247                           'VIMS_TEST_DIR')
248 VIMS_TENANT_NAME = get_value('vIMS.general.tenant_name',
249                              'VIMS_TENANT_NAME')
250 VIMS_TENANT_DESCRIPTION = get_value('vIMS.general.tenant_description',
251                                     'VIMS_TENANT_DESCRIPTION')
252 VIMS_IMAGES = get_value('vIMS.general.images', 'VIMS_IMAGES')
253 CFY_MANAGER_BLUEPRINT = get_value('vIMS.cloudify.blueprint',
254                                   'CFY_MANAGER_BLUEPRINT')
255 CFY_MANAGER_REQUIERMENTS = get_value('vIMS.cloudify.requierments',
256                                      'CFY_MANAGER_REQUIERMENTS')
257 CFY_INPUTS = get_value('vIMS.cloudify.inputs', 'CFY_INPUTS')
258 CW_BLUEPRINT = get_value('vIMS.clearwater.blueprint', 'CW_BLUEPRINT')
259 CW_DEPLOYMENT_NAME = get_value('vIMS.clearwater.deployment-name',
260                                'CW_DEPLOYMENT_NAME')
261 CW_INPUTS = get_value('vIMS.clearwater.inputs', 'CW_INPUTS')
262 CW_REQUIERMENTS = get_value('vIMS.clearwater.requierments',
263                             'CW_REQUIERMENTS')
264 PARSER_REPO_DIR = get_value('general.dir.repo_parser',
265                             'PARSER_REPO_DIR')