<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div><br>
</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>Hongbin Lu <<a href="mailto:hongbin034@gmail.com">hongbin034@gmail.com</a>><br>
<span style="font-weight:bold">Reply-To: </span>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Date: </span>Monday, March 23, 2015 at 8:37 AM<br>
<span style="font-weight:bold">To: </span>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>Re: [openstack-dev] [magnum] swagger-codegen generated code for python-k8sclient<br>
</div>
<div><br>
</div>
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">Hi Madhuri,
<div><br>
</div>
<div>Amazing work! I wouldn't concern the code duplication and modularity issue since the codes are generated. However, there is another concern here: if we find a bug/improvement of the generated code, we probably need to modify the generator. The question
 is if the upstream will accept the modifications? If yes, how fast the patch will go through.</div>
<div><br>
</div>
<div>I would prefer to maintain a folk of the generator. By this way, we would have full control of the generated code. Thoughts?</div>
</div>
</div>
</div>
</blockquote>
</span>
<div><br>
</div>
<div>Best practice is to to merge patches upstream unless upstream is really non-responsive.  For an example of something that would be handy to fix – the code generator should be generating pep8 compliant code ;)</div>
<div><br>
</div>
<div>The big issue with submitting changes to swagger is swagger is written in erlang – groan.</div>
<div><br>
</div>
<div>Regards,</div>
<div>-steve</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div>
<div>
<div dir="ltr">
<div><br>
</div>
<div>Thanks,</div>
<div>Hongbin</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar 23, 2015 at 10:11 AM, Steven Dake (stdake) <span dir="ltr">
<<a href="mailto:stdake@cisco.com" target="_blank">stdake@cisco.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word;color:rgb(0,0,0);font-size:14px;font-family:Calibri,sans-serif">
<div><br>
</div>
<div><br>
</div>
<span>
<div style="font-family:Calibri;font-size:11pt;text-align:left;color:black;BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;PADDING-BOTTOM:0in;PADDING-LEFT:0in;PADDING-RIGHT:0in;BORDER-TOP:#b5c4df 1pt solid;BORDER-RIGHT:medium none;PADDING-TOP:3pt">
<span style="font-weight:bold">From: </span>Madhuri Rai <<a href="mailto:madhuri.rai07@gmail.com" target="_blank">madhuri.rai07@gmail.com</a>><br>
<span style="font-weight:bold">Reply-To: </span>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Date: </span>Monday, March 23, 2015 at 1:53 AM<br>
<span style="font-weight:bold">To: </span>"<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>[openstack-dev] [magnum] swagger-codegen generated code for python-k8sclient<br>
</div>
<div>
<div class="h5">
<div><br>
</div>
<blockquote style="BORDER-LEFT:#b5c4df 5 solid;PADDING:0 0 0 5;MARGIN:0 0 0 5">
<div>
<div>
<div dir="ltr">Hi All,<br>
<br>
This is to have a discussion on the blueprint for implementing python-k8client for magnum.<br>
<br>
    <a href="https://blueprints.launchpad.net/magnum/+spec/python-k8sclient" target="_blank">
https://blueprints.launchpad.net/magnum/+spec/python-k8sclient</a><br>
<br>
I have committed the code generated by swagger-codegen at <a href="https://review.openstack.org/#/c/166720/" target="_blank">
https://review.openstack.org/#/c/166720/</a>.<br>
But I feel the quality of the code generated by swagger-codegen is not good.<br>
<br>
Some of the points:<br>
1) There is lot of code duplication. If we want to generate code for two or more versions, same code is duplicated for each API version.<br>
2) There is no modularity. CLI code for all the APIs are written in same file.<br>
<br>
So, I would like your opinion on this. How should we proceed further?<br>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</span>
<div><br>
</div>
<div>Madhuri,</div>
<div><br>
</div>
<div>First off, spectacular that you figured out how to do this!  Great great job!  I suspected the swagger code would be a bunch of garbage.  Just looking over the review, the output isn’t too terribly bad.  It has some serious pep8 problems.</div>
<div><br>
</div>
<div>Now that we have seen the swagger code generator works, we need to see if it produces useable output.  In other words, can the API be used by the magnum backend.  Google is “all-in” on swagger for their API model.  Realistically maintaining a python binding
 would be a huge job.  If we could just use swagger for the short term, even though its less then ideal, that would be my preference.  Even if its suboptimal.  We can put a readme in the TLD saying the code was generated by a a code generator and explain how
 to generate the API.</div>
<div><br>
</div>
<div>One last question.  I didn’t see immediately by looking at the api, but does it support TLS auth?  We will need that.</div>
<div><br>
</div>
<div>Super impressed!</div>
<div><br>
</div>
<div>Regards</div>
<div>-steve</div>
<div><br>
</div>
<div><br>
</div>
<span>
<blockquote style="BORDER-LEFT:#b5c4df 5 solid;PADDING:0 0 0 5;MARGIN:0 0 0 5">
<div>
<div>
<div dir="ltr"><br>
Regards,<br>
Madhuri Kumari</div>
</div>
</div>
</blockquote>
</span></div>
<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><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</span>
</body>
</html>