Repository navigation
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #14593 +/- ##
============================================
+ Coverage 20.77% 20.87% +0.09%
- Complexity 21930 22122 +192
============================================
Files 6496 6500 +4
Lines 591656 592298 +642
Branches 72592 72667 +75
============================================
+ Hits 122946 123638 +692
+ Misses 455366 455299 -67
- Partials 13344 13361 +17
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:
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR brings a set of fixes and improvements for the Veeam KVM integration (
veeam-control-service, the image server and KVM backup), found while validating it with Veeam.veeam-control-service: request parameters and oVirt-compatible responses
asyncanddetach_onlyare parsed the way oVirt does:true/false(any case) or1/0. A parameter given without a value (e.g.?async) meanstrue.detach_onlydefaults to what oVirt uses for each endpoint:DELETE /api/vms/{id}: data disks are deleted unlessdetach_onlyis set.DELETE /api/vms/{id}/diskattachments/{id}: the disk is only detached unlessdetach_only=false.integration.veeam.control.job.wait.timeout, sets the limit (seconds, default3600; a value of 0 or less falls back to the default). When the limit is reached, the request stops waiting and the job keeps running in the background.FAILEDorCANCELLEDare reported as errors. Before, they were returned as successes, and a cancelled job caused an endless wait. Error messages include the job ID, the elapsed time and CloudStack's error text.200withstatus: complete, plus the job link when there is a job;202, with the job link and the job's status when there is a job, otherwise an empty body;400fault with reasonOperation Failed;504with the same fault, since the job may still be running.202, with the status taken from the job (pendingwhile it runs);400action withstatus: failed, afaultand the job link;504with the same body.GETandDELETE /api/vms/{vmId}/nics/{nicId}. A NIC that doesn't exist or belongs to another VM returns404, a NIC CloudStack refuses to remove (e.g. the default NIC) returns400, and any other method returns405. AddedsetVmId/setNicIdtoRemoveNicFromVMCmd./api/vms/{id}and its sub-resources return404when the VM doesn't exist.GET /api/vmslists each VM once. Before, a VM with several disks, NICs or tags was listed once per view row, and paging counted rows instead of VMs.GET /api/hosts?follow=statistics.Backup restore with a template that can no longer be used
UserVmManagerImpl.validateRootDiskResize.Image server: dirty-extents merge
KVM: backup scratch files
backup-scratch-<volume uuid>.qcow2) instead of in/var/tmpon the host.Backup: image transfers left open by an earlier backup
qemu-nbdstopped. Before, the volume stayed locked, or every later request failed with "Image transfer already exists for volume".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?