Suppress policy deprecation and default change warnings

As part of the policy defaults refresh work, all of the defaults for
policies were changed and warnings about it are being emitted
constantly in the logs. We can suppress these for now until we are
enforcing new defaults [1].

This also suppresses policy deprecation warnings during tests to avoid
filling the console with warning messages.

Related to blueprint policy-defaults-refresh

[1]https://docs.openstack.org/nova/latest/configuration/config.html#oslo_policy.enforce_new_defaults

Change-Id: I4a169b42d516a7ae2adcee9b69d71723fdefcd95
This commit is contained in:
melanie witt 2021-07-01 22:01:14 +00:00
parent 7c8ddbf747
commit 67ff5ff2b4
2 changed files with 11 additions and 0 deletions

View File

@ -1797,6 +1797,13 @@ def init_enforcer(policy_file=None, rules=None,
rules=rules,
default_rule=default_rule,
use_conf=use_conf)
# NOTE(melwitt): Explictly disable the warnings for policies
# changing their default check_str. During policy-defaults-refresh
# work, all the policy defaults have been changed and warning for
# each policy started filling the logs limit for various tool.
# Once we move to new defaults only world then we can enable these
# warning again.
_ENFORCER.suppress_default_change_warnings = True
_ENFORCER.register_defaults(list_policies())

View File

@ -44,3 +44,7 @@ class PolicyFixture(fixtures.Fixture):
CONF.set_override('policy_file', self.policy_file_name, 'oslo_policy')
ironic_policy._ENFORCER = None
self.addCleanup(ironic_policy.get_enforcer().clear)
# NOTE(melwitt): Logging all the deprecation warning for every unit
# test will overflow the log files. Suppress the deprecation warnings
# for tests.
ironic_policy._ENFORCER.suppress_deprecation_warnings = True