<div dir="ltr">Thanks John Dickinson, we can follow Swift's way but as Michael Still mentioned seems listing all authors isn't practical.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 21, 2017 at 5:43 AM, John Dickinson <span dir="ltr"><<a href="mailto:me@not.mn" target="_blank">me@not.mn</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span><br>
<br>
On 20 Sep 2017, at 9:25, Michael Still wrote:<br>
<br>
> Dims, I'm not sure that's actually possible though. Many of these files<br>
> have been through rewrites and developed over a large number of years.<br>
> Listing all authors isn't practical.<br>
><br>
> Given the horse has bolted on forking these files, I feel like a comment<br>
> acknowledging the original source file is probably sufficient.<br>
<br>
</span>In Swift's repo, we acknowledge the original authors in a section of the AUTHORS file<br>
<br>
<a href="https://github.com/openstack/swift/blob/master/AUTHORS" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>swift/blob/master/AUTHORS</a><br>
<span class="HOEnZb"><font color="#888888"><br>
--John<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
<br>
><br>
> What is concerning to me is that some of these files are part of the "ABI"<br>
> of nova, and if mogan diverges from that then I think we're going to see<br>
> user complaints in the future. Specifically configdrive, and metadata seem<br>
> like examples of this. I don't want to see us end up in another "managed<br>
> cut and paste" like early oslo where nova continues to develop these and<br>
> mogan doesn't notice the changes.<br>
><br>
> I'm not sure how we resolve that. One option would be to refactor these<br>
> files into a shared library.<br>
><br>
> Michael<br>
><br>
><br>
><br>
><br>
> On Wed, Sep 20, 2017 at 5:51 AM, Davanum Srinivas <<a href="mailto:davanum@gmail.com">davanum@gmail.com</a>> wrote:<br>
><br>
>> Zhenguo,<br>
>><br>
>> Thanks for bringing this up.<br>
>><br>
>> For #1, yes please indicate which file from Nova, so if anyone wanted<br>
>> to cross check for fixes etc can go look in Nova<br>
>> For #2, When you pick up a commit from Nova, please make sure the<br>
>> commit message in Mogan has the following<br>
>>    * The gerrit change id(s) of the original commit, so folks can<br>
>> easily go find the original commit in gerritt<br>
>>    * Add "Co-Authored-By:" tags for each author in the original commit<br>
>> so they get credit<br>
>><br>
>> Also, Please make sure you do not alter any copyright or license<br>
>> related information in the header when you first copy a file from<br>
>> another project.<br>
>><br>
>> Thanks,<br>
>> Dims<br>
>><br>
>> On Wed, Sep 20, 2017 at 4:20 AM, Zhenguo Niu <<a href="mailto:niu.zglinux@gmail.com">niu.zglinux@gmail.com</a>><br>
>> wrote:<br>
>>> Hi all,<br>
>>><br>
>>> I'm from Mogan team, we copied some codes/frameworks from Nova since we<br>
>> want<br>
>>> to be a Nova with a bare metal specific API.<br>
>>> About why reinventing the wheel, you can find more informations here [1].<br>
>>><br>
>>> I would like to know what's the decent way to show our respect to the<br>
>>> original authors we copied from.<br>
>>><br>
>>> After discussing with the team, we plan to do some improvements as below:<br>
>>><br>
>>> 1. Adds some comments to the beginning of such files to indicate that<br>
>> they<br>
>>> leveraged the implementation of Nova.<br>
>>><br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> baremetal/ironic/driver.py#L19<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> console/websocketproxy.py#L17-<wbr>L18<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> consoleauth/manager.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> engine/configdrive.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> engine/metadata.py#L18<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/network/api.py#L18" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/<wbr>network/api.py#L18</a><br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> objects/aggregate.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> objects/keypair.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> objects/server_fault.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> objects/server_group.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> scheduler/client/report.py#L17<br>
>>> <a href="https://github.com/openstack/mogan/blob/master/mogan/" target="_blank" rel="noreferrer">https://github.com/openstack/<wbr>mogan/blob/master/mogan/</a><br>
>> scheduler/filter_scheduler.py#<wbr>L17<br>
>>><br>
>>> 2. For the changes we follows what nova changed, should reference to the<br>
>>> original authors in the commit messages.<br>
>>><br>
>>><br>
>>> Please let me know if there are something else we need to do or there are<br>
>>> already some existing principles we can follow, thanks!<br>
>>><br>
>>><br>
>>><br>
>>> [1] <a href="https://wiki.openstack.org/wiki/Mogan" target="_blank" rel="noreferrer">https://wiki.openstack.org/<wbr>wiki/Mogan</a><br>
>>><br>
>>><br>
>>> --<br>
>>> Best Regards,<br>
>>> Zhenguo Niu<br>
>>><br>
>>> ______________________________<wbr>______________________________<br>
>> ______________<br>
>>> OpenStack Development Mailing List (not for usage questions)<br>
>>> Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject" target="_blank" rel="noreferrer">OpenStack-dev-request@lists.<wbr>openstack.org?subject</a>:<br>
>> unsubscribe<br>
>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank" rel="noreferrer">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
>>><br>
>><br>
>><br>
>><br>
>> --<br>
>> Davanum Srinivas :: <a href="https://twitter.com/dims" target="_blank" rel="noreferrer">https://twitter.com/dims</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" rel="noreferrer">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" rel="noreferrer">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
>><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" target="_blank" rel="noreferrer">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" rel="noreferrer">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
</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" target="_blank" rel="noreferrer">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" rel="noreferrer">http://lists.openstack.org/<wbr>cgi-bin/mailman/listinfo/<wbr>openstack-dev</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Best Regards,<br></div>Zhenguo Niu<br></div></div>
</div>