Fix generation of Guru Meditation Report
Generation of a guru medidation report fails with TypeError when trying to serialize config group options. This is due to the fact, that I018c3a408a8903be8d006760994de6947fb91168 registers `barbican` options group incorrectly: an OptGroup instance is passed where a string name is expected (keystoneauth1 wraps the passed value into OptGroup unconditionally). A follow up change to oslo.config will make sure we fail early in case an incorrect value has been been passed to register_group(). Change-Id: I4c57127c7bc0098000ad18ba7bab12fbc66d8ac0 Closes-Bug: #1568208
This commit is contained in:
parent
b9d757bc04
commit
acbf057d25
|
@ -37,7 +37,7 @@ barbican_opts = [
|
||||||
def register_opts(conf):
|
def register_opts(conf):
|
||||||
conf.register_group(barbican_group)
|
conf.register_group(barbican_group)
|
||||||
conf.register_opts(barbican_opts, group=barbican_group)
|
conf.register_opts(barbican_opts, group=barbican_group)
|
||||||
ks_loading.register_session_conf_options(conf, barbican_group)
|
ks_loading.register_session_conf_options(conf, barbican_group.name)
|
||||||
|
|
||||||
|
|
||||||
def list_opts():
|
def list_opts():
|
||||||
|
|
|
@ -75,7 +75,7 @@ class BarbicanKeyManager(key_mgr.KeyManager):
|
||||||
try:
|
try:
|
||||||
_SESSION = ks_loading.load_session_from_conf_options(
|
_SESSION = ks_loading.load_session_from_conf_options(
|
||||||
CONF,
|
CONF,
|
||||||
nova.conf.barbican.barbican_group)
|
nova.conf.barbican.barbican_group.name)
|
||||||
|
|
||||||
auth = ctxt.get_auth_plugin()
|
auth = ctxt.get_auth_plugin()
|
||||||
service_type, service_name, interface = (CONF.
|
service_type, service_name, interface = (CONF.
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
|
||||||
|
from oslo_reports import guru_meditation_report as gmr
|
||||||
|
|
||||||
|
from nova import test
|
||||||
|
from nova import version
|
||||||
|
|
||||||
|
|
||||||
|
class TestServerGet(test.TestCase):
|
||||||
|
|
||||||
|
def test_guru_meditation_report_generation(self):
|
||||||
|
"""Regression test for bug #1568208.
|
||||||
|
|
||||||
|
This test ensures a text guru meditation report can be generated
|
||||||
|
successfully and generation does not fail e.g. due to incorrectly
|
||||||
|
registered config options.
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
# NOTE(rpodolyaka): we are only interested in success of run() call
|
||||||
|
# here, it's up to oslo_reports tests to check the generated report
|
||||||
|
generator = gmr.TextGuruMeditation(version)
|
||||||
|
generator.run()
|
Loading…
Reference in New Issue