public Domain getDomain(final Connect conn, final String vmName) throws LibvirtException { return conn.domainLookupByName(vmName); }
static public Connect getConnectionByVmName(String vmName) throws LibvirtException { HypervisorType[] hypervisors = new HypervisorType[] {HypervisorType.KVM, Hypervisor.HypervisorType.LXC}; for (HypervisorType hypervisor : hypervisors) { try { Connect conn = LibvirtConnection.getConnectionByType(hypervisor.toString()); if (conn.domainLookupByName(vmName) != null) { return conn; } } catch (Exception e) { s_logger.debug("Can not find " + hypervisor.toString() + " connection for Instance: " + vmName + ", continuing."); } } s_logger.warn("Can not find a connection for Instance " + vmName + ". Assuming the default connection."); // return the default connection return getConnection(); }
protected synchronized String attachOrDetachDevice(final Connect conn, final boolean attach, final String vmName, final String xml) throws LibvirtException, InternalErrorException { Domain dm = null; try { dm = conn.domainLookupByName(vmName); if (attach) { s_logger.debug("Attaching device: " + xml); dm.attachDevice(xml); } else { s_logger.debug("Detaching device: " + xml); dm.detachDevice(xml); } } catch (final LibvirtException e) { if (attach) { s_logger.warn("Failed to attach device to " + vmName + ": " + e.getMessage()); } else { s_logger.warn("Failed to detach device from " + vmName + ": " + e.getMessage()); } throw e; } finally { if (dm != null) { try { dm.free(); } catch (final LibvirtException l) { s_logger.trace("Ignoring libvirt error.", l); } } } return null; }
protected synchronized String attachOrDetachDevice(final Connect conn, final boolean attach, final String vmName, final String xml) throws LibvirtException, InternalErrorException { Domain dm = null; try { dm = conn.domainLookupByName(vmName); if (attach) { s_logger.debug("Attaching device: " + xml); dm.attachDevice(xml); } else { s_logger.debug("Detaching device: " + xml); dm.detachDevice(xml); } } catch (final LibvirtException e) { if (attach) { s_logger.warn("Failed to attach device to " + vmName + ": " + e.getMessage()); } else { s_logger.warn("Failed to detach device from " + vmName + ": " + e.getMessage()); } throw e; } finally { if (dm != null) { try { dm.free(); } catch (final LibvirtException l) { s_logger.trace("Ignoring libvirt error.", l); } } } return null; }
public PowerState getVmState(final Connect conn, final String vmName) { int retry = 3; Domain vms = null; while (retry-- > 0) { try { vms = conn.domainLookupByName(vmName); final PowerState s = convertToPowerState(vms.getInfo().state); return s; } catch (final LibvirtException e) { s_logger.warn("Can't get vm state " + vmName + e.getMessage() + "retry:" + retry); } finally { try { if (vms != null) { vms.free(); } } catch (final LibvirtException l) { s_logger.trace("Ignoring libvirt error.", l); } } } return PowerState.PowerOff; }
public List<DiskDef> getDisks(final Connect conn, final String vmName) { final LibvirtDomainXMLParser parser = new LibvirtDomainXMLParser(); Domain dm = null; try { dm = conn.domainLookupByName(vmName); parser.parseDomainXML(dm.getXMLDesc(0)); return parser.getDisks(); } catch (final LibvirtException e) { s_logger.debug("Failed to get dom xml: " + e.toString()); return new ArrayList<DiskDef>(); } finally { try { if (dm != null) { dm.free(); } } catch (final LibvirtException e) { s_logger.trace("Ignoring libvirt error.", e); } } }
public List<InterfaceDef> getInterfaces(final Connect conn, final String vmName) { final LibvirtDomainXMLParser parser = new LibvirtDomainXMLParser(); Domain dm = null; try { dm = conn.domainLookupByName(vmName); parser.parseDomainXML(dm.getXMLDesc(0)); return parser.getInterfaces(); } catch (final LibvirtException e) { s_logger.debug("Failed to get dom xml: " + e.toString()); return new ArrayList<InterfaceDef>(); } finally { try { if (dm != null) { dm.free(); } } catch (final LibvirtException e) { s_logger.trace("Ignoring libvirt error.", e); } } }
public Integer getVncPort(final Connect conn, final String vmName) throws LibvirtException { final LibvirtDomainXMLParser parser = new LibvirtDomainXMLParser(); Domain dm = null; try { dm = conn.domainLookupByName(vmName); final String xmlDesc = dm.getXMLDesc(0); parser.parseDomainXML(xmlDesc); return parser.getVncPort(); } finally { try { if (dm != null) { dm.free(); } } catch (final LibvirtException l) { s_logger.trace("Ignoring libvirt error.", l); } } }
dm = conn.domainLookupByName(vmName); cleanVMSnapshotMetadata(dm); } catch (LibvirtException e) { dm = conn.domainLookupByName(vmName); state = dm.getInfo().state; break;
protected String stopVMInternal(final Connect conn, final String vmName, final boolean force) { Domain dm = null; try { dm = conn.domainLookupByName(vmName); final int persist = dm.isPersistent(); if (force) {
dm = conn.domainLookupByName(vmName); if (dm != null && dm.isPersistent() == 1) {
String msg = null; try { dm = conn.domainLookupByName(vmName);
try { dm = conn.domainLookupByName(vms[i]);
ifaces = libvirtComputingResource.getInterfaces(conn, vmName); disks = libvirtComputingResource.getDisks(conn, vmName); dm = conn.domainLookupByName(vmName);
try { final Connect conn = libvirtUtilitiesHelper.getConnectionByVmName(vmName); final Domain vm = conn.domainLookupByName(command.getVmName()); if (vm != null && vm.getInfo().state == DomainState.VIR_DOMAIN_RUNNING) { return new StopAnswer(command, "vm is still running on host", false);
public boolean isVMRunningByName() { try { virtConn.domainLookupByName(vm.getName()); return true; } catch(LibvirtException ex) {} return false; }
/** Get list of the inactive domains. */ public static List<Domain> getDefinedDomains(Connect libvirt) { try { List<Domain> domains = new ArrayList<>(); String[] domainNames = libvirt.listDefinedDomains(); for (String name : domainNames) { domains.add(libvirt.domainLookupByName(name)); } return domains; } catch (LibvirtException e) { throw new LibvirtRuntimeException("Unable to list defined domains", e); } }
final KVMStoragePool attachingPool = attachingDisk.getPool(); try { dm = conn.domainLookupByName(vmName); final LibvirtDomainXMLParser parser = new LibvirtDomainXMLParser(); final String domXml = dm.getXMLDesc(0);
final KVMStoragePool attachingPool = attachingDisk.getPool(); try { dm = conn.domainLookupByName(vmName); final LibvirtDomainXMLParser parser = new LibvirtDomainXMLParser(); final String domXml = dm.getXMLDesc(0);
public void destroyVMByName() { try { Domain domain = virtConn.domainLookupByName(vm.getName()); domain.destroy(); } catch(LibvirtException ex) {} waitUntilVMHasStoppedByName(vmOperationTimeoutSecs); }