From a5c8bb3bfc3f1d6d94d570791917461d9ef44051 Mon Sep 17 00:00:00 2001 From: GaOrtiga <49285692+GaOrtiga@users.noreply.github.com> Date: Fri, 28 Jun 2024 07:16:20 -0300 Subject: [PATCH] server: apply rules when VR of Domain VPC is recreated (#8354) * apply rules when VR is recreated * Apply suggestions from code review Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com> Co-authored-by: Gabriel --- .../VirtualNetworkApplianceManagerImpl.java | 16 ++++------------ .../VpcVirtualNetworkApplianceManagerImpl.java | 2 +- 2 files changed, 5 insertions(+), 13 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 64595e8eccd..702f614d776 100644 --- a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -2442,7 +2442,7 @@ Configurable, StateListener publicIps = getPublicIpsToApply(router, provider, guestNetworkId); + final ArrayList publicIps = getPublicIpsToApply(provider, guestNetworkId); final List firewallRulesEgress = new ArrayList(); final List ipv6firewallRules = new ArrayList<>(); @@ -2649,7 +2649,7 @@ Configurable, StateListener vlanMacAddress) { - final ArrayList publicIps = getPublicIpsToApply(router, provider, guestNetworkId); + final ArrayList publicIps = getPublicIpsToApply(provider, guestNetworkId); if (publicIps != null && !publicIps.isEmpty()) { s_logger.debug("Found " + publicIps.size() + " ip(s) to apply as a part of domR " + router + " start."); @@ -2660,18 +2660,10 @@ Configurable, StateListener getPublicIpsToApply(final VirtualRouter router, final Provider provider, final Long guestNetworkId, + protected ArrayList getPublicIpsToApply(final Provider provider, final Long guestNetworkId, final com.cloud.network.IpAddress.State... skipInStates) { - final long ownerId = router.getAccountId(); - final List userIps; - final Network guestNetwork = _networkDao.findById(guestNetworkId); - if (guestNetwork.getGuestType() == GuestType.Shared) { - // ignore the account id for the shared network - userIps = _networkModel.listPublicIpsAssignedToGuestNtwk(guestNetworkId, null); - } else { - userIps = _networkModel.listPublicIpsAssignedToGuestNtwk(ownerId, guestNetworkId, null); - } + final List userIps = _networkModel.listPublicIpsAssignedToGuestNtwk(guestNetworkId, null); final List allPublicIps = new ArrayList(); if (userIps != null && !userIps.isEmpty()) { diff --git a/server/src/main/java/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java b/server/src/main/java/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java index b6dc9183b49..9ce26bc213c 100644 --- a/server/src/main/java/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java +++ b/server/src/main/java/com/cloud/network/router/VpcVirtualNetworkApplianceManagerImpl.java @@ -747,7 +747,7 @@ public class VpcVirtualNetworkApplianceManagerImpl extends VirtualNetworkApplian } if (domainRouterVO.getState() == State.Starting || domainRouterVO.getState() == State.Running) { - final ArrayList publicIps = getPublicIpsToApply(domainRouterVO, provider, guestNetworkId, IpAddress.State.Releasing); + final ArrayList publicIps = getPublicIpsToApply(provider, guestNetworkId, IpAddress.State.Releasing); if (publicIps != null && !publicIps.isEmpty()) { s_logger.debug("Found " + publicIps.size() + " ip(s) to apply as a part of domR " + domainRouterVO + " start.");