<div dir="ltr"><div class="gmail_extra"><br><br><div class="gmail_quote">On 3 September 2014 22:10, Joe Gordon <span dir="ltr"><<a href="mailto:joe.gordon0@gmail.com" target="_blank">joe.gordon0@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote"><div class="">On Tue, Aug 26, 2014 at 4:47 PM, Salvatore Orlando <span dir="ltr"><<a href="mailto:sorlando@nicira.com" target="_blank">sorlando@nicira.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">TL; DR<div>A few folks are proposing to stop running tests for neutron advanced services [ie: (lb|vpn|fw)aas] in the integrated gate, and run them only on the neutron gate.</div>


<div><br></div><div>Reason: projects like nova are 100% orthogonal to neutron advanced services. Also, there have been episodes in the past of unreliability of tests for these services, and it would be good to limit affected projects considering that more api tests and scenarios are being added.</div>



<div><br></div><div>-----</div><div><br></div><div>So far the neutron full job runs tests (api and scenarios) for neutron "core" functionality as well as neutron "advanced services", which run as neutron service plugin.</div>



<div><br></div><div>It's highly unlikely, if not impossible, that changes in projects such as nova, glance or ceilometer can have an impact on the stability of these services.</div><div>On the other hand, instability in these services can trigger gate failures in unrelated projects as long as tests for these services are run in the neutron full job in the integrated gate. There have already been several gate-breaking bugs in lbaas scenario tests are firewall api tests.<br>



</div><div>Admittedly, advanced services do not have the same level of coverage as core neutron functionality. Therefore as more tests are being added, there is an increased possibility of unearthing dormant bugs.</div><div>



<br></div></div></blockquote><div><br></div></div><div>I support this split but for slightly different reasons.  I am under the impression that neutron advanced services are not ready for prime time. If that is correct I don't think we should be gating on things that aren't ready.</div>
</div></div></div></blockquote><div><br></div><div>I deliberately avoided going into this field in my first post as I did not want my personal opinions to appear as those of the Neutron project core team.</div><div>Neutron has so far 5 "service" plugins. Of those I believe l3 and metering are part of what is neutron core functionality, and, as stated by Sean, should be tested as part of the integrated gate. Metering is a bit of an accessory service so I'm +/- 0 on whether it should be part or not of integrated gate tests.</div>
<div><br></div><div>For load balancing, v1 has been considered fairly stable for a while. However, as it's being overhauled with lbaas v2 activities, I might question its production readiness.</div><div>For VPN, we just do not have yet enough data points to assess its stability in the gate (no scenario test), or production readiness.</div>
<div>For firewall, my impression is that it still considered an experimental feature, but I might be mistaken.</div><div><br></div><div>Considering the above I would also subscribe to Joe's point - under the assumption that only things that are production ready should be tested in the integrated gate.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class="">

<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>For this reason we are proposing to not run anymore tests for neutron advanced services in the integrated gate, but keep them running on the neutron gate.</div>


<div>This means we will have two neutron jobs:</div>
<div>1) check-tempest-dsvm-neutron-full which will run only "core" neutron functionality</div><div>2) check-tempest-dsvm-neutron-full-ext which will be what the neutron full job is today.</div></div></blockquote>


<div><br></div></div><div>Using my breakdown, the extended job would include experimental neutron features. </div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class=""><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr"><div><br></div><div>
The former will be part of the integrated gate, the latter will be part of the neutron gate.</div><div>Considering that other integrating services should not have an impact on neutron advanced services, this should not make gate testing asymmetric.</div>



<div><br></div><div>However, there might be exceptions for:</div><div>- "orchestration" project like heat which in the future might leverage capabilities like load balancing</div><div>- oslo-* libraries, as changes in them might have an impact on neutron advanced services, since they consume those libraries</div>


</div></blockquote><div><br></div></div><div>Once another service starts consuming an advanced feature I think it makes sense to move it to the main neutron-full job. Especially if we assume that things will only depend on neutron features that are not too experimental.</div>
</div></div></div></blockquote><div><br></div><div>Correct. Shifting services from neutron's full-ext to the integrated gate full job should be easy especially if these projects are spun out.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class="">

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">
<div><br></div><div>Another good question is whether "extended" tests should be performed as part of functional or tempest checks. My take on this is that scenario tests should always be part of tempest. On the other hand I reckon API tests should exclusively be part of functional tests, but as so far tempest is running a gazillion of API tests, this is probably a discussion for the medium/long term. </div>



<div><br></div><div>In order to add this new job there are a few patches under review:</div><div>[1] and [2] Introduces the 'full-ext' job and devstack-gate support for it.</div><div>[3] Are the patches implementing a blueprint which will enable us to specify for which extensions test should be executed.</div>



<div><br></div><div>Finally, one more note about smoketests. Although we're planning to get rid of them soon, we still have failures in the pg job because of [4]. For this reasons smoketests are still running for postgres in the integrated gate. As load balancing and firewall API tests are part of it, they should be removed from the smoke test executed on the integrated gate ([5], [6]). This is a temporary measure until the postgres issue is fixed.</div>


</div></blockquote><div><br></div></div><div>++</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class=""><div dir="ltr">
<div><br></div><div>Regards,</div><div>Salvatore</div><div><br></div><div>[1] <a href="https://review.openstack.org/#/c/114933/" target="_blank">https://review.openstack.org/#/c/114933/</a></div><div>[2] <a href="https://review.openstack.org/#/c/114932/" target="_blank">https://review.openstack.org/#/c/114932/</a></div>



<div>[3] <a href="https://review.openstack.org/#/q/status:open+branch:master+topic:bp/branchless-tempest-extensions,n,z" target="_blank">https://review.openstack.org/#/q/status:open+branch:master+topic:bp/branchless-tempest-extensions,n,z</a></div>



<div>[4] <a href="https://bugs.launchpad.net/nova/+bug/1305892" target="_blank">https://bugs.launchpad.net/nova/+bug/1305892</a></div><div>[5] <a href="https://review.openstack.org/#/c/115022/" target="_blank">https://review.openstack.org/#/c/115022/</a></div>



<div>[6] <a href="https://review.openstack.org/#/c/115023/" target="_blank">https://review.openstack.org/#/c/115023/</a></div><div><br></div></div>
<br></div><div class="">_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org" target="_blank">OpenStack-dev@lists.openstack.org</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></div></blockquote></div><br></div></div>
<br>_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</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>