From 91a5f0e285c3128e97a54cfed8f7121ba2c82175 Mon Sep 17 00:00:00 2001 From: Wei Zhou Date: Wed, 13 Apr 2022 12:22:22 +0200 Subject: [PATCH] server: honor global setting system.vm.default.hypervisor as first option when deploy VRs (#6160) --- .../cloud/network/router/NetworkHelperImpl.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/server/src/main/java/com/cloud/network/router/NetworkHelperImpl.java b/server/src/main/java/com/cloud/network/router/NetworkHelperImpl.java index cc947bd0503..0093b710f56 100644 --- a/server/src/main/java/com/cloud/network/router/NetworkHelperImpl.java +++ b/server/src/main/java/com/cloud/network/router/NetworkHelperImpl.java @@ -567,20 +567,18 @@ public class NetworkHelperImpl implements NetworkHelper { protected List getHypervisors(final RouterDeploymentDefinition routerDeploymentDefinition) throws InsufficientServerCapacityException { final DeployDestination dest = routerDeploymentDefinition.getDest(); List hypervisors = new ArrayList(); + final HypervisorType defaults = _resourceMgr.getDefaultHypervisor(dest.getDataCenter().getId()); + if (defaults != HypervisorType.None) { + hypervisors.add(defaults); + } if (dest.getCluster() != null) { if (dest.getCluster().getHypervisorType() == HypervisorType.Ovm) { hypervisors.add(getClusterToStartDomainRouterForOvm(dest.getCluster().getPodId())); } else { hypervisors.add(dest.getCluster().getHypervisorType()); } - } else { - final HypervisorType defaults = _resourceMgr.getDefaultHypervisor(dest.getDataCenter().getId()); - if (defaults != HypervisorType.None) { - hypervisors.add(defaults); - } else { - // if there is no default hypervisor, get it from the cluster - hypervisors = _resourceMgr.getSupportedHypervisorTypes(dest.getDataCenter().getId(), true, routerDeploymentDefinition.getPlan().getPodId()); - } + } else if (defaults == HypervisorType.None) { + hypervisors = _resourceMgr.getSupportedHypervisorTypes(dest.getDataCenter().getId(), true, routerDeploymentDefinition.getPlan().getPodId()); } filterSupportedHypervisors(hypervisors);