sharedfs: skip hypervisors without system templates - #13830
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## 4.22 #13830 +/- ##
============================================
- Coverage 17.69% 17.69% -0.01%
Complexity 15835 15835
============================================
Files 5925 5925
Lines 533539 533541 +2
Branches 65274 65275 +1
============================================
- Hits 94427 94424 -3
- Misses 428435 428442 +7
+ Partials 10677 10675 -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:
|
|
@blueorangutan package |
|
@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 18819 |
|
@blueorangutan test |
|
@DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests |
|
[SF] Trillian test result (tid-16736)
|
Fixes #13825
Summary
Prevent
CreateSharedFileSystemfrom dereferencing a missing system VM template when a zone contains mixed hypervisor types.Root cause
deploySharedFSVM()shuffles the supported hypervisors. When a hypervisor has no ready system VM template and another hypervisor remains, the existing null check fell through totemplate.getId()instead of trying the next hypervisor. This caused the reported intermittent NPE for mixed zones such as VMware plus External/MaaS.Fix
Skip hypervisors without a ready system VM template while alternatives remain. Preserve the existing explicit
CloudRuntimeExceptionwhen the final candidate also has no template.Validation
template is nullNPE occurred on the External-first attempt.4.22branch with the exact NPE.Scope
This is limited to SharedFS hypervisor template selection and its regression test. No UI, API contract, database schema, or deployment behavior is changed.