<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 05/20/2014 03:19 PM, Christopher
Yeoh wrote:<br>
</div>
<blockquote
cite="mid:CANCY3edX90bfgqiN=o1tp08HZ8QFD=MfeYT4OSVfTh4HUdhiLA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Tue, May 20, 2014 at 8:58 PM, Sean
Dague <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:sean@dague.net" target="_blank">sean@dague.net</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="">On 05/19/2014 11:49 PM, Christopher Yeoh
wrote:<br>
>><br>
> - if/else inlined in tests based on the
"microversion mode" that is<br>
> being tested at the moment (perhaps least amount of
"code" but cost is<br>
> readability)<br>
> - class inheritance (override specific bits where
necessary - bit more<br>
> code, but readbility better?).<br>
> - duplicated tests (min sharing)<br>
<br>
</div>
Realistically, the current approach won't scale to micro
versions. We<br>
really won't be able to have 100 directories for Nova, or
a 100 class<br>
inheritances.<br>
<br>
When a micro version happens, it will affect a small
number of<br>
interfaces. So the important thing will be testing those
interfaces<br>
before and after that change. We'll have to be really
targeted here.<br>
Much like the way the database migration tests with data
injection are.<br>
<br>
Honestly, I think this is going to be hard to fully map
until we've got<br>
an interesting version sitting in front of us.<br>
<span class="HOEnZb"><font color="#888888"><br>
</font></span></blockquote>
<div><br>
</div>
<div>So I agree that we won't be able to have a new
directory for every microversion. But for the v2/v3
changes<br>
we already have a lot of typical minor changes we'll need
to handle. Eg.<br>
<br>
</div>
<div>- a parameter that has been renamed or removed
(effectively the same thing from an API point of view)<br>
</div>
<div>- a success status code that has changed<br>
<br>
</div>
<div>Something like say a tasks API would I think be quite
different because there would be a lot less shared code
for the tests and so we'll need a different solution.<br>
<br>
</div>
<div>I guess what I'm saying is once we have a better idea
of how the microversion interface will work then I think
doing the work to minimise the code duplication on the
tempest side is worth it because we have lots of examples
of the sorts of cases we'll need to handle.<br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
I agree. I think what Sean is saying, and this was the original
intent of starting this thread, is that the structure we come up
with for micro versions will look a lot different than the v2/v3
consolidation that was in progress in tempest when the decision to
abandon v3 as a monolithic new api was made. So we have to stop the
current changes based on a monolithic v2/v3, and then come up with a
new organization based on micro versions when the nova approach has
solidified sufficiently.<br>
<br>
-David<br>
<br>
<blockquote
cite="mid:CANCY3edX90bfgqiN=o1tp08HZ8QFD=MfeYT4OSVfTh4HUdhiLA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div>
</div>
<div><br>
Regards,<br>
<br>
Chris<br>
</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">
-Sean<br>
</font></span>
<div class="HOEnZb">
<div class="h5"><br>
--<br>
Sean Dague<br>
<a moz-do-not-send="true" href="http://dague.net"
target="_blank">http://dague.net</a><br>
<br>
</div>
</div>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a moz-do-not-send="true"
href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a moz-do-not-send="true"
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>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
OpenStack-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
</blockquote>
<br>
</body>
</html>