In the current state of the computer drivers, the exists an inverted inheritance in that OpenStack inherits from Rackspace, where Rackspace (and potentially other specific OpenStack providers) should rather inherit from OpenStack. This inversion complicated several things:
- Support for multiple OpenStack providers.
- Support for multiiple OpenStack API versions in general.
- Separately, future migration of the Rackspace driver to a new OpenStack version (e.g. migrating Rackspace to OpenStack 1.1 would migrate all OpenStack subclasses to 1.1).