summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorBoris Pavlovic <boris@pavlovic.me>2015-11-09 00:04:46 -0800
committerBoris Pavlovic <boris@pavlovic.me>2015-11-09 00:04:46 -0800
commit03e53a46207eeb41df954b55ef874b6d82a7a49d (patch)
treecae380da75125cf9bda02aeb769ae5e9f456d47c /doc
parent51761f375189bdc03b7e72a266ad0950777f32b1 (diff)
downloadosprofiler-03e53a46207eeb41df954b55ef874b6d82a7a49d.tar.gz
Spec: Optional options in api-paste.ini
Change-Id: Ifee3e8506c140d31a97106a28231b4baad9b781a
Diffstat (limited to 'doc')
-rw-r--r--doc/specs/in-progress/make_paste_ini_config_optional.rst82
1 files changed, 82 insertions, 0 deletions
diff --git a/doc/specs/in-progress/make_paste_ini_config_optional.rst b/doc/specs/in-progress/make_paste_ini_config_optional.rst
new file mode 100644
index 0000000..0e06d20
--- /dev/null
+++ b/doc/specs/in-progress/make_paste_ini_config_optional.rst
@@ -0,0 +1,82 @@
+..
+ This work is licensed under a Creative Commons Attribution 3.0 Unported
+ License.
+
+ http://creativecommons.org/licenses/by/3.0/legalcode
+
+..
+ This template should be in ReSTructured text. The filename in the git
+ repository should match the launchpad URL, for example a URL of
+ https://blueprints.launchpad.net/heat/+spec/awesome-thing should be named
+ awesome-thing.rst . Please do not delete any of the sections in this
+ template. If you have nothing to say for a whole section, just write: None
+ For help with syntax, see http://sphinx-doc.org/rest.html
+ To test out your formatting, see http://www.tele3.cz/jbar/rest/rest.html
+
+======================================
+ Make api-paste.ini Arguments Optional
+======================================
+
+Problem description
+===================
+
+Integration of OSprofiler with OpenStack projects is harder than it should be,
+it requires keeping part of arguments inside api-paste.ini files and part in
+projects.conf file.
+
+We should make all configuration options from api-paste.ini file optional
+and add alternative way to configure osprofiler.web.WsgiMiddleware
+
+
+Proposed change
+===============
+
+Integration of OSprofiler requires 2 changes in api-paste.ini file:
+
+- One is adding osprofiler.web.WsgiMiddleware to pipelines:
+ https://github.com/openstack/cinder/blob/master/etc/cinder/api-paste.ini#L13
+
+- Another is to add it's arguments:
+ https://github.com/openstack/cinder/blob/master/etc/cinder/api-paste.ini#L31-L32
+
+ so WsgiMiddleware will be correctly initialized here:
+ https://github.com/openstack/osprofiler/blob/51761f375189bdc03b7e72a266ad0950777f32b1/osprofiler/web.py#L64
+
+We should make ``hmac_keys`` and ``enabled`` variable optional, create
+separated method from initialization of wsgi middleware and cut new release.
+After that remove
+
+
+Alternatives
+------------
+
+None.
+
+
+Implementation
+==============
+
+Assignee(s)
+-----------
+
+Primary assignee:
+ <launchpad-id or None>
+
+Work Items
+----------
+
+- Modify osprofiler.web.WsgiMiddleware to make ``hmac_keys`` optional
+
+- Add alternative way to setup osprofiler.web.WsgiMiddleware, e.g. extra
+ argument to enable() hmac_keys
+
+- Cut new release 0.3.1
+
+- Fix the code in all projects: remove api-paste.ini arguments and add
+ extra argument to osprofiler.web.enable
+
+
+Dependencies
+============
+
+- Cinder, Glance, Trove - projects should be fixed