summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Nemec <bnemec@redhat.com>2018-05-15 19:18:18 +0000
committerBen Nemec <bnemec@redhat.com>2018-05-15 19:18:18 +0000
commit48949f5e20aff2f5caa3cad48666b13b8be91f29 (patch)
tree79a63fdabca41a2355a310d87a41945658f67b59
parent62645f688c64fa8cb4297071676635223db2cab9 (diff)
downloadoslo-policy-48949f5e20aff2f5caa3cad48666b13b8be91f29.tar.gz
Include both new and deprecated rules in generated sample
Previously, if a deprecated_rule was set on a rule, only the deprecated rule was written to the sample policy file. This is wrong since we want to be setting the new, undeprecated rule going forward. Change-Id: I181aeecda686d1d499616254c93002f51a5462c3
-rw-r--r--oslo_policy/generator.py5
-rw-r--r--oslo_policy/tests/test_generator.py5
2 files changed, 7 insertions, 3 deletions
diff --git a/oslo_policy/generator.py b/oslo_policy/generator.py
index fa5f4ee..485aba6 100644
--- a/oslo_policy/generator.py
+++ b/oslo_policy/generator.py
@@ -157,8 +157,9 @@ def _format_rule_default_yaml(default, include_help=True):
'check_str': default.check_str}
text = (
- '%(deprecated_text)s\n"%(old_name)s": "rule:%(name)s"\n'
- ) % {'deprecated_text': _format_help_text(deprecated_text),
+ '%(text)s%(deprecated_text)s\n"%(old_name)s": "rule:%(name)s"\n'
+ ) % {'text': text,
+ 'deprecated_text': _format_help_text(deprecated_text),
'old_name': default.deprecated_rule.name,
'name': default.name}
diff --git a/oslo_policy/tests/test_generator.py b/oslo_policy/tests/test_generator.py
index 3e6b425..afcf8e6 100644
--- a/oslo_policy/tests/test_generator.py
+++ b/oslo_policy/tests/test_generator.py
@@ -185,7 +185,10 @@ class GenerateSampleYAMLTestCase(base.PolicyBaseTestCase):
test_mgr = stevedore.named.NamedExtensionManager.make_test_instance(
extensions=extensions, namespace=['rules'])
- expected = '''# DEPRECATED
+ expected = '''# Create a bar.
+#"foo:create_bar": "role:fizz"
+
+# DEPRECATED
# "foo:post_bar":"role:fizz" has been deprecated since N in favor of
# "foo:create_bar":"role:fizz".
"foo:post_bar": "rule:foo:create_bar"