<div dir="ltr">So its not stable. It won&#39;t block merges and at least give us report after each merge. It takes really long time to run it (because of the tests themselves. Lago things takes maximum 15minutes, but the run last for more than 2hrs right now and I suspect <span style="color:rgb(51,51,51);font-size:13px;white-space:pre-wrap">functional/storageTests.py gets stuck</span>)<div><br><div><div>Bellow you can see where we stand (before I added python-rtslib package). </div><div><br></div><div>Now, I still want to merge the patch <a href="https://gerrit.ovirt.org/#/c/48268/">https://gerrit.ovirt.org/#/c/48268/</a> - which enables this run after merges, and I still want you to consider the addition of Automation CI flag to our gerrit so that developer will be able to use it as a trigger for the check-merged.sh script run, just to see if their patch fixes\brakes something realted to the functional tests </div><div><br></div><div><a href="http://jenkins.ovirt.org/job/vdsm_master_check-patch-fc23-x86_64/1480/">http://jenkins.ovirt.org/job/vdsm_master_check-patch-fc23-x86_64/1480/</a> - is an example of how the run looks like. I still work to improve the output<br></div><div><br></div><div><br></div><div>Please reply and let me know if the idea around the automation flag is acceptable by you.. and please review the patch for comments and acks.</div><div>We can ask dcaro to add the flag until Friday, otherwise we&#39;ll need to delay this effort after the holiday..</div><div><br></div><div><br></div><div><div>functional.sosPluginTests.SosPluginTest</div><div>    testSosPlugin                                               OK</div><div>functional.vmRecoveryTests.RecoveryTests</div><div>    test_vm_recovery                                            FAIL</div><div>functional.vmQoSTests.VMQosTests</div><div>    testSmallVMBallooning                                       FAIL</div><div>functional.virtTests.VirtTest</div><div>    testComplexVm                                               FAIL</div><div>    testHeadlessVm                                              OK</div><div>    testSimpleVm                                                FAIL</div><div>    testVmDefinitionGraphics(&#39;spice&#39;)                           FAIL</div><div>    testVmDefinitionGraphics(&#39;vnc&#39;)                             OK</div><div>    testVmDefinitionLegacyGraphics(&#39;qxl&#39;)                       FAIL</div><div>    testVmDefinitionLegacyGraphics(&#39;vnc&#39;)                       OK</div><div>    testVmDefinitionMultipleGraphics(&#39;spice&#39;, &#39;vnc&#39;)            FAIL</div><div>    testVmDefinitionMultipleGraphics(&#39;vnc&#39;, &#39;spice&#39;)            FAIL</div><div>    testVmWithCdrom(&#39;self&#39;)                                     FAIL</div><div>    testVmWithCdrom(&#39;specParams&#39;)                               FAIL</div><div>    testVmWithCdrom(&#39;vmPayload&#39;)                                FAIL</div><div>    testVmWithDevice(&#39;hotplugDisk&#39;)                             FAIL</div><div>    testVmWithDevice(&#39;hotplugNic&#39;)                              FAIL</div><div>    testVmWithDevice(&#39;smartcard&#39;)                               FAIL</div><div>    testVmWithDevice(&#39;virtioNic&#39;)                               FAIL</div><div>    testVmWithDevice(&#39;virtioRng&#39;)                               FAIL</div><div>    testVmWithSla                                               FAIL</div><div>    testVmWithStorage(&#39;iscsi&#39;)                                  SKIP: python-rtslib is not installed.</div><div>    testVmWithStorage(&#39;localfs&#39;)                                FAIL</div><div>    testVmWithStorage(&#39;nfs&#39;)                                    FAIL</div><div>functional.storageTests.StorageTest</div><div>    testCreatePoolErrors                                        OK</div><div>    testStorage(&#39;glusterfs&#39;, 0)                                 ERROR</div><div>    testStorage(&#39;glusterfs&#39;, 3)                                 ERROR</div><div>    testStorage(&#39;iscsi&#39;, 0)                                     SKIP: python-rtslib is not installed.</div><div>    testStorage(&#39;iscsi&#39;, 3)                                     SKIP: python-rtslib is not installed.</div><div>    testStorage(&#39;localfs&#39;, 0)                                   FAIL</div><div>    testStorage(&#39;localfs&#39;, 3)                                   FAIL</div><div>    testStorage(&#39;nfs&#39;, 0)                                       FAIL</div><div>    testStorage(&#39;nfs&#39;, 3)                                       FAIL</div><div>functional.networkTests.NetworkTest</div><div>    testAddVlanedBridgeless                                     ERROR</div><div>    testAddVlanedBridgeless_oneCommand                          ERROR</div><div>    testAfterNetworkSetupHook                                   ERROR</div><div>    testBeforeNetworkSetupHook                                  ERROR</div><div>    testBondHwAddress(False)                                    ERROR</div><div>    testBondHwAddress(True)                                     ERROR</div><div>    testBrokenNetworkReplacement(False)                         ERROR</div><div>    testBrokenNetworkReplacement(True)                          ERROR</div><div>    testDelNetworkBondAccumulation                              ERROR</div><div>    testDelNetworkWithMTU(False)                                ERROR</div><div>    testDelNetworkWithMTU(True)                                 ERROR</div><div>    testDelWithoutAdd                                           ERROR</div><div>    testDhclientLeases(4, &#39;default&#39;)                            ERROR</div><div>    testDhclientLeases(4, &#39;local&#39;)                              ERROR</div><div>    testDhclientLeases(6, None)                                 ERROR</div><div>    testDhcpReplaceNicWithBridge                                ERROR</div><div>    testFailWithInvalidBondingName(False)                       ERROR</div><div>    testFailWithInvalidBondingName(True)                        ERROR</div><div>    testFailWithInvalidBridgeName                               ERROR</div><div>    testFailWithInvalidIpConfig                                 ERROR</div><div>    testFailWithInvalidNic(False)                               ERROR</div><div>    testFailWithInvalidNic(True)                                ERROR</div><div>    testFailWithInvalidParams(False)                            ERROR</div><div>    testFailWithInvalidParams(True)                             ERROR</div><div>    testGetRouteDeviceTo                                        ERROR</div><div>    testHonorBlockingDhcp                                       SKIP: Slow tests are disabled</div><div>    testIpLinkWrapper                                           ERROR</div><div>    testLowerMtuDoesNotOverride                                 FAIL</div><div>    testNoBridgeLeftovers                                       FAIL</div><div>    testReconfigureBrNetWithVanishedPort                        ERROR</div><div>    testRedefineBondedNetworkIPs                                ERROR</div><div>    testRemovingBridgeDoesNotLeaveBridge                        ERROR</div><div>    testReorderBondingOptions(False)                            ERROR</div><div>    testReorderBondingOptions(True)                             ERROR</div><div>    testRestoreNetworksOnlyRestoreUnchangedDevices              ERROR</div><div>    testRestoreToBlockingDHCP                                   ERROR</div><div>    testSafeNetworkConfig(False)                                ERROR</div><div>    testSafeNetworkConfig(True)                                 ERROR</div><div>    testSelectiveRestoreDuringUpgrade                           ERROR</div><div>    testSelectiveRestoreIgnoresVdsmRegParams                    FAIL</div><div>    testSetupNetworkOutboundQos(False)                          ERROR</div><div>    testSetupNetworkOutboundQos(True)                           FAIL</div><div>    testSetupNetworksActiveSlave                                ERROR</div><div>    testSetupNetworksAddBadParams(False)                        ERROR</div><div>    testSetupNetworksAddBadParams(True)                         FAIL</div><div>    testSetupNetworksAddBondWithManyVlans(False)                ERROR</div><div>    testSetupNetworksAddBondWithManyVlans(True)                 FAIL</div><div>    testSetupNetworksAddDelBondedNetwork(False)                 ERROR</div><div>    testSetupNetworksAddDelBondedNetwork(True)                  FAIL</div><div>    testSetupNetworksAddDelDhcp(False, (4, 6))                  ERROR</div><div>    testSetupNetworksAddDelDhcp(False, (4,))                    ERROR</div><div>    testSetupNetworksAddDelDhcp(False, (6,))                    ERROR</div><div>    testSetupNetworksAddDelDhcp(True, (4, 6))                   FAIL</div><div>    testSetupNetworksAddDelDhcp(True, (4,))                     FAIL</div><div>    testSetupNetworksAddDelDhcp(True, (6,))                     FAIL</div><div>    testSetupNetworksAddManyVlans(False)                        ERROR</div><div>    testSetupNetworksAddManyVlans(True)                         FAIL</div><div>    testSetupNetworksAddNetworkToNicAfterBondBreaking(False)    ERROR</div><div>    testSetupNetworksAddNetworkToNicAfterBondBreaking(True)     FAIL</div><div>    testSetupNetworksAddNetworkToNicAfterBondResizing(False)    ERROR</div><div>    testSetupNetworksAddNetworkToNicAfterBondResizing(True)     ERROR</div><div>    testSetupNetworksAddOverExistingBond(False)                 ERROR</div><div>    testSetupNetworksAddOverExistingBond(True)                  ERROR</div><div>    testSetupNetworksAddVlan(False)                             ERROR</div><div>    testSetupNetworksAddVlan(True)                              FAIL</div><div>    testSetupNetworksConnectivityCheck                          FAIL</div><div>    testSetupNetworksConvertVlanNetBridgeness                   ERROR</div><div>    testSetupNetworksDelOneOfBondNets                           ERROR</div><div>    testSetupNetworksDeletesTheBridgeOnlyWhenItIsReconfigured   ERROR</div><div>    testSetupNetworksEmergencyDevicesCleanupBondOverwrite(False)ERROR</div><div>    testSetupNetworksEmergencyDevicesCleanupBondOverwrite(True) SKIP: Slow tests are disabled</div><div>    testSetupNetworksEmergencyDevicesCleanupVlanOverwrite(False)ERROR</div><div>    testSetupNetworksEmergencyDevicesCleanupVlanOverwrite(True) SKIP: Slow tests are disabled</div><div>    testSetupNetworksKeepNetworkOnBondAfterBondResizing(False)  ERROR</div><div>    testSetupNetworksKeepNetworkOnBondAfterBondResizing(True)   FAIL</div><div>    testSetupNetworksMtus(False)                                ERROR</div><div>    testSetupNetworksMtus(True)                                 SKIP: This test fails because the 2 different networks are getting configured with the same MTU. The test should assert that the reported MTUs are equal to the requested ones.</div><div>    testSetupNetworksMultiMTUsOverBond(False)                   ERROR</div><div>    testSetupNetworksMultiMTUsOverBond(True)                    FAIL</div><div>    testSetupNetworksMultiMTUsOverNic(False)                    ERROR</div><div>    testSetupNetworksMultiMTUsOverNic(True)                     FAIL</div><div>    testSetupNetworksNetCompatibilityMultipleNetsSameNic(False) ERROR</div><div>    testSetupNetworksNetCompatibilityMultipleNetsSameNic(True)  FAIL</div><div>    testSetupNetworksNicless                                    FAIL</div><div>    testSetupNetworksNiclessBridgeless                          ERROR</div><div>    testSetupNetworksOverDhcpIface                              ERROR</div><div>    testSetupNetworksOverExistingBridge                         FAIL</div><div>    testSetupNetworksReconfigureBridge                          FAIL</div><div>    testSetupNetworksRemoveBondWithKilledEnslavedNics           ERROR</div><div>    testSetupNetworksRemoveSlavelessBond                        ERROR</div><div>    testSetupNetworksResizeBond(False)                          ERROR</div><div>    testSetupNetworksResizeBond(True)                           ERROR</div><div>    testSetupNetworksStableBond(False)                          ERROR</div><div>    testSetupNetworksStableBond(True)                           ERROR</div><div>    testStaticNetworkConfig((4, 6))                             FAIL</div><div>    testStaticNetworkConfig((4,))                               FAIL</div><div>    testStaticNetworkConfig((6,))                               FAIL</div><div>    testStaticSourceRouting(False)                              ERROR</div><div>    testStaticSourceRouting(True)                               FAIL</div><div>    testTwiceAdd(False)                                         ERROR</div><div>    testTwiceAdd(True)                                          ERROR</div><div>    testVolatileConfig(False)                                   ERROR</div><div>    testVolatileConfig(True)                                    ERROR</div><div>    test_drop_initial_bond_slaves_ip_config                     FAIL</div><div>    test_getVdsStats                                            ERROR</div><div>    test_remove_bond_under_network                              FAIL</div><div>    test_remove_initial_network_nic_ip_config                   FAIL</div><div>    test_rollback                                               FAIL</div><div>    test_setupNetworks_bond_with_custom_option                  ERROR</div><div>    test_setupNetworks_on_external_bond                         ERROR</div><div>    test_setupNetworks_on_external_vlaned_bond                  ERROR</div><div>functional.networkTestsOVS.OVSNetworkTest</div><div>    testHonorBlockingDhcp                                       SKIP: Slow tests are disabled</div><div>    testLowerMtuDoesNotOverride                                 OK</div><div>    testNoBridgeLeftovers                                       FAIL</div><div>    testSelectiveRestoreIgnoresVdsmRegParams                    FAIL</div><div>    testSetupNetworkOutboundQos(True)                           OK</div><div>    testSetupNetworksAddBadParams(True)                         OK</div><div>    testSetupNetworksAddBondWithManyVlans(True)                 FAIL</div><div>    testSetupNetworksAddDelBondedNetwork(True)                  FAIL</div><div>    testSetupNetworksAddDelDhcp(True, (4, 6))                   FAIL</div><div>    testSetupNetworksAddDelDhcp(True, (4,))                     FAIL</div><div>    testSetupNetworksAddDelDhcp(True, (6,))                     FAIL</div><div>    testSetupNetworksAddManyVlans(True)                         OK</div><div>    testSetupNetworksAddNetworkToNicAfterBondBreaking(True)     FAIL</div><div>    testSetupNetworksAddVlan(True)                              FAIL</div><div>    testSetupNetworksConnectivityCheck                          OK</div><div>    testSetupNetworksEmergencyDevicesCleanupBondOverwrite(True) SKIP: Slow tests are disabled</div><div>    testSetupNetworksEmergencyDevicesCleanupVlanOverwrite(True) SKIP: Slow tests are disabled</div><div>    testSetupNetworksKeepNetworkOnBondAfterBondResizing(True)   FAIL</div><div>    testSetupNetworksMtus(True)                                 SKIP: This test fails because the 2 different networks are getting configured with the same MTU. The test should assert that the reported MTUs are equal to the requested ones.</div><div>    testSetupNetworksMultiMTUsOverBond(True)                    FAIL</div><div>    testSetupNetworksMultiMTUsOverNic(True)                     FAIL</div><div>    testSetupNetworksNetCompatibilityMultipleNetsSameNic(True)  FAIL</div><div>    testSetupNetworksNicless                                    OK</div><div>    testSetupNetworksOverExistingBridge                         OK</div><div>    testSetupNetworksReconfigureBridge                          FAIL</div><div>    testStaticNetworkConfig((4, 6))                             FAIL</div><div>    testStaticNetworkConfig((4,))                               FAIL</div><div>    testStaticNetworkConfig((6,))                               FAIL</div><div>    testStaticSourceRouting(True)                               FAIL</div><div>    test_drop_initial_bond_slaves_ip_config                     FAIL</div><div>    test_ovirtmgmtm_to_ovs                                      FAIL</div><div>    test_remove_bond_under_network                              SKIP: OVS does not support bridgeless networks</div><div>    test_remove_initial_network_nic_ip_config                   OK</div><div>    test_rollback                                               FAIL</div><div><br></div></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Dec 13, 2015 at 10:07 PM, Piotr Kliczewski <span dir="ltr">&lt;<a href="mailto:pkliczew@redhat.com" target="_blank">pkliczew@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I like the idea but I have the same feelings as Francesco. I think that we need to make sure that functional tests for each vertical are stable before enabling this process.<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Dec 13, 2015 at 8:34 AM, Eyal Edri <span dir="ltr">&lt;<a href="mailto:eedri@redhat.com" target="_blank">eedri@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">adding also infra team for visibility on the change in CI.<div>also inline.</div><div class="gmail_extra"><br><div class="gmail_quote"><span>On Fri, Dec 11, 2015 at 4:19 PM, Francesco Romani <span dir="ltr">&lt;<a href="mailto:fromani@redhat.com" target="_blank">fromani@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">----- Original Message -----<br>
&gt; From: &quot;Yaniv Bronheim&quot; &lt;<a href="mailto:ybronhei@redhat.com" target="_blank">ybronhei@redhat.com</a>&gt;<br>
&gt; To: <a href="mailto:devel@ovirt.org" target="_blank">devel@ovirt.org</a>, &quot;Francesco Romani&quot; &lt;<a href="mailto:fromani@redhat.com" target="_blank">fromani@redhat.com</a>&gt;, &quot;Nir Soffer&quot; &lt;<a href="mailto:nsoffer@redhat.com" target="_blank">nsoffer@redhat.com</a>&gt;, &quot;Piotr Kliczewski&quot;<br>
&gt; &lt;<a href="mailto:pkliczew@redhat.com" target="_blank">pkliczew@redhat.com</a>&gt;<br>
&gt; Cc: &quot;danken&quot; &lt;<a href="mailto:danken@redhat.com" target="_blank">danken@redhat.com</a>&gt;, &quot;David Caro&quot; &lt;<a href="mailto:dcaroest@redhat.com" target="_blank">dcaroest@redhat.com</a>&gt;, &quot;Eyal Edri&quot; &lt;<a href="mailto:eedri@redhat.com" target="_blank">eedri@redhat.com</a>&gt;<br>
&gt; Sent: Thursday, December 10, 2015 6:46:37 PM<br>
&gt; Subject: Automation CI for vdsm<br>
<br>
[...]<br>
<span>&gt; We want to allow developers to trigger the script once reviews and<br>
&gt; verification are ready (last step before merge). To do so we agreed to add<br>
&gt; Continues Integration flag for each vdsm patch. </span></blockquote><div><br></div></span><div>This flag will be called &#39;Workflow&#39; or we can name it otherwise, we just need to choose what makes sense. </div><div>David/Yaniv - Please correct me if I&#39;m wrong.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>Once this flag will be<br>
&gt; signed with +1 it will trigger Jenkins CI to run the check-merged script<br>
&gt; (adding new button to gerrit is not an option - you can image that flag as<br>
&gt; a trigger button), on success Jenkins CI flag will turn to +2. on fail<br>
&gt; we&#39;ll get -1 and once new patchset is ready the developer will remove the<br>
&gt; +1 and add it back to the Continues Integration flag to re-trigger the job.<br>
&gt;<br>
&gt; Please ack the process before we move on with that<br>
<br>
</span>Sounds good, even though I&#39;m a little scared (just gut feeling, no evidence<br>
whatsoever) that this could add even more complexity and fragility to the jenkins<br>
fleet.<br>
<br>
In the long run, when this is reliable, it will help greatly.<br>
In the short term, I&#39;m scared because this can lead to false positives and bogus<br>
failures.<br>
<br>
Let me stress I don&#39;t have concrete item to share or specific flaws.<br>
<br>
As action item on me, I will find some time next week to check virt functional tests,<br>
to see if they need some fixes, work reliably and so forth<br>
<span><br>
&gt; The patch for those scripts still under review and testing -<br>
&gt; <a href="https://gerrit.ovirt.org/#/c/48268" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/c/48268</a><br>
<br>
</span>Will review asap.<br>
<span><font color="#888888"><br>
--<br>
Francesco Romani<br>
RedHat Engineering Virtualization R &amp; D<br>
Phone: 8261328<br>
IRC: fromani<br>
</font></span></blockquote></span></div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div>Eyal Edri<br>Supervisor, RHEV CI<br>EMEA ENG Virtualization R&amp;D<br>Red Hat Israel<br><br>phone: <a href="tel:%2B972-9-7692018" value="+97297692018" target="_blank">+972-9-7692018</a><br>irc: eedri (on #tlv #rhev-dev #rhev-integ)</div>
</font></span></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><span style="font-size:12.8px"><b>Yaniv Bronhaim.</b></span><br></div></div></div></div></div>
</div>