Hi,

I'm concerned with the dependencies between "os-capabilities" library and
all the other OpenStack services such as Nova, Placement, Ironic, etc.

Rather than embedding the universal "os-capabilities" in Nova, Cinder,
Glance, Ironic services that will introduce complexities if the library
versions are different, I'd prefer to hide this library behind the
placement service and expose consistent interfaces as well as caps to all
the other services. But the drawback here is also obvious: for example,
when nova wants to support a new capability, the development will require
os-capabilities updates, and related lib version bumps, which is
inconvenient and seems unnecessary.

So IMHO, the possible solution is:
* Let each services (Nova, Ironic ...) themselves manage their capabilities
under proper namespaces such as "compute", "ironic" or "storage";
* Let os-capabilities define as few as caps possible that are only
cross-project;
* And also use os-capabilities to convert service-defined or user-defined
caps to a standardized and distinct form that can be understood by the
placement engine.


My two cents,
Yingxin
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to