[Openstack-operators] [openstack-dev] [ironic] [nova] [tripleo] Deprecation of Nova's integration with Ironic Capabilities and ComputeCapabilitiesFilter

melanie witt melwittt at gmail.com
Thu Sep 27 22:49:47 UTC 2018

On Thu, 27 Sep 2018 17:23:26 -0500, Matt Riedemann wrote:
> On 9/27/2018 3:02 PM, Jay Pipes wrote:
>> A great example of this would be the proposed "deploy template" from
>> [2]. This is nothing more than abusing the placement traits API in order
>> to allow passthrough of instance configuration data from the nova flavor
>> extra spec directly into the nodes.instance_info field in the Ironic
>> database. It's a hack that is abusing the entire concept of the
>> placement traits concept, IMHO.
>> We should have a way *in Nova* of allowing instance configuration
>> key/value information to be passed through to the virt driver's spawn()
>> method, much the same way we provide for user_data that gets exposed
>> after boot to the guest instance via configdrive or the metadata service
>> API. What this deploy template thing is is just a hack to get around the
>> fact that nova doesn't have a basic way of passing through some collated
>> instance configuration key/value information, which is a darn shame and
>> I'm really kind of annoyed with myself for not noticing this sooner. :(
> We talked about this in Dublin through right? We said a good thing to do
> would be to have some kind of template/profile/config/whatever stored
> off in glare where schema could be registered on that thing, and then
> you pass a handle (ID reference) to that to nova when creating the
> (baremetal) server, nova pulls it down from glare and hands it off to
> the virt driver. It's just that no one is doing that work.

If I understood correctly, that discussion was around adding a way to 
pass a desired hardware configuration to nova when booting an ironic 
instance. And that it's something that isn't yet possible to do using 
the existing ComputeCapabilitiesFilter. Someone please correct me if I'm 
wrong there.

That said, I still don't understand why we are talking about deprecating 
the ComputeCapabilitiesFilter if there's no supported way to replace it 
yet. If boolean traits are not enough to replace it, then we need to 
hold off on deprecating it, right? Would the 
template/profile/config/whatever in glare approach replace what the 
ComputeCapabilitiesFilter is doing or no? Sorry, I'm just not clearly 
understanding this yet.


More information about the OpenStack-operators mailing list