5835b30cc2
Define multiple pipelines in glace-api.conf to reflect the various supported deployment flavors (minimal, with caching, with cache management, with keystone-based auth etc.). Add an optional paste_deploy.flavor config variable to allow the user select the appropriate pipeline without having to edit the paste config (i.e. uncommenting lines as before). For example in glance-api.conf, a setting of: [paste_deploy] flavor = keystone+caching identifies the following pipeline in glace-api-paste.ini: [pipeline:glance-api-keystone+caching] pipeline = versionnegotiation authtoken auth-context cache apiv1app the advantage being that the user need not be concerned with the precise sequence of filters required to realize the QoS they desire. Modify the functional tests that patch configuration (i.e. the keystone and caching tests) to use the new deployment_flavor mechanism. Extend the TestConfigOpts to support option groups. Change-Id: Ide843ada11bce115b7dc650440397853c6409b03
79 lines
2.4 KiB
INI
79 lines
2.4 KiB
INI
# Default minimal pipeline
|
|
[pipeline:glance-api]
|
|
pipeline = versionnegotiation context apiv1app
|
|
|
|
# Use the following pipeline for keystone auth
|
|
# i.e. in glance-api.conf:
|
|
# [paste_deploy]
|
|
# flavor = keystone
|
|
#
|
|
[pipeline:glance-api-keystone]
|
|
pipeline = versionnegotiation authtoken auth-context apiv1app
|
|
|
|
# Use the following pipeline to enable transparent caching of image files
|
|
# i.e. in glance-api.conf:
|
|
# [paste_deploy]
|
|
# flavor = caching
|
|
#
|
|
[pipeline:glance-api-caching]
|
|
pipeline = versionnegotiation context cache apiv1app
|
|
|
|
# Use the following pipeline for keystone auth with caching
|
|
# i.e. in glance-api.conf:
|
|
# [paste_deploy]
|
|
# flavor = keystone+caching
|
|
#
|
|
[pipeline:glance-api-keystone+caching]
|
|
pipeline = versionnegotiation authtoken auth-context cache apiv1app
|
|
|
|
# Use the following pipeline to enable the Image Cache Management API
|
|
# i.e. in glance-api.conf:
|
|
# [paste_deploy]
|
|
# flavor = cachemanagement
|
|
#
|
|
[pipeline:glance-api-cachemanagement]
|
|
pipeline = versionnegotiation context cache cachemanage apiv1app
|
|
|
|
# Use the following pipeline for keystone auth with cache management
|
|
# i.e. in glance-api.conf:
|
|
# [paste_deploy]
|
|
# flavor = keystone+cachemanagement
|
|
#
|
|
[pipeline:glance-api-keystone+cachemanagement]
|
|
pipeline = versionnegotiation authtoken auth-context cache cachemanage apiv1app
|
|
|
|
[app:apiv1app]
|
|
paste.app_factory = glance.common.wsgi:app_factory
|
|
glance.app_factory = glance.api.v1.router:API
|
|
|
|
[filter:versionnegotiation]
|
|
paste.filter_factory = glance.common.wsgi:filter_factory
|
|
glance.filter_factory = glance.api.middleware.version_negotiation:VersionNegotiationFilter
|
|
|
|
[filter:cache]
|
|
paste.filter_factory = glance.common.wsgi:filter_factory
|
|
glance.filter_factory = glance.api.middleware.cache:CacheFilter
|
|
|
|
[filter:cachemanage]
|
|
paste.filter_factory = glance.common.wsgi:filter_factory
|
|
glance.filter_factory = glance.api.middleware.cache_manage:CacheManageFilter
|
|
|
|
[filter:context]
|
|
paste.filter_factory = glance.common.wsgi:filter_factory
|
|
glance.filter_factory = glance.common.context:ContextMiddleware
|
|
|
|
[filter:authtoken]
|
|
paste.filter_factory = keystone.middleware.auth_token:filter_factory
|
|
service_protocol = http
|
|
service_host = 127.0.0.1
|
|
service_port = 5000
|
|
auth_host = 127.0.0.1
|
|
auth_port = 35357
|
|
auth_protocol = http
|
|
auth_uri = http://127.0.0.1:5000/
|
|
admin_token = 999888777666
|
|
|
|
[filter:auth-context]
|
|
paste.filter_factory = glance.common.wsgi:filter_factory
|
|
glance.filter_factory = keystone.middleware.glance_auth_token:KeystoneContextMiddleware
|