From 7e6fddb7ab04e16023fa263839067d92576ee948 Mon Sep 17 00:00:00 2001 From: Mike Tutkowski Date: Mon, 21 May 2018 01:24:42 -0600 Subject: [PATCH] managed-storage: Handle Ceph (#2655) In 4.11.0, I added the ability to online migrate volumes from NFS to managed storage. This actually works for Ceph to managed storage in a private 4.8 branch, as well. I thought I had brought along all of the necessary code from that private 4.8 branch to make Ceph to managed storage functional in 4.11.0, but missed one piece (which is fixed by this PR). --- .../wrapper/LibvirtMigrateCommandWrapper.java | 27 ++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtMigrateCommandWrapper.java b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtMigrateCommandWrapper.java index 67ec1b731af..067e77df3cf 100644 --- a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtMigrateCommandWrapper.java +++ b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtMigrateCommandWrapper.java @@ -45,6 +45,7 @@ import javax.xml.transform.stream.StreamResult; import org.apache.commons.collections.MapUtils; import org.apache.commons.io.IOUtils; +import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.libvirt.Connect; import org.libvirt.Domain; @@ -332,9 +333,9 @@ public final class LibvirtMigrateCommandWrapper extends CommandWrapper paths, String sourceFileDevText) { - if (paths != null && sourceFileDevText != null) { + private String getPathFromSourceText(Set paths, String sourceText) { + if (paths != null && !StringUtils.isBlank(sourceText)) { for (String path : paths) { - if (sourceFileDevText.contains(path)) { + if (sourceText.contains(path)) { return path; } } @@ -395,7 +396,7 @@ public final class LibvirtMigrateCommandWrapper extends CommandWrapper