ooi/doc/source/user/configuration.rst

2.4 KiB

Configuration

Once installed it is needed to add it to your OpenStack installation. Edit your /etc/nova/api-paste.ini.

First it is needed to add a the OCCI filter like this:

[filter:occi]
paste.filter_factory = ooi.wsgi:OCCIMiddleware.factory
openstack_version = /v2

openstack_version can be configured to any of the supported OpenStack API versions, as indicated in Table api-versions. If it is not configured, by default it will take the /v2.1 value.

Supported OpenStack API versions
OpenStack API version openstack_version corresponding OpenStack composite section
v2 /v2 [composite:openstack_compute_api_v2]
v2.1 /v2.1 [composite:openstack_compute_api_v21]

The next step is to create a composite section for the OCCI interface. It is needed to duplicate the corresponding OpenStack API composite<api-versions> section, renaming it to occi_api_v11. Once duplicated, the occi middleware needs to be added just before the last component of the pipeline. So, in the example above where /v2 has been configured, we need to duplicate the [composite:openstack_compute_api_v2] as follows:

[composite:occi_api_v11]
use = call:nova.api.auth:pipeline_factory
noauth = compute_req_id faultwrap sizelimit noauth ratelimit occi osapi_compute_app_v2
keystone = compute_req_id faultwrap sizelimit occi authtoken keystonecontext ratelimit occi osapi_compute_app_v2
keystone_nolimit = compute_req_id faultwrap sizelimit authtoken keystonecontext occi osapi_compute_app_v2

The last step is to add it to the [composite:osapi_compute] section:

[composite:osapi_compute]
# (...)
/occi1.1: occi_api_11

You can find more detailed examples regarding the pipeline configuration in the pipeline-examples section.

If everything is OK, after rebooting the nova-api service you should be able to access your OCCI endpoint at:

$ nova credentials
# Grab the token
$ export KID=<token>
$ curl -H "x-auth-token: $KID" http://localhost:8774/occi1.1/-/