summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavlo Shchelokovskyy <shchelokovskyy@gmail.com>2023-01-31 20:56:45 +0200
committerMichael Johnson <johnsomor@gmail.com>2023-01-31 19:05:25 +0000
commit6389eb4c6858e7bd78bc65eb71c6ecb08d310acb (patch)
tree6af6e8e83a3576d7335bd09677aa7e704fc401a6
parenta9cf887da11f18dbda7c6c1332d430680a9edc14 (diff)
downloaddesignate-6389eb4c6858e7bd78bc65eb71c6ecb08d310acb.tar.gz
Add oslo.policy.enforcer entry point
this will allow usage of many oslo.policy scripts, e.g. to generate current effective policy, or to list redundant polices defined in policy files. Change-Id: I1de9b6cc16be2896136c7e99cf150c4b8e4603e9 Closes-Bug: #2004421
-rw-r--r--designate/policy.py8
-rw-r--r--setup.cfg3
2 files changed, 11 insertions, 0 deletions
diff --git a/designate/policy.py b/designate/policy.py
index e67d2202..9b4d1463 100644
--- a/designate/policy.py
+++ b/designate/policy.py
@@ -106,3 +106,11 @@ def enforce_new_defaults():
if CONF.get('oslo_policy'):
return CONF['oslo_policy'].get('enforce_new_defaults', False)
return False
+
+
+def get_enforcer():
+ # This method is used by oslopolicy CLI scripts in order to generate policy
+ # files from overrides on disk and defaults in code.
+ cfg.CONF([], project='designate')
+ init()
+ return _ENFORCER
diff --git a/setup.cfg b/setup.cfg
index 4d223650..92f789f1 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -42,6 +42,9 @@ oslo.config.opts.defaults =
oslo.policy.policies =
designate = designate.common.policies:list_rules
+oslo.policy.enforcer =
+ designate = designate.policy:get_enforcer
+
console_scripts =
designate-rootwrap = oslo_rootwrap.cmd:main
designate-api = designate.cmd.api:main