@@ -298,34 +298,27 @@ func (r *KubeVirt) DeleteImporterPods(pvc core.PersistentVolumeClaim) (err error
298
298
}
299
299
300
300
// Ensure the kubevirt VirtualMachine exists on the destination.
301
- func (r * KubeVirt ) EnsureVM (vm * plan.VMStatus ) (err error ) {
302
- newVM , err := r .virtualMachine (vm )
303
- if err != nil {
304
- err = liberr .Wrap (err )
305
- return
306
- }
307
-
308
- list := & cnv.VirtualMachineList {}
309
- err = r .Destination .Client .List (
301
+ func (r * KubeVirt ) EnsureVM (vm * plan.VMStatus ) error {
302
+ vms := & cnv.VirtualMachineList {}
303
+ err := r .Destination .Client .List (
310
304
context .TODO (),
311
- list ,
305
+ vms ,
312
306
& client.ListOptions {
313
307
LabelSelector : labels .SelectorFromSet (r .vmLabels (vm .Ref )),
314
308
Namespace : r .Plan .Spec .TargetNamespace ,
315
309
},
316
310
)
317
311
if err != nil {
318
- err = liberr .Wrap (err )
319
- return
312
+ return liberr .Wrap (err )
320
313
}
321
314
322
315
var virtualMachine * cnv.VirtualMachine
323
- if len (list .Items ) == 0 {
324
- virtualMachine = newVM
325
- err = r . Destination . Client . Create ( context . TODO (), virtualMachine )
326
- if err != nil {
327
- err = liberr . Wrap ( err )
328
- return
316
+ if len (vms .Items ) == 0 {
317
+ if virtualMachine , err = r . virtualMachine ( vm ); err != nil {
318
+ return liberr . Wrap ( err )
319
+ }
320
+ if err = r . Destination . Client . Create ( context . TODO (), virtualMachine ); err != nil {
321
+ return liberr . Wrap ( err )
329
322
}
330
323
r .Log .Info (
331
324
"Created Kubevirt VM." ,
@@ -336,7 +329,7 @@ func (r *KubeVirt) EnsureVM(vm *plan.VMStatus) (err error) {
336
329
"source" ,
337
330
vm .String ())
338
331
} else {
339
- virtualMachine = & list .Items [0 ]
332
+ virtualMachine = & vms .Items [0 ]
340
333
}
341
334
342
335
// set DataVolume owner references so that they'll be cleaned up
@@ -350,13 +343,11 @@ func (r *KubeVirt) EnsureVM(vm *plan.VMStatus) (err error) {
350
343
Namespace : r .Plan .Spec .TargetNamespace ,
351
344
})
352
345
if err != nil {
353
- err = liberr .Wrap (err )
354
- return
346
+ return liberr .Wrap (err )
355
347
}
356
348
pvcs , err := r .getPVCs (vm .Ref )
357
349
if err != nil {
358
- err = liberr .Wrap (err )
359
- return
350
+ return liberr .Wrap (err )
360
351
}
361
352
362
353
for _ , pvc := range pvcs {
@@ -366,12 +357,11 @@ func (r *KubeVirt) EnsureVM(vm *plan.VMStatus) (err error) {
366
357
patch := client .MergeFrom (pvcCopy )
367
358
err = r .Destination .Client .Patch (context .TODO (), & pvc , patch )
368
359
if err != nil {
369
- err = liberr .Wrap (err )
370
- return
360
+ return liberr .Wrap (err )
371
361
}
372
362
}
373
363
374
- return
364
+ return nil
375
365
}
376
366
377
367
// Delete the Secret that was created for this VM.
0 commit comments