<p dir="ltr">I read what you say Steven;) strategy plugin is not module, we don't use popen there. Also it will require importing GPL code from Ansible itself. Clint is right in this context. Writing it from scratch is not an option to (way to complex than docker stuff we did). Imho only option will be to write GPL driver that will be run with popen. Question is whether this driver can sit in Kolla repo or not, and if not, where?</p>
<div class="gmail_extra"><br><div class="gmail_quote">On Nov 4, 2016 6:51 PM, "Steven Dake (stdake)" <<a href="mailto:stdake@cisco.com">stdake@cisco.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="m_-6107825992135847352WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Michal,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Have you read nothing I’ve said? If its new code, write it as ASL2.0. The fact that it plugs in or uses GPLv3 code is totally irrelevant since it is isolated by a network layer (specifically
popen).<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">Regards<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri">-steve<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Calibri"><u></u> <u></u></span></p>
<blockquote style="border:none;border-left:solid #b5c4df 4.5pt;padding:0in 0in 0in 4.0pt;margin-left:3.75pt;margin-right:0in">
<div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-family:Calibri;color:black">From: </span>
</b><span style="font-family:Calibri;color:black">Michał Jastrzębski <<a href="mailto:inc007@gmail.com" target="_blank">inc007@gmail.com</a>></span><span style="font-family:PMingLiU;color:black"><br>
</span><b><span style="font-family:Calibri;color:black">Reply-To: </span></b><span style="font-family:Calibri;color:black">"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.<wbr>openstack.org</a>><br>
<b>Date: </b>Friday, November 4, 2016 at 5:54 PM<br>
<b>To: </b>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.<wbr>openstack.org</a>><br>
<b>Subject: </b>Re: [openstack-dev] [tc][kolla] Ansible module with GPLv3<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<p>So as Clint mentioned, strategy plugins probably will be tainted by GPL. One of alternatives would be to create separate project for this single plugin, but I'd rather avoid that.
<u></u><u></u></p>
<p>Any other alternatives comes to mind?<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">On Nov 4, 2016 5:18 PM, "Fox, Kevin M" <<a href="mailto:Kevin.Fox@pnnl.gov" target="_blank">Kevin.Fox@pnnl.gov</a>> wrote:<u></u><u></u></p>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">Must be gplv3 compatible. not necessarily gpl. apache license is compatible.<br>
<br>
Thanks,<br>
Kevin<br>
______________________________<wbr>__________<br>
From: Clint Byrum [<a href="mailto:clint@fewbar.com" target="_blank">clint@fewbar.com</a>]<br>
Sent: Friday, November 04, 2016 4:38 PM<br>
To: openstack-dev<br>
Subject: Re: [openstack-dev] [tc][kolla] Ansible module with GPLv3<br>
<br>
Excerpts from Jeremy Stanley's message of 2016-11-04 23:05:54 +0000:<br>
> On 2016-11-04 22:50:10 +0000 (+0000), Jeremy Stanley wrote:<br>
> [...]<br>
> > As I understand it, the challenge here is that plugins for Ansible<br>
> > will by definition be derivative works of Ansible and thus inherit<br>
> > their license choice. No amount of "clean room reimplementation"<br>
> > will solve that unless you also reimplement Ansible under a<br>
> > different license while you're at it.<br>
> [...]<br>
><br>
> Further research suggests I'm wrong on this front. I was assuming<br>
> Ansible was providing a Python plug-in API here, in which case<br>
> coding to that would potentially create a derivative work. Instead<br>
> it looks like for at least some things they refer to as plug-ins<br>
> they pass around a JSON data structure which upstream Ansible has<br>
> said in the past they do not consider to result in plug-ins becoming<br>
> derivative works of Ansible. For example:<br>
><br>
> <a href="https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/basic.py" target="_blank">
https://github.com/ansible/<wbr>ansible/blob/devel/lib/<wbr>ansible/module_utils/basic.py</a><br>
<br>
Modules are not plugins.<br>
<br>
> <a href="https://groups.google.com/forum/#!topic/ansible-project/GLwe3vbwTQk" target="_blank">
https://groups.google.com/<wbr>forum/#!topic/ansible-project/<wbr>GLwe3vbwTQk</a><br>
<br>
Same here.<br>
<br>
> <a href="https://github.com/ansible/ansible/issues/8864" target="_blank">https://github.com/ansible/<wbr>ansible/issues/8864</a><br>
<br>
This only refers to dynamic inventory, which is hardly even a plugin<br>
interface.<br>
<br>
Strategy plugins run in ansible itself and must import pieces of Ansible,<br>
and thus must be GPLv3:<br>
<br>
<a href="https://github.com/ansible/ansible/tree/devel/lib/ansible/plugins/strategy" target="_blank">https://github.com/ansible/<wbr>ansible/tree/devel/lib/<wbr>ansible/plugins/strategy</a><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" 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" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><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" 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" target="_blank">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><u></u><u></u></p>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
<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>
<br></blockquote></div></div>