108 lines
3.1 KiB
INI
108 lines
3.1 KiB
INI
############
|
|
# Metadata #
|
|
############
|
|
[composite:metadata]
|
|
use = egg:Paste#urlmap
|
|
/: meta
|
|
|
|
[pipeline:meta]
|
|
pipeline = ec2faultwrap logrequest metaapp
|
|
|
|
[app:metaapp]
|
|
paste.app_factory = nova.api.metadata.handler:MetadataRequestHandler.factory
|
|
|
|
#######
|
|
# EC2 #
|
|
#######
|
|
|
|
[composite:ec2]
|
|
use = egg:Paste#urlmap
|
|
/services/Cloud: ec2cloud
|
|
|
|
[composite:ec2cloud]
|
|
use = call:nova.api.auth:pipeline_factory
|
|
noauth = ec2faultwrap logrequest ec2noauth cloudrequest validator ec2executor
|
|
keystone = ec2faultwrap logrequest ec2keystoneauth cloudrequest validator ec2executor
|
|
|
|
[filter:ec2faultwrap]
|
|
paste.filter_factory = nova.api.ec2:FaultWrapper.factory
|
|
|
|
[filter:logrequest]
|
|
paste.filter_factory = nova.api.ec2:RequestLogging.factory
|
|
|
|
[filter:ec2lockout]
|
|
paste.filter_factory = nova.api.ec2:Lockout.factory
|
|
|
|
[filter:ec2keystoneauth]
|
|
paste.filter_factory = nova.api.ec2:EC2KeystoneAuth.factory
|
|
|
|
[filter:ec2noauth]
|
|
paste.filter_factory = nova.api.ec2:NoAuth.factory
|
|
|
|
[filter:cloudrequest]
|
|
controller = nova.api.ec2.cloud.CloudController
|
|
paste.filter_factory = nova.api.ec2:Requestify.factory
|
|
|
|
[filter:authorizer]
|
|
paste.filter_factory = nova.api.ec2:Authorizer.factory
|
|
|
|
[filter:validator]
|
|
paste.filter_factory = nova.api.ec2:Validator.factory
|
|
|
|
[app:ec2executor]
|
|
paste.app_factory = nova.api.ec2:Executor.factory
|
|
|
|
#############
|
|
# Openstack #
|
|
#############
|
|
|
|
[composite:osapi_compute]
|
|
use = call:nova.api.openstack.urlmap:urlmap_factory
|
|
/: oscomputeversions
|
|
/v1.1: openstack_compute_api_v2
|
|
/v2: openstack_compute_api_v2
|
|
|
|
[composite:openstack_compute_api_v2]
|
|
use = call:nova.api.auth:pipeline_factory
|
|
noauth = faultwrap sizelimit noauth ratelimit osapi_compute_app_v2
|
|
keystone = faultwrap sizelimit authtoken keystonecontext ratelimit osapi_compute_app_v2
|
|
keystone_nolimit = faultwrap sizelimit authtoken keystonecontext osapi_compute_app_v2
|
|
|
|
[filter:faultwrap]
|
|
paste.filter_factory = nova.api.openstack:FaultWrapper.factory
|
|
|
|
[filter:noauth]
|
|
paste.filter_factory = nova.api.openstack.auth:NoAuthMiddleware.factory
|
|
|
|
[filter:ratelimit]
|
|
paste.filter_factory = nova.api.openstack.compute.limits:RateLimitingMiddleware.factory
|
|
limits=(POST, "*", .*, 1000, MINUTE);(POST, "*/servers", ^/servers, 1000, DAY);(PUT, "*", .*, 1000, MINUTE);(GET, "*changes-since*", .*changes-since.*, 1000, MINUTE);(DELETE, "*", .*, 1000, MINUTE)
|
|
|
|
[filter:sizelimit]
|
|
paste.filter_factory = nova.api.sizelimit:RequestBodySizeLimiter.factory
|
|
|
|
[app:osapi_compute_app_v2]
|
|
paste.app_factory = nova.api.openstack.compute:APIRouter.factory
|
|
|
|
[pipeline:oscomputeversions]
|
|
pipeline = faultwrap oscomputeversionapp
|
|
|
|
[app:oscomputeversionapp]
|
|
paste.app_factory = nova.api.openstack.compute.versions:Versions.factory
|
|
|
|
##########
|
|
# Shared #
|
|
##########
|
|
|
|
[filter:keystonecontext]
|
|
paste.filter_factory = nova.api.auth:NovaKeystoneContext.factory
|
|
|
|
[filter:authtoken]
|
|
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
|
|
# signing_dir is configurable, but the default behavior of the authtoken
|
|
# middleware should be sufficient. It will create a temporary directory
|
|
# in the home directory for the user the nova process is running as.
|
|
#signing_dir = /var/lib/nova/keystone-signing
|
|
# Workaround for https://bugs.launchpad.net/nova/+bug/1154809
|
|
auth_version = v2.0
|