Unhardocde policy file path
PROD-33618
Change-Id: I7d8cacca4c3963d609dce032ea98798cc64bf16c
diff --git a/neutron/files/queens/neutron-server.conf b/neutron/files/queens/neutron-server.conf
index 12bd185..6825a09 100644
--- a/neutron/files/queens/neutron-server.conf
+++ b/neutron/files/queens/neutron-server.conf
@@ -508,8 +508,8 @@
[oslo_policy]
-{%- if server.policy is defined %}
-{%- set _data = server.policy %}
+{%- if server.oslo_policy is defined %}
+{%- set _data = server.oslo_policy %}
{%- include "oslo_templates/files/queens/oslo/_policy.conf" %}
{%- endif %}
diff --git a/neutron/map.jinja b/neutron/map.jinja
index 9e6cb36..68a0ba3 100644
--- a/neutron/map.jinja
+++ b/neutron/map.jinja
@@ -146,6 +146,9 @@
'notification': {},
'dpdk': false,
'cors': {},
+ 'oslo_policy': {
+ 'policy_file': 'policy.json'
+ },
'audit': {
'enabled': false
},
@@ -171,6 +174,9 @@
'notification': {},
'dpdk': false,
'cors': {},
+ 'oslo_policy': {
+ 'policy_file': 'policy.json'
+ },
'audit': {
'enabled': false
},
diff --git a/neutron/server.sls b/neutron/server.sls
index 99bbdef..304c32c 100644
--- a/neutron/server.sls
+++ b/neutron/server.sls
@@ -219,12 +219,23 @@
{%- endif %}
+{%- if server.version not in ["juno", "kilo", "liberty", "mitaka", "newton", "ocata", "pike"] %}
+{#- Since Queens release `policy.json` is changed to `policy.yaml`. But default option in `oslo_policy` is `policy.json` #}
+/etc/neutron/{{ server.get('oslo_policy', {}).get('policy_file', 'policy.json') }}:
+ file.managed:
+ - mode: 0640
+ - user: root
+ - group: neutron
+ - require:
+ - pkg: neutron_server_packages
+{%- endif %}
+
{%- for name, rule in server.get('policy', {}).iteritems() %}
{%- if rule != None %}
neutron_keystone_rule_{{ name }}_present:
keystone_policy.rule_present:
- - path: /etc/neutron/policy.json
+ - path: /etc/neutron/{{ server.get('oslo_policy', {}).get('policy_file', 'policy.json') }}
- name: {{ name }}
- rule: {{ rule }}
- require:
@@ -234,7 +245,7 @@
neutron_keystone_rule_{{ name }}_absent:
keystone_policy.rule_absent:
- - path: /etc/neutron/policy.json
+ - path: /etc/neutron/{{ server.get('oslo_policy', {}).get('policy_file', 'policy.json') }}
- name: {{ name }}
- require:
- pkg: neutron_server_packages