<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 30, 2017 at 9:46 PM, Doug Hellmann <span dir="ltr"><<a href="mailto:doug@doughellmann.com" target="_blank">doug@doughellmann.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Excerpts from Dmitry Tantsur's message of 2017-10-30 17:51:49 +0100:<br>
<div><div class="h5">> Hi all,<br>
><br>
> So far driver requirements [1] have been managed outside of global-requirements.<br>
> This was mostly necessary because some dependencies were not on PyPI. This is no<br>
> longer the case, and I'd like to consider managing them just like any other<br>
> dependencies. Pros:<br>
> 1. making these dependencies (and their versions) more visible for packagers<br>
> 2. following the same policies for regular and driver dependencies<br>
> 3. ensuring co-installability of these dependencies with each other and with the<br>
> remaining openstack<br>
> 4. potentially using upper-constraints in 3rd party CI to test what packagers<br>
> will probably package<br>
> 5. we'll be able to finally create a tox job running unit tests with all these<br>
> dependencies installed (FYI these often breaks in RDO CI)<br>
><br>
> Cons:<br>
> 1. more work for both the requirements team and the vendor teams<br>
> 2. inability to use ironic release notes to explain driver requirements changes<br>
> 3. any objections from the requirements team?<br>
><br>
> If we make this change, we'll drop driver-requirements.txt, and will use<br>
> setuptools extras to list then in setup.cfg (this way is supported by g-r)<br>
> similar to what we do in ironicclient [2].<br>
><br>
> We either will have one list:<br>
><br>
> [extras]<br>
> drivers =<br>
> sushy>=a.b<br>
> python-dracclient>=x.y<br>
> python-prolianutils>=v.w<br>
> ...<br>
><br>
> or (and I like this more) we'll have a list per hardware type:<br>
><br>
> [extras]<br>
> redfish =<br>
> sushy>=a.b<br>
> idrac =<br>
> python-dracclient>=x.y<br>
> ilo =<br>
> ...<br>
> ...<br>
><br>
> WDYT?<br>
<br>
</div></div>The second option is what I would expect.<br>
<span class="HOEnZb"><font color="#888888"><br></font></span></blockquote><div><br></div><div>I also would prefer option 2 (per driver extras), with a catch-all [all] extra to install all of those in one short command</div><div><br></div><div>I have a separate concern about ansible-deploy interface. It obviously depends on Ansibe, but so does most of upstream infra. I am not sure if adding (somehow restricted) Ansible to g-r won't break anything.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888">
Doug<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
> [1] <a href="https://github.com/openstack/ironic/blob/master/driver-requirements.txt" rel="noreferrer" target="_blank">https://github.com/openstack/<wbr>ironic/blob/master/driver-<wbr>requirements.txt</a><br>
> [2] <a href="https://github.com/openstack/python-ironicclient/blob/master/setup.cfg#L115" rel="noreferrer" target="_blank">https://github.com/openstack/<wbr>python-ironicclient/blob/<wbr>master/setup.cfg#L115</a><br>
><br>
<br>
______________________________<wbr>______________________________<wbr>______________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.<wbr>openstack.org?subject:<wbr>unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">Dr. Pavlo Shchelokovskyy<div>Senior Software Engineer</div><div>Mirantis Inc</div><div><a href="http://www.mirantis.com" target="_blank">www.mirantis.com</a></div></div></div></div></div>
</div></div>