<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:MingLiU;
        panose-1:2 2 5 9 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Ooo, thanks for that data point Pavlo!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">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).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">No one has disagreed that ironic-lib should *<b>not</b>* 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.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">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… ?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">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?’<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">--ruby<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="font-family:Calibri;color:black">From: </span>
</b><span style="font-family:Calibri;color:black">Pavlo Shchelokovskyy <pshchelokovskyy@mirantis.com><br>
<b>Reply-To: </b>"OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org><br>
<b>Date: </b>Monday, May 16, 2016 at 11:25 AM<br>
<b>To: </b>"OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org><br>
<b>Subject: </b>Re: [openstack-dev] [ironic] usage of ironic-lib<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt">Hi,<o:p></o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt">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].<br>
<br>
[0] <a href="https://github.com/openstack/fuel-agent/blob/master/contrib/ironic/ironic-fa-deploy/ironic_fa_deploy/modules/fuel_agent.py#L30">
https://github.com/openstack/fuel-agent/blob/master/contrib/ironic/ironic-fa-deploy/ironic_fa_deploy/modules/fuel_agent.py#L30</a><o:p></o:p></p>
</div>
<p class="MsoNormal">Best regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><br clear="all">
<o:p></o:p></p>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Dr. Pavlo Shchelokovskyy <o:p></o:p></p>
<div>
<p class="MsoNormal">Senior Software Engineer<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Mirantis Inc<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="http://www.mirantis.com" target="_blank">www.mirantis.com</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Mon, May 16, 2016 at 6:14 PM, Lucas Alvares Gomes <<a href="mailto:lucasagomes@gmail.com" target="_blank">lucasagomes@gmail.com</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<p class="MsoNormal">Hi,<br>
<br>
On Mon, May 16, 2016 at 3:56 PM, Sam Betts (sambetts)<br>
<<a href="mailto:sambetts@cisco.com">sambetts@cisco.com</a>> wrote:<br>
> I personally disagree with saying that if we wanted it make it usable by<br>
> projects other than ones in the Ironic umbrella it should go into oslo. I<br>
> think that non-ironic projects directly related to Ironic such as out of<br>
> tree drivers etc, should be able to utilise the code placed into<br>
> ironic-lib.<br>
><br>
> Neutron are doing a very similar thing for all their drivers/extensions<br>
> they have broken out over the last 2 cycles,<br>
> <a href="http://specs.openstack.org/openstack/neutron-specs/specs/liberty/neutron-li" target="_blank">
http://specs.openstack.org/openstack/neutron-specs/specs/liberty/neutron-li</a><br>
> b.html.<br>
><br>
> Making ironic-lib available to out of tree drivers etc also puts us into a<br>
> good position to begin the work to stabilise things like the driver API.<br>
> Neutron is making the rule that out of tree drivers shouldn1t<span style="font-family:MingLiU"><br>
</span>> inherit/import anything from the neutron core code base, only neutron-lib,<span style="font-family:MingLiU"><br>
</span>> they are doing this to provide a stable interface that shouldn1t be broken<span style="font-family:MingLiU"><br>
</span>> by changes to neutron core. I think we could do the same, with in-tree<br>
> drivers dog-fooding the driver api we provide in ironic-lib.<br>
><br>
<br>
I'm personally fine with that goal, if we as a community agree that in<br>
the soon future of ironic-lib should target a broader audience. The<br>
thing is that I don't think the lib was conceived with that in mind,<br>
we started small (baby-steps) sharing partitioning code from Ironic<br>
and Ironic-Python-Agent, now that it's done we can start working<br>
towards making it a more generic library.<br>
<br>
What I don't think we should do is say that the library's _right now_<br>
ready for it, the interfaces we have at the moment should not be<br>
considered stable, Ironic is very opinionated in many aspects<br>
(specially when partitioning the disk), there's no documentation, no<br>
release notes, etc...<br>
<br>
So, if agreed, let's do it, but let's do it properly.<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><br>
Cheers,<br>
Lucas<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</div>
</body>
</html>