Configurable db plugins
I'd like to propose the ability to support configurable db plugins for
trove. Currently the sqlalchemy api's configure_db() function in trove
supports the ability to pass in 1 or more db plugin (mappers) classes
[1] which allow consumers to add their own schema (tables) to trove's
db. However the current trove.cmd.*.py entry points do not support any
means to pass in such plugins (example [2]).
I was thinking something like the following:
(a) Support a comma list property on CONF.DEFAULT in the trove conf
files.. e.g.
[DEFAULT]
db_plugins =
org.foo.
(b) In the trove CONF, default the comma list property to empty list
(e.g. []).
(c) Update each of the respective trove.cmd.*.py entry point (main()
methods) which call into configure_db() to first load any plugin classes
and them pass them into the method.. e.g.
get_db_
The above should give consumers the ability to plug into the trove
database api and add scheme without upstream changes.
See email list: http://
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Boden R
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Nikhil Manchanda
Related branches
Related bugs
Sprints
Whiteboard
Based on trove BP meeting we have moved to drop this BP due to:
(a) It couples consumers using this feature to the underlying implementation which may not be supported long term.
(b) No other openstack projects are exposing such functionality; an indication this is not a good practice.