From ce1ce89047b4eb85644566110fdcf23ad33c6bab Mon Sep 17 00:00:00 2001 From: nvazquez Date: Tue, 29 Oct 2019 10:40:19 -0300 Subject: [PATCH 1/2] Fix VR creation issue while creating VM on shared network using PVLAN --- .../router/VirtualNetworkApplianceManagerImpl.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index 643ccbbf8a46..d69f9dfcb804 100644 --- a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -2057,6 +2057,11 @@ public boolean finalizeStart(final VirtualMachineProfile profile, final long hos // Get guest networks info final List guestNetworks = new ArrayList(); + final GetDomRVersionAnswer versionAnswer = (GetDomRVersionAnswer) cmds.getAnswer("getDomRVersion"); + router.setTemplateVersion(versionAnswer.getTemplateVersion()); + router.setScriptsVersion(versionAnswer.getScriptsVersion()); + _routerDao.persist(router, guestNetworks); + final List routerNics = _nicDao.listByVmId(profile.getId()); for (final Nic nic : routerNics) { final Network network = _networkModel.getNetwork(nic.getNetworkId()); @@ -2077,12 +2082,6 @@ public boolean finalizeStart(final VirtualMachineProfile profile, final long hos } } } - if (result) { - final GetDomRVersionAnswer versionAnswer = (GetDomRVersionAnswer) cmds.getAnswer("getDomRVersion"); - router.setTemplateVersion(versionAnswer.getTemplateVersion()); - router.setScriptsVersion(versionAnswer.getScriptsVersion()); - _routerDao.persist(router, guestNetworks); - } return result; } From 58325779f6777649429e7bc75d38203408446490 Mon Sep 17 00:00:00 2001 From: nvazquez Date: Tue, 5 Nov 2019 11:27:08 -0300 Subject: [PATCH 2/2] Fix update guest networks --- .../network/router/VirtualNetworkApplianceManagerImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index d69f9dfcb804..c8ea47b31db1 100644 --- a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -2083,6 +2083,12 @@ public boolean finalizeStart(final VirtualMachineProfile profile, final long hos } } + if (result) { + for (Network guestNetwork : guestNetworks) { + _routerDao.addRouterToGuestNetwork(router, guestNetwork); + } + } + return result; }