| ############# |
| # OpenStack # |
| ############# |
| {%- from "cinder/map.jinja" import controller with context %} |
| |
| [composite:osapi_volume] |
| use = call:cinder.api:root_app_factory |
| /: apiversions |
| /v1: openstack_volume_api_v1 |
| /v2: openstack_volume_api_v2 |
| /v3: openstack_volume_api_v3 |
| |
| [composite:openstack_volume_api_v1] |
| use = call:cinder.api.middleware.auth:pipeline_factory |
| noauth = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler noauth apiv1 |
| keystone = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext {% if controller.audit.enabled %}audit {% endif %}apiv1 |
| keystone_nolimit = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext {% if controller.audit.enabled %}audit {% endif %}apiv1 |
| |
| [composite:openstack_volume_api_v2] |
| use = call:cinder.api.middleware.auth:pipeline_factory |
| noauth = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler noauth apiv2 |
| keystone = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext {% if controller.audit.enabled %}audit {% endif %}apiv2 |
| keystone_nolimit = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext {% if controller.audit.enabled %}audit {% endif %}apiv2 |
| |
| [composite:openstack_volume_api_v3] |
| use = call:cinder.api.middleware.auth:pipeline_factory |
| noauth = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler noauth apiv3 |
| keystone = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext apiv3 |
| keystone_nolimit = cors http_proxy_to_wsgi request_id faultwrap sizelimit osprofiler authtoken keystonecontext apiv3 |
| |
| [filter:request_id] |
| paste.filter_factory = oslo_middleware.request_id:RequestId.factory |
| |
| [filter:http_proxy_to_wsgi] |
| paste.filter_factory = oslo_middleware.http_proxy_to_wsgi:HTTPProxyToWSGI.factory |
| |
| [filter:cors] |
| paste.filter_factory = oslo_middleware.cors:filter_factory |
| oslo_config_project = cinder |
| |
| [filter:faultwrap] |
| paste.filter_factory = cinder.api.middleware.fault:FaultWrapper.factory |
| |
| [filter:osprofiler] |
| paste.filter_factory = osprofiler.web:WsgiMiddleware.factory |
| |
| [filter:noauth] |
| paste.filter_factory = cinder.api.middleware.auth:NoAuthMiddleware.factory |
| |
| [filter:sizelimit] |
| paste.filter_factory = oslo_middleware.sizelimit:RequestBodySizeLimiter.factory |
| |
| [app:apiv1] |
| paste.app_factory = cinder.api.v1.router:APIRouter.factory |
| |
| [app:apiv2] |
| paste.app_factory = cinder.api.v2.router:APIRouter.factory |
| |
| [app:apiv3] |
| paste.app_factory = cinder.api.v3.router:APIRouter.factory |
| |
| [pipeline:apiversions] |
| pipeline = cors http_proxy_to_wsgi faultwrap osvolumeversionapp |
| |
| [app:osvolumeversionapp] |
| paste.app_factory = cinder.api.versions:Versions.factory |
| |
| ########## |
| # Shared # |
| ########## |
| |
| [filter:keystonecontext] |
| paste.filter_factory = cinder.api.middleware.auth:CinderKeystoneContext.factory |
| |
| [filter:authtoken] |
| paste.filter_factory = keystonemiddleware.auth_token:filter_factory |
| |
| {%- if controller.audit.enabled %} |
| [filter:audit] |
| paste.filter_factory = {{ controller.get("audit", {}).get("filter_factory", "keystonemiddleware.audit:filter_factory") }} |
| audit_map_file = {{ controller.get("audit", {}).get("map_file", "/etc/pycadf/cinder_api_audit_map.conf") }} |
| {%- endif %} |
| |