test: fix smoke test failures on xen/vmware - #13628
Conversation
|
@blueorangutan package |
|
@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress. |
There was a problem hiding this comment.
Pull request overview
This PR targets integration smoke test stability across hypervisors (notably XenServer/XCP-ng and VMware) by skipping KVM-specific checks/tests when not running on KVM, and by adjusting a few timing/host prerequisite assumptions that can cause intermittent failures.
Changes:
- Skip KVM-only paths in smoke tests when the detected hypervisor is not KVM.
- Add additional host-tool prerequisite checks for a VPC source NAT IP update test.
- Add delays around affinity-group migration steps and make the events-resource test more tolerant around volume attach/detach operations.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| test/integration/smoke/test_nonstrict_affinity_group.py | Adds waits before migration steps in non-strict affinity group tests. |
| test/integration/smoke/test_network_extension_namespace.py | Skips KVM prerequisite checks on non-KVM hypervisors; expands required host tools for one test. |
| test/integration/smoke/test_kms_lifecycle.py | Skips a VM root-disk encryption test on non-KVM hypervisors. |
| test/integration/smoke/test_events_resource.py | Wraps volume attach/detach operations to avoid hard failures in some environments. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #13628 +/- ##
============================================
- Coverage 19.65% 19.64% -0.01%
+ Complexity 19792 19789 -3
============================================
Files 6368 6368
Lines 574881 574885 +4
Branches 70351 70353 +2
============================================
- Hits 112970 112961 -9
- Misses 449639 449650 +11
- Partials 12272 12274 +2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 18593 |
|
@blueorangutan test ubuntu26 xcpng82 keepEnv |
|
@weizhouapache a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + xcpng82) has been kicked to run smoke tests |
|
@blueorangutan test ubuntu26 vmware-80u3e keepEnv |
|
@weizhouapache a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + vmware-80u3e) has been kicked to run smoke tests |
|
@blueorangutan package |
|
@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 18602 |
|
@blueorangutan test ubuntu26 xcpng82 |
|
@weizhouapache a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + xcpng82) has been kicked to run smoke tests |
|
@blueorangutan test ubuntu26 vmware-80u3e |
|
@weizhouapache a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + vmware-80u3e) has been kicked to run smoke tests |
|
[SF] Trillian Build Failed (tid-7) |
|
@blueorangutan test ubuntu26 vmware-80u3 |
|
@weizhouapache a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + vmware-80u3) has been kicked to run smoke tests |
|
[SF] Trillian Build Failed (tid-9) |
|
[SF] Trillian test result (tid-6)
|
|
[SF] Trillian Build Failed (tid-10) |
dbdd0c7 to
af1499b
Compare
|
@blueorangutan package |
|
@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
test/integration/smoke/test_events_resource.py:150
- This fixed sleep is a brittle way to wait for the newly created volume to become attachable. Volume.create() does not wait for provisioning to complete, so the volume might still be non-Ready after 10s (or be Ready much sooner). Poll for volume.state == 'Ready' with a timeout before calling attach_volume().
time.sleep(10)
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 18686 |
|
[SF] Trillian test result (tid-16632)
|
|
@blueorangutan package |
|
@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with no SystemVM templates. I'll keep you posted as I make progress. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (3)
test/integration/smoke/test_network_extension_namespace.py:863
- In
unittest/nose-style tests,skipTestis intended to be called directly (it already raises theSkipTestexception). Usingraise self.skipTest(...)is redundant and can confuse readers/tools. Preferself.skipTest(\"...\").
if self.hv.lower() != 'kvm':
raise self.skipTest("Skipping test case for non-kvm hypervisor")
test/integration/smoke/test_kms_lifecycle.py:430
- Same issue as above:
skipTestshould be called, not raised. Useself.skipTest(\"...\")to skip cleanly.
if self.hypervisor.lower() != 'kvm':
raise self.skipTest("Skipping test case for non-kvm hypervisor")
test/integration/smoke/test_vm_strict_host_tags.py:535
- Hard-coded
sleep(10)makes the smoke suite slower and can still be flaky across environments (10s may be too short or unnecessarily long). Prefer polling for a condition with a bounded timeout (e.g., VM state == Running/Ready, tools/agent reported, or an API-level 'isready' signal) before attempting migration. This will improve both reliability and runtime; same recommendation applies to the other newly-addedtime.sleep(10)calls in this PR.
time.sleep(10) # Wait for VM to boot into OS before migrating the VM
vm.migrate(self.apiclient, self.host_h2.id)
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 18697 |
|
@blueorangutan test ubuntu26 xcpng82 |
|
@DaanHoogland a [SL] Trillian-Jenkins test job (ubuntu26 mgmt + xcpng82) has been kicked to run smoke tests |
|
[SF] Trillian Build Failed (tid-14) |
|
[SF] Trillian test result (tid-16642)
|
Description
This PR fixes some smoke test failures on vmware or xenserver/xcpng
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?