This cookbook looks a bit more like RCB due to some difficult to solve
OOO issues.
1. Needed to duplicate the cinder.conf template in each service needing it, due
to the following reasons:
a. Having a notifies in common.rb to restart services that were not defined
yet (but in later recipes) broke the recipe.
b. Having notifies in common.rb for services that were not installed breaks
things.
Due to this very diffuclt issue to solve, felt it was okay to duplicate the
template rendering.
2. Need to lookup the database password from a mysql server query, like we do
elsewhere. Have not tackled this yet. Hardcoded to see if service would
finally install.
3. Reformatted a few things to match our other openstack cookbooks.
4. Found a few bugs with endpoints needing '.to_s', or missing @ reference
in template.
63 lines
2.0 KiB
Plaintext
63 lines
2.0 KiB
Plaintext
#############
|
|
# Openstack #
|
|
#############
|
|
|
|
[composite:osapi_volume]
|
|
use = call:cinder.api:root_app_factory
|
|
/: apiversions
|
|
/v1: openstack_volume_api_v1
|
|
/v2: openstack_volume_api_v2
|
|
|
|
[composite:openstack_volume_api_v1]
|
|
use = call:cinder.api.middleware.auth:pipeline_factory
|
|
noauth = faultwrap sizelimit noauth apiv1
|
|
keystone = faultwrap sizelimit authtoken keystonecontext apiv1
|
|
keystone_nolimit = faultwrap sizelimit authtoken keystonecontext apiv1
|
|
|
|
[composite:openstack_volume_api_v2]
|
|
use = call:cinder.api.middleware.auth:pipeline_factory
|
|
noauth = faultwrap sizelimit noauth apiv2
|
|
keystone = faultwrap sizelimit authtoken keystonecontext apiv2
|
|
keystone_nolimit = faultwrap sizelimit authtoken keystonecontext apiv2
|
|
|
|
[filter:faultwrap]
|
|
paste.filter_factory = cinder.api.middleware.fault:FaultWrapper.factory
|
|
|
|
[filter:noauth]
|
|
paste.filter_factory = cinder.api.middleware.auth:NoAuthMiddleware.factory
|
|
|
|
[filter:sizelimit]
|
|
paste.filter_factory = cinder.api.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
|
|
|
|
[pipeline:apiversions]
|
|
pipeline = 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 = keystoneclient.middleware.auth_token:filter_factory
|
|
service_host = <%= @identity_endpoint.host %>
|
|
service_port = <%= @identity_endpoint.port %>
|
|
service_protocol = <%= @identity_endpoint.scheme %>
|
|
auth_host = <%= @identity_admin_endpoint.host %>
|
|
auth_port = <%= @identity_admin_endpoint.port %>
|
|
auth_protocol = <%= @identity_admin_endpoint.scheme %>
|
|
admin_tenant_name = <%= node["cinder"]["service_tenant_name"] %>
|
|
admin_user = <%= node["cinder"]["service_user"] %>
|
|
admin_password = <%= node["cinder"]["service_pass"] %>
|
|
signing_dir = /var/lib/cinder
|