kvm: add SCSI controllers based on the number of virtio-SCSI disks
Description
This PR fixes #7490
According to libvirt code, the units per scsi controller is set to 7 therefore, we need to create scsi controller every 7 disks (including CDROM).
https://github.com/libvirt/libvirt/blob/50cc7a0d9d2b9df085ec073a6d60820a9642158a/src/conf/domain_conf.h#L3007-L3008
https://github.com/libvirt/libvirt/blob/50cc7a0d9d2b9df085ec073a6d60820a9642158a/src/conf/domain_conf.c#L6701-L6704
Types of changes
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] build/CI
- [ ] test (unit or integration test code)
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
- [ ] Major
- [ ] Minor
Bug Severity
- [ ] BLOCKER
- [ ] Critical
- [ ] Major
- [ ] Minor
- [ ] Trivial
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?
@blueorangutan package
@weizhouapache 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.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 15.64%. Comparing base (
1af4158) to head (89eb4eb). Report is 821 commits behind head on 4.19.
Additional details and impacted files
@@ Coverage Diff @@
## 4.19 #9823 +/- ##
=============================================
+ Coverage 12.27% 15.64% +3.36%
- Complexity 9335 12731 +3396
=============================================
Files 4699 5416 +717
Lines 414691 528436 +113745
Branches 53409 79628 +26219
=============================================
+ Hits 50891 82657 +31766
- Misses 357475 436670 +79195
- Partials 6325 9109 +2784
| Flag | Coverage Δ | |
|---|---|---|
| uitests | 4.30% <ø> (?) |
|
| unittests | 16.31% <100.00%> (+4.04%) |
:arrow_up: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11381
@blueorangutan test
@weizhouapache a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests
[SF] Trillian test result (tid-11684) Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8 Total time taken: 46725 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9823-t11684-kvm-ol8.zip Smoke tests completed. 110 look OK, 1 have errors, 0 did not run Only failed and skipped tests results shown below:
| Test | Result | Time (s) | Test File |
|---|---|---|---|
| ContextSuite context=TestISOUsage>:setup | Error |
0.00 | test_usage.py |
@blueorangutan package
@weizhouapache 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 ✔️ debian ✔️ suse15. SL-JID 11459
@blueorangutan test
@rohityadavcloud a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests
[SF] Trillian test result (tid-11762) Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8 Total time taken: 47024 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9823-t11762-kvm-ol8.zip Smoke tests completed. 110 look OK, 1 have errors, 0 did not run Only failed and skipped tests results shown below:
| Test | Result | Time (s) | Test File |
|---|---|---|---|
| ContextSuite context=TestISOUsage>:setup | Error |
0.00 | test_usage.py |
@blueorangutan package
@rohityadavcloud 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 ✔️ debian ✔️ suse15. SL-JID 11686
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11769
[SF] Trillian test result (tid-11878) Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8 Total time taken: 50690 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9823-t11878-kvm-ol8.zip Smoke tests completed. 130 look OK, 3 have errors, 0 did not run Only failed and skipped tests results shown below:
| Test | Result | Time (s) | Test File |
|---|---|---|---|
| test_01_secure_vm_migration | Error |
134.39 | test_vm_life_cycle.py |
| test_01_secure_vm_migration | Error |
134.39 | test_vm_life_cycle.py |
| test_02_redundant_VPC_default_routes | Failure |
387.37 | test_vpc_redundant.py |
| test_04_rvpc_network_garbage_collector_nics | Failure |
383.67 | test_vpc_redundant.py |
| test_01_redundant_vpc_site2site_vpn | Failure |
409.59 | test_vpc_vpn.py |
@blueorangutan test
@vladimirpetrov a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests
[SF] Trillian test result (tid-12158) Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8 Total time taken: 46520 seconds Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9823-t12158-kvm-ol8.zip Smoke tests completed. 109 look OK, 2 have errors, 0 did not run Only failed and skipped tests results shown below:
| Test | Result | Time (s) | Test File |
|---|---|---|---|
| ContextSuite context=TestISOUsage>:setup | Error |
0.00 | test_usage.py |
| test_01_migrate_VM_and_root_volume | Error |
83.54 | test_vm_life_cycle.py |
| test_02_migrate_VM_with_two_data_disks | Error |
51.94 | test_vm_life_cycle.py |
| test_08_migrate_vm | Error |
0.07 | test_vm_life_cycle.py |
the usage error is failed to download iso, which is not related. the life-cyle ones are intermitted errors
the usage error is failed to download iso, which is not related. the life-cyle ones are intermitted errors
thanks @vladimirpetrov @DaanHoogland