[openstack-dev] [ironic] usage of ironic-lib

Loo, Ruby ruby.loo at intel.com
Thu May 19 14:11:45 UTC 2016

Ooo, thanks for that data point Pavlo!

Thanks Lucas, Sam, Shivanand and Pavlo for commenting. From the replies, it seems like the original intent of ironic-lib was to solely be used by ironic and ironic-python-agent projects. But that doesn’t seem to have been communicated properly (because I wasn’t aware of that, nor was Pavlo).

No one has disagreed that ironic-lib should *not* be used outside of ironic and IPA and people seem to be in favour of it. However, ironic-lib as it is today, is not ready to be used outside of ironic and IPA.

So… how does any library get ready to be used by others? Clearly it is being used now by the fuel-agent. Do we say ‘sorry fuel-agent, we don’t guarantee yet that we won’t break you’? Or ‘fuel-agent, just so you know. Ironic-lib isn’t quite ready to be used so we cannot guarantee that we won’t break you but we will try our best not to do so’? Or… ?

What needs to be done for ironic-lib to be officially used by anyone? Lucas mentioned some things. Is that all? Do we open bugs for them? At what point would we feel comfortable saying ‘yes, here’s a library that can be used by anyone?’


From: Pavlo Shchelokovskyy <pshchelokovskyy at mirantis.com>
Reply-To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev at lists.openstack.org>
Date: Monday, May 16, 2016 at 11:25 AM
To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev at lists.openstack.org>
Subject: Re: [openstack-dev] [ironic] usage of ironic-lib

I'd like to point that ironic-lib is already used outside of Ironic tree - for the third-party deployment drivers, e.g this fuel-agent based one [0].

[0] https://github.com/openstack/fuel-agent/blob/master/contrib/ironic/ironic-fa-deploy/ironic_fa_deploy/modules/fuel_agent.py#L30
Best regards,

Dr. Pavlo Shchelokovskyy
Senior Software Engineer
Mirantis Inc

On Mon, May 16, 2016 at 6:14 PM, Lucas Alvares Gomes <lucasagomes at gmail.com<mailto:lucasagomes at gmail.com>> wrote:

On Mon, May 16, 2016 at 3:56 PM, Sam Betts (sambetts)
<sambetts at cisco.com<mailto:sambetts at cisco.com>> wrote:
> I personally disagree with saying that if we wanted it make it usable by
> projects other than ones in the Ironic umbrella it should go into oslo. I
> think that non-ironic projects directly related to Ironic such as out of
> tree drivers etc, should be able to utilise the code placed into
> ironic-lib.
> Neutron are doing a very similar thing for all their drivers/extensions
> they have broken out over the last 2 cycles,
> http://specs.openstack.org/openstack/neutron-specs/specs/liberty/neutron-li
> b.html.
> Making ironic-lib available to out of tree drivers etc also puts us into a
> good position to begin the work to stabilise things like the driver API.
> Neutron is making the rule that out of tree drivers shouldn1t
> inherit/import anything from the neutron core code base, only neutron-lib,
> they are doing this to provide a stable interface that shouldn1t be broken
> by changes to neutron core. I think we could do the same, with in-tree
> drivers dog-fooding the driver api we provide in ironic-lib.

I'm personally fine with that goal, if we as a community agree that in
the soon future of ironic-lib should target a broader audience. The
thing is that I don't think the lib was conceived with that in mind,
we started small (baby-steps) sharing partitioning code from Ironic
and Ironic-Python-Agent, now that it's done we can start working
towards making it a more generic library.

What I don't think we should do is say that the library's _right now_
ready for it, the interfaces we have at the moment should not be
considered stable, Ironic is very opinionated in many aspects
(specially when partitioning the disk), there's no documentation, no
release notes, etc...

So, if agreed, let's do it, but let's do it properly.


OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160519/0987bf12/attachment.html>

More information about the OpenStack-dev mailing list