Allow to specify custom volumes query filters
diff --git a/README.rst b/README.rst
index 72b2f4e..a8b174e 100644
--- a/README.rst
+++ b/README.rst
@@ -443,6 +443,21 @@
default_availability_zone: my-default-zone
storage_availability_zone: my-custom-zone-name
+
+Cinder setup with custom non-admin volume query filters:
+
+.. code-block:: yaml
+
+ cinder:
+ controller:
+ query_volume_filters:
+ - name
+ - status
+ - metadata
+ - availability_zone
+ - bootable
+
+
public_endpoint and osapi_volume_base_url parameters:
"public_endpoint" is used for configuring versions endpoint,
"osapi_volume_base_URL" is used to present Cinder URL to users.
diff --git a/cinder/files/liberty/cinder.conf.controller.Debian b/cinder/files/liberty/cinder.conf.controller.Debian
index 1ef6ec0..460f0b0 100644
--- a/cinder/files/liberty/cinder.conf.controller.Debian
+++ b/cinder/files/liberty/cinder.conf.controller.Debian
@@ -24,6 +24,11 @@
state_path = /var/lib/cinder
lock_path = /var/lock/cinder
+{%- if controller.query_volume_filters is defined %}
+# Available query filters for non-admin user
+query_volume_filters = {{ controller.query_volume_filters|join(",") }}
+{%- endif %}
+
use_syslog=False
glance_num_retries=0
@@ -87,9 +92,6 @@
notification_driver = messagingv2
{%- endif %}
-# Available queries for non-admin user
-query_volume_filters_opt = name,status,metadata,availability_zone,bootable
-
volume_name_template = volume-%s
#volume_group = vg_cinder_volume
diff --git a/cinder/files/mitaka/cinder.conf.controller.Debian b/cinder/files/mitaka/cinder.conf.controller.Debian
index 6ce59df..5aea59b 100644
--- a/cinder/files/mitaka/cinder.conf.controller.Debian
+++ b/cinder/files/mitaka/cinder.conf.controller.Debian
@@ -78,6 +78,10 @@
verbose=True
lock_path=/var/lock/cinder
+{%- if controller.query_volume_filters is defined %}
+query_volume_filters = {{ controller.query_volume_filters|join(",") }}
+{%- endif %}
+
[oslo_messaging_notifications]
{%- if controller.notification is mapping %}
driver = {{ controller.notification.get('driver', 'messagingv2') }}
diff --git a/cinder/files/newton/cinder.conf.controller.Debian b/cinder/files/newton/cinder.conf.controller.Debian
index 5b9df11..c94d662 100644
--- a/cinder/files/newton/cinder.conf.controller.Debian
+++ b/cinder/files/newton/cinder.conf.controller.Debian
@@ -86,6 +86,10 @@
verbose=True
lock_path=/var/lock/cinder
+{%- if controller.query_volume_filters is defined %}
+query_volume_filters = {{ controller.query_volume_filters|join(",") }}
+{%- endif %}
+
nova_catalog_admin_info = compute:nova:adminURL
nova_catalog_info = compute:nova:{{ controller.identity.get('endpoint_type', 'publicURL') }}
diff --git a/cinder/files/ocata/cinder.conf.controller.Debian b/cinder/files/ocata/cinder.conf.controller.Debian
index 5b9df11..c94d662 100644
--- a/cinder/files/ocata/cinder.conf.controller.Debian
+++ b/cinder/files/ocata/cinder.conf.controller.Debian
@@ -86,6 +86,10 @@
verbose=True
lock_path=/var/lock/cinder
+{%- if controller.query_volume_filters is defined %}
+query_volume_filters = {{ controller.query_volume_filters|join(",") }}
+{%- endif %}
+
nova_catalog_admin_info = compute:nova:adminURL
nova_catalog_info = compute:nova:{{ controller.identity.get('endpoint_type', 'publicURL') }}