Add whitebox section
Change-Id: Icf23d5446098b774c0ada301e9f62750cf3ad5df
diff --git a/etc/tempest.conf.sample b/etc/tempest.conf.sample
index e1196f0..43277d6 100644
--- a/etc/tempest.conf.sample
+++ b/etc/tempest.conf.sample
@@ -107,9 +107,6 @@
# Level to log Compute API request/response details.
log_level = ERROR
-# Whitebox options for compute. Whitebox options enable the
-# whitebox test cases, which look at internal Nova database state,
-# SSH into VMs to check instance state, etc.
# Run live migration tests (requires 2 hosts)
live_migration_available = false
@@ -123,6 +120,12 @@
# are forced to skip, regardless of the extension status
disk_config_enabled_override = true
+
+[whitebox]
+# Whitebox options for compute. Whitebox options enable the
+# whitebox test cases, which look at internal Nova database state,
+# SSH into VMs to check instance state, etc.
+
# Should we run whitebox tests for Compute?
whitebox_enabled = true
diff --git a/tempest/config.py b/tempest/config.py
index 89fa2d9..9458ce8 100644
--- a/tempest/config.py
+++ b/tempest/config.py
@@ -171,22 +171,6 @@
default=True,
help="If false, skip config tests regardless of the "
"extension status"),
- cfg.BoolOpt('whitebox_enabled',
- default=False,
- help="Does the test environment support whitebox tests for "
- "Compute?"),
- cfg.StrOpt('db_uri',
- default=None,
- help="Connection string to the database of Compute service"),
- cfg.StrOpt('source_dir',
- default="/opt/stack/nova",
- help="Path of nova source directory"),
- cfg.StrOpt('config_path',
- default='/etc/nova/nova.conf',
- help="Path of nova configuration file"),
- cfg.StrOpt('bin_dir',
- default="/usr/local/bin/",
- help="Directory containing nova binaries such as nova-manage"),
]
@@ -219,6 +203,35 @@
conf.register_opt(opt, group='compute-admin')
+whitebox_group = cfg.OptGroup(name='whitebox',
+ title="Whitebox Options")
+
+WhiteboxGroup = [
+ cfg.BoolOpt('whitebox_enabled',
+ default=False,
+ help="Does the test environment support whitebox tests for "
+ "Compute?"),
+ cfg.StrOpt('db_uri',
+ default=None,
+ help="Connection string to the database of Compute service"),
+ cfg.StrOpt('source_dir',
+ default="/opt/stack/nova",
+ help="Path of nova source directory"),
+ cfg.StrOpt('config_path',
+ default='/etc/nova/nova.conf',
+ help="Path of nova configuration file"),
+ cfg.StrOpt('bin_dir',
+ default="/usr/local/bin/",
+ help="Directory containing nova binaries such as nova-manage"),
+]
+
+
+def register_whitebox_opts(conf):
+ conf.register_group(whitebox_group)
+ for opt in WhiteboxGroup:
+ conf.register_opt(opt, group='whitebox')
+
+
image_group = cfg.OptGroup(name='image',
title="Image Service Options")
@@ -418,6 +431,7 @@
register_compute_opts(cfg.CONF)
register_identity_opts(cfg.CONF)
+ register_whitebox_opts(cfg.CONF)
register_image_opts(cfg.CONF)
register_network_opts(cfg.CONF)
register_volume_opts(cfg.CONF)
@@ -425,6 +439,7 @@
register_boto_opts(cfg.CONF)
register_compute_admin_opts(cfg.CONF)
self.compute = cfg.CONF.compute
+ self.whitebox = cfg.CONF.whitebox
self.identity = cfg.CONF.identity
self.images = cfg.CONF.image
self.network = cfg.CONF.network
diff --git a/tempest/tests/compute/__init__.py b/tempest/tests/compute/__init__.py
index 398f982..cd0160c 100644
--- a/tempest/tests/compute/__init__.py
+++ b/tempest/tests/compute/__init__.py
@@ -29,7 +29,7 @@
CREATE_IMAGE_ENABLED = CONFIG.compute.create_image_enabled
RESIZE_AVAILABLE = CONFIG.compute.resize_available
CHANGE_PASSWORD_AVAILABLE = CONFIG.compute.change_password_available
-WHITEBOX_ENABLED = CONFIG.compute.whitebox_enabled
+WHITEBOX_ENABLED = CONFIG.whitebox.whitebox_enabled
DISK_CONFIG_ENABLED = False
DISK_CONFIG_ENABLED_OVERRIDE = CONFIG.compute.disk_config_enabled_override
FLAVOR_EXTRA_DATA_ENABLED = False
diff --git a/tempest/whitebox.py b/tempest/whitebox.py
index d78b9e0..34b7950 100644
--- a/tempest/whitebox.py
+++ b/tempest/whitebox.py
@@ -64,9 +64,9 @@
super(ComputeWhiteboxTest, cls).setUpClass()
# Add some convenience attributes that tests use...
- cls.nova_dir = cls.config.compute.source_dir
- cls.compute_bin_dir = cls.config.compute.bin_dir
- cls.compute_config_path = cls.config.compute.config_path
+ cls.nova_dir = cls.config.whitebox.source_dir
+ cls.compute_bin_dir = cls.config.whitebox.bin_dir
+ cls.compute_config_path = cls.config.whitebox.config_path
cls.servers_client = cls.manager.servers_client
cls.images_client = cls.manager.images_client
cls.flavors_client = cls.manager.flavors_client
@@ -127,7 +127,7 @@
}
try:
- engine = create_engine(cls.config.compute.db_uri, **engine_args)
+ engine = create_engine(cls.config.whitebox.db_uri, **engine_args)
connection = engine.connect()
meta = MetaData()
meta.reflect(bind=engine)