Eliraz Levi has uploaded a new change for review. Change subject: backend: engine resolving host's active nic ......................................................................
backend: engine resolving host's active nic engine will resolve host's active nic by looking into vdsGetCapabilities and see which nic is the one is being used by ovirtmgmt Change-Id: I64a21595e58358fe9e04ea1de5d3e3115c7bc2c6 Signed-off-by: Eliraz Levi <[email protected]> --- M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java 1 file changed, 25 insertions(+), 6 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/95/35895/1 diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java index 61420d2..0f521cd 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java @@ -1,5 +1,7 @@ package org.ovirt.engine.core.vdsbroker.vdsbroker; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.nio.file.Paths; import java.text.DateFormat; import java.text.DecimalFormat; @@ -559,13 +561,12 @@ } private static void UpdatePackagesVersions(VDS vds, Map<String, Object> xmlRpcStruct) { - vds.setVersionName(AssignStringValue(xmlRpcStruct, VdsProperties.version_name)); vds.setSoftwareVersion(AssignStringValue(xmlRpcStruct, VdsProperties.software_version)); vds.setBuildName(AssignStringValue(xmlRpcStruct, VdsProperties.build_name)); if (xmlRpcStruct.containsKey(VdsProperties.host_os)) { - vds.setHostOs(GetPackageVersionFormated( - (Map<String, Object>) xmlRpcStruct.get(VdsProperties.host_os), true)); + vds.setHostOs(GetPackageVersionFormated((Map<String, Object>) xmlRpcStruct.get(VdsProperties.host_os), + true)); } if (xmlRpcStruct.containsKey(VdsProperties.packages)) { // packages is an array of xmlRpcStruct (that each is a name, ver, @@ -1189,7 +1190,7 @@ * A nested map contains network interfaces data */ public static void updateNetworkData(VDS vds, Map<String, Object> xmlRpcStruct) { - vds.setActiveNic(AssignStringValue(xmlRpcStruct, VdsProperties.NETWORK_LAST_CLIENT_INTERFACE)); +// vds.setActiveNic(AssignStringValue(xmlRpcStruct, VdsProperties.NETWORK_LAST_CLIENT_INTERFACE)); List<VdsNetworkInterface> oldInterfaces = DbFacade.getInstance().getInterfaceDao().getAllInterfacesForVds(vds.getId()); @@ -1206,10 +1207,30 @@ // set bonding options setBondingOptions(vds, oldInterfaces); + resolveVdsActiveNic(vds); + // This information was added in 3.1, so don't use it if it's not there. if (xmlRpcStruct.containsKey(VdsProperties.netConfigDirty)) { vds.setNetConfigDirty(AssignBoolValue(xmlRpcStruct, VdsProperties.netConfigDirty)); } + } + + private static void resolveVdsActiveNic(VDS vds) { + InetAddress magmtAddr = null; + try { + magmtAddr = InetAddress.getByName(vds.getHostName()); + } catch (SecurityException e) { + } catch (UnknownHostException e) { + } + + String mgmtAdd = magmtAddr.getHostAddress().trim(); + for (VdsNetworkInterface iface : vds.getInterfaces()) { + if (mgmtAdd.equals(iface.getAddress().trim())) { + vds.setActiveNic(iface.getName()); + } + + } + } private static void addHostNetworksAndUpdateInterfaces(VDS vds, @@ -1430,9 +1451,7 @@ iface.setId(iStats.getId()); iface.setName(entry.getKey()); iface.setVdsId(vds.getId()); - updateNetworkInterfaceDataFromHost(iface, vds, (Map<String, Object>) entry.getValue()); - iStats.setVdsId(vds.getId()); vds.getInterfaces().add(iface); } -- To view, visit http://gerrit.ovirt.org/35895 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I64a21595e58358fe9e04ea1de5d3e3115c7bc2c6 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eliraz Levi <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
