diff options
-rw-r--r-- | heat/common/policy.py | 9 | ||||
-rw-r--r-- | setup.cfg | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/heat/common/policy.py b/heat/common/policy.py index 4707c9673..312608c93 100644 --- a/heat/common/policy.py +++ b/heat/common/policy.py @@ -51,6 +51,8 @@ class Enforcer(object): # register rules self.enforcer.register_defaults(policies.list_rules()) + self.file_rules = self.enforcer.file_rules + self.registered_rules = self.enforcer.registered_rules def set_rules(self, rules, overwrite=True): """Create a new Rules object based on the provided dict of rules.""" @@ -118,6 +120,13 @@ class Enforcer(object): is_registered_policy=True) +def get_policy_enforcer(): + # This method is used by oslopolicy CLI scripts to generate policy + # files from overrides on disk and defaults in code. + CONF([], project='heat') + return get_enforcer() + + def get_enforcer(): global ENFORCER if ENFORCER is None: @@ -59,6 +59,9 @@ oslo.config.opts = oslo.config.opts.defaults = heat.common.config = heat.common.config:set_config_defaults +oslo.policy.enforcer = + heat = heat.common.policy:get_policy_enforcer + oslo.policy.policies = heat = heat.policies:list_rules |