Merge "Remove tempest config dependency in functional tests"
This commit is contained in:
@@ -13,33 +13,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
"""
|
||||
import os
|
||||
|
||||
from oslo.config import cfg
|
||||
from tempest import config
|
||||
from functionaltests.common import config
|
||||
|
||||
|
||||
CONF = config.CONF
|
||||
|
||||
|
||||
def _get_conf_file_path():
|
||||
functional_dir = os.path.split(os.path.abspath(__file__))[0]
|
||||
base_dir = os.path.split(functional_dir)[0]
|
||||
return os.path.join(base_dir, 'etc', 'functional_tests.conf')
|
||||
|
||||
|
||||
# Use local tempest conf if one is available.
|
||||
conf_file = _get_conf_file_path()
|
||||
if os.path.exists(conf_file):
|
||||
CONF.set_config_path(conf_file)
|
||||
|
||||
|
||||
CONF.register_group(cfg.OptGroup('keymanager'))
|
||||
CONF.register_opt(cfg.StrOpt('url'), group='keymanager')
|
||||
CONF.register_opt(cfg.StrOpt('username'), group='keymanager')
|
||||
CONF.register_opt(cfg.StrOpt('password'), group='keymanager')
|
||||
CONF.register_opt(cfg.StrOpt('project_name'), group='keymanager')
|
||||
CONF.register_opt(cfg.StrOpt('project_id'), group='keymanager')
|
||||
CONF.register_opt(cfg.IntOpt('max_payload_size', default=10000),
|
||||
group='keymanager')
|
||||
CONF.register_opt(cfg.StrOpt('project_domain_name'), group='keymanager')
|
||||
CONF = config.get_config()
|
||||
|
||||
@@ -14,15 +14,11 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
"""
|
||||
import logging
|
||||
import os
|
||||
|
||||
from functionaltests.common import config
|
||||
import oslotest.base as oslotest
|
||||
from barbicanclient import client
|
||||
from keystoneclient.auth import identity
|
||||
from keystoneclient import session
|
||||
from tempest import config
|
||||
|
||||
CONF = config.CONF
|
||||
CONF = config.get_config()
|
||||
|
||||
|
||||
class BaseTestCase(oslotest.BaseTestCase):
|
||||
|
||||
@@ -19,9 +19,9 @@ import re
|
||||
import six
|
||||
|
||||
from barbicanclient import barbican
|
||||
from tempest import config
|
||||
from functionaltests.common import config
|
||||
|
||||
CONF = config.CONF
|
||||
CONF = config.get_config()
|
||||
|
||||
|
||||
class BaseBehaviors(object):
|
||||
|
||||
@@ -16,12 +16,12 @@ limitations under the License.
|
||||
import logging
|
||||
|
||||
from functionaltests.base import BaseTestCase
|
||||
from functionaltests.common import config
|
||||
from barbicanclient import client
|
||||
from keystoneclient.auth import identity
|
||||
from keystoneclient import session
|
||||
from tempest import config
|
||||
|
||||
CONF = config.CONF
|
||||
CONF = config.get_config()
|
||||
|
||||
|
||||
class TestCase(BaseTestCase):
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
import logging
|
||||
|
||||
from functionaltests.base import BaseTestCase
|
||||
from functionaltests.common import config
|
||||
from barbicanclient import client
|
||||
from barbicanclient import exceptions
|
||||
from keystoneclient.auth import identity
|
||||
from keystoneclient import session
|
||||
from tempest import config
|
||||
|
||||
CONF = config.CONF
|
||||
CONF = config.get_config()
|
||||
|
||||
|
||||
class WhenTestingClientConnectivity(BaseTestCase):
|
||||
|
||||
0
functionaltests/common/__init__.py
Normal file
0
functionaltests/common/__init__.py
Normal file
80
functionaltests/common/config.py
Normal file
80
functionaltests/common/config.py
Normal file
@@ -0,0 +1,80 @@
|
||||
"""
|
||||
Copyright 2015 Rackspace
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
"""
|
||||
import os
|
||||
|
||||
from oslo_config import cfg
|
||||
|
||||
TEST_CONF = None
|
||||
|
||||
|
||||
def setup_config(config_file=''):
|
||||
global TEST_CONF
|
||||
TEST_CONF = cfg.ConfigOpts()
|
||||
|
||||
identity_group = cfg.OptGroup(name='identity')
|
||||
identity_options = [
|
||||
cfg.StrOpt('uri', default='http://localhost:5000/v2.0'),
|
||||
cfg.StrOpt('uri_v3', default='http://localhost:5000/v3'),
|
||||
cfg.StrOpt('auth_version', default='v3'),
|
||||
cfg.StrOpt('username', default='admin'),
|
||||
cfg.StrOpt('password', default='secretadmin'),
|
||||
cfg.StrOpt('tenant_name', default='admin'),
|
||||
cfg.StrOpt('domain_name', default='Default'),
|
||||
cfg.StrOpt('admin_username', default='admin'),
|
||||
cfg.StrOpt('admin_password', default='secretadmin'),
|
||||
cfg.StrOpt('admin_tenant_name', default='admin'),
|
||||
cfg.StrOpt('admin_domain_name', default='Default')
|
||||
]
|
||||
TEST_CONF.register_group(identity_group)
|
||||
TEST_CONF.register_opts(identity_options, group=identity_group)
|
||||
|
||||
keymanager_group = cfg.OptGroup(name='keymanager')
|
||||
keymanager_options = [
|
||||
cfg.StrOpt('url', default='http://localhost:9311'),
|
||||
cfg.StrOpt('username', default='admin'),
|
||||
cfg.StrOpt('password', default='secretadmin'),
|
||||
cfg.StrOpt('project_name', default='admin'),
|
||||
cfg.StrOpt('project_id', default='admin'),
|
||||
cfg.StrOpt('project_domain_name', default='Default'),
|
||||
cfg.IntOpt('max_payload_size', default=10000)
|
||||
]
|
||||
TEST_CONF.register_group(keymanager_group)
|
||||
TEST_CONF.register_opts(keymanager_options, group=keymanager_group)
|
||||
|
||||
# Figure out which config to load
|
||||
config_to_load = []
|
||||
local_config = './etc/functional_tests.conf'
|
||||
devstack_config = '../etc/functional_tests.conf'
|
||||
if os.path.isfile(config_file):
|
||||
config_to_load.append(config_file)
|
||||
elif os.path.isfile(local_config):
|
||||
config_to_load.append(local_config)
|
||||
elif os.path.isfile(devstack_config):
|
||||
config_to_load.append(devstack_config)
|
||||
else:
|
||||
config_to_load.append('/etc/functional_tests.conf')
|
||||
|
||||
# Actually parse config
|
||||
TEST_CONF(
|
||||
(), # Required to load a anonymous config
|
||||
default_config_files=config_to_load
|
||||
)
|
||||
|
||||
|
||||
def get_config():
|
||||
if not TEST_CONF:
|
||||
setup_config()
|
||||
return TEST_CONF
|
||||
@@ -11,12 +11,6 @@
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
# Where tempest code lives
|
||||
|
||||
TEMPEST_DIR=${TEMPEST_DIR:-/opt/stack/new/tempest}
|
||||
|
||||
# Install tempest
|
||||
pip install -e $TEMPEST_DIR
|
||||
|
||||
# Install test-requirements
|
||||
pip install -r /opt/stack/new/python-barbicanclient/test-requirements.txt
|
||||
|
||||
Reference in New Issue
Block a user