mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
adding user data pwd rules
Conflicts: server/src/org/apache/cloudstack/network/topology/AdvancedNetworkTopology.java server/src/org/apache/cloudstack/network/topology/AdvancedNetworkVisitor.java server/src/org/apache/cloudstack/network/topology/BasicNetworkTopology.java
This commit is contained in:
parent
b9ffe2329e
commit
8f313ca5d3
@ -982,7 +982,10 @@ public class VirtualRouterElement extends AdapterBase implements VirtualRouterEl
|
||||
throw new ResourceUnavailableException("Can't find at least one router!", DataCenter.class, network.getDataCenterId());
|
||||
}
|
||||
|
||||
return _routerMgr.applyUserData(network, nic, uservm, dest, routers);
|
||||
DataCenterVO dcVO = _dcDao.findById(network.getDataCenterId());
|
||||
NetworkTopology networkTopology = networkTopologyContext.retrieveNetworkTopology(dcVO);
|
||||
|
||||
return networkTopology.applyUserData(network, nic, uservm, dest, routers);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -19,43 +19,82 @@ package com.cloud.network.rules;
|
||||
|
||||
import org.apache.cloudstack.network.topology.NetworkTopologyVisitor;
|
||||
|
||||
import com.cloud.agent.api.routing.NetworkElementCommand;
|
||||
import com.cloud.agent.api.routing.SavePasswordCommand;
|
||||
import com.cloud.agent.manager.Commands;
|
||||
import com.cloud.dc.DataCenterVO;
|
||||
import com.cloud.deploy.DeployDestination;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.router.VirtualRouter;
|
||||
import com.cloud.utils.PasswordGenerator;
|
||||
import com.cloud.vm.NicProfile;
|
||||
import com.cloud.vm.NicVO;
|
||||
import com.cloud.vm.UserVmVO;
|
||||
import com.cloud.vm.VirtualMachineProfile;
|
||||
|
||||
public class UserdataPwdRules extends RuleApplier {
|
||||
|
||||
private final NicProfile nic;
|
||||
private final VirtualMachineProfile profile;
|
||||
private final DeployDestination destination;
|
||||
private final NicProfile _nic;
|
||||
private final VirtualMachineProfile _profile;
|
||||
private final DeployDestination _destination;
|
||||
|
||||
private NicVO _nicVo;
|
||||
private UserVmVO _userVM;
|
||||
|
||||
public UserdataPwdRules(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination destination) {
|
||||
super(network);
|
||||
|
||||
this.nic = nic;
|
||||
this.profile = profile;
|
||||
this.destination = destination;
|
||||
_nic = nic;
|
||||
_profile = profile;
|
||||
_destination = destination;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean accept(final NetworkTopologyVisitor visitor, final VirtualRouter router) throws ResourceUnavailableException {
|
||||
this._router = router;
|
||||
_router = router;
|
||||
|
||||
_userVM = _userVmDao.findById(_profile.getId());
|
||||
_userVmDao.loadDetails(_userVM);
|
||||
|
||||
//for basic zone, send vm data/password information only to the router in the same pod
|
||||
_nicVo = _nicDao.findById(_nic.getId());
|
||||
|
||||
return visitor.visit(this);
|
||||
}
|
||||
|
||||
public NicProfile getNic() {
|
||||
return nic;
|
||||
}
|
||||
|
||||
public VirtualMachineProfile getProfile() {
|
||||
return profile;
|
||||
return _profile;
|
||||
}
|
||||
|
||||
public DeployDestination getDestination() {
|
||||
return destination;
|
||||
return _destination;
|
||||
}
|
||||
|
||||
public NicVO getNicVo() {
|
||||
return _nicVo;
|
||||
}
|
||||
|
||||
public UserVmVO getUserVM() {
|
||||
return _userVM;
|
||||
}
|
||||
|
||||
public void createPasswordCommand(final VirtualRouter router, final VirtualMachineProfile profile, final NicVO nic, final Commands cmds) {
|
||||
final String password = (String)profile.getParameter(VirtualMachineProfile.Param.VmPassword);
|
||||
final DataCenterVO dcVo = _dcDao.findById(router.getDataCenterId());
|
||||
|
||||
// password should be set only on default network element
|
||||
if (password != null && nic.isDefaultNic()) {
|
||||
final String encodedPassword = PasswordGenerator.rot13(password);
|
||||
final SavePasswordCommand cmd =
|
||||
new SavePasswordCommand(encodedPassword, nic.getIp4Address(), profile.getVirtualMachine().getHostName(), _networkModel.getExecuteInSeqNtwkElmtCmd());
|
||||
cmd.setAccessDetail(NetworkElementCommand.ROUTER_IP, _routerControlHelper.getRouterControlIp(router.getId()));
|
||||
cmd.setAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP, _routerControlHelper.getRouterIpInNetwork(nic.getNetworkId(), router.getId()));
|
||||
cmd.setAccessDetail(NetworkElementCommand.ROUTER_NAME, router.getInstanceName());
|
||||
cmd.setAccessDetail(NetworkElementCommand.ZONE_NETWORK_TYPE, dcVo.getNetworkType().toString());
|
||||
|
||||
cmds.addCommand("password", cmd);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@ -23,6 +23,7 @@ import javax.inject.Inject;
|
||||
import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
|
||||
|
||||
import com.cloud.dc.dao.DataCenterDao;
|
||||
import com.cloud.deploy.DeployDestination;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.NetworkModel;
|
||||
import com.cloud.network.PublicIpAddress;
|
||||
@ -190,4 +191,16 @@ public class VirtualNetworkApplianceFactory {
|
||||
|
||||
return userdataRules;
|
||||
}
|
||||
|
||||
public UserdataPwdRules createUserdataPwdRules(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination destination) {
|
||||
UserdataPwdRules userdataRules = new UserdataPwdRules(network, nic, profile, destination);
|
||||
|
||||
initBeans(userdataRules);
|
||||
|
||||
userdataRules._userVmDao = _userVmDao;
|
||||
userdataRules._templateDao = _templateDao;
|
||||
userdataRules._serviceOfferingDao = _serviceOfferingDao;
|
||||
|
||||
return userdataRules;
|
||||
}
|
||||
}
|
||||
@ -18,7 +18,6 @@
|
||||
package org.apache.cloudstack.network.topology;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -26,27 +25,19 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
||||
|
||||
import com.cloud.dc.DataCenter;
|
||||
import com.cloud.deploy.DeployDestination;
|
||||
import com.cloud.exception.ConcurrentOperationException;
|
||||
import com.cloud.exception.InsufficientCapacityException;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.lb.LoadBalancingRule;
|
||||
import com.cloud.network.router.VirtualRouter;
|
||||
import com.cloud.network.rules.RuleApplier;
|
||||
import com.cloud.user.Account;
|
||||
import com.cloud.network.rules.RuleApplierWrapper;
|
||||
import com.cloud.network.rules.UserdataPwdRules;
|
||||
import com.cloud.vm.DomainRouterVO;
|
||||
import com.cloud.vm.NicProfile;
|
||||
import com.cloud.vm.VirtualMachineProfile;
|
||||
import com.cloud.vm.VirtualMachineProfile.Param;
|
||||
|
||||
public class AdvancedNetworkTopology implements NetworkTopology {
|
||||
|
||||
@Override
|
||||
public List<DomainRouterVO> findOrDeployVirtualRouterInGuestNetwork(final Network guestNetwork, final DeployDestination dest, final Account owner, final boolean isRedundant,
|
||||
final Map<Param, Object> params) throws ConcurrentOperationException, InsufficientCapacityException, ResourceUnavailableException {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public StringBuilder createGuestBootLoadArgs(final NicProfile guestNic, final String defaultDns1, final String defaultDns2, final DomainRouterVO router) {
|
||||
return null;
|
||||
@ -74,12 +65,6 @@ public class AdvancedNetworkTopology implements NetworkTopology {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean applyUserData(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean applyRules(final Network network, final List<? extends VirtualRouter> routers, final String typeString, final boolean isPodLevelException, final Long podId,
|
||||
final boolean failWhenDisconnect, final RuleApplier applier) throws ResourceUnavailableException {
|
||||
@ -102,4 +87,19 @@ public class AdvancedNetworkTopology implements NetworkTopology {
|
||||
@Qualifier("advancedNetworkVisitor")
|
||||
protected AdvancedNetworkVisitor _advancedVisitor;
|
||||
|
||||
@Override
|
||||
public boolean applyUserData(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException {
|
||||
|
||||
s_logger.debug("APPLYING USERDATA RULES");
|
||||
|
||||
final String typeString = "userdata and password entry";
|
||||
final boolean isPodLevelException = false;
|
||||
final boolean failWhenDisconnect = false;
|
||||
final Long podId = null;
|
||||
|
||||
UserdataPwdRules pwdRules = _virtualNetworkApplianceFactory.createUserdataPwdRules(network, nic, profile, dest);
|
||||
|
||||
return applyRules(network, routers, typeString, isPodLevelException, podId, failWhenDisconnect, new RuleApplierWrapper<RuleApplier>(pwdRules));
|
||||
}
|
||||
}
|
||||
@ -17,148 +17,65 @@
|
||||
|
||||
package org.apache.cloudstack.network.topology;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import com.cloud.agent.api.Command;
|
||||
import com.cloud.agent.manager.Commands;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.PublicIpAddress;
|
||||
import com.cloud.network.lb.LoadBalancingRule;
|
||||
import com.cloud.network.router.VirtualRouter;
|
||||
import com.cloud.network.rules.DhcpRules;
|
||||
import com.cloud.network.rules.FirewallRule;
|
||||
import com.cloud.network.rules.FirewallRule.Purpose;
|
||||
import com.cloud.network.rules.FirewallRules;
|
||||
import com.cloud.network.rules.IpAssociationRules;
|
||||
import com.cloud.network.rules.LoadBalancingRules;
|
||||
import com.cloud.network.rules.DhcpEntryRules;
|
||||
import com.cloud.network.rules.DhcpSubNetRules;
|
||||
import com.cloud.network.rules.NetworkAclsRules;
|
||||
import com.cloud.network.rules.PasswordToRouterRules;
|
||||
import com.cloud.network.rules.PortForwardingRule;
|
||||
import com.cloud.network.rules.PrivateGatewayRules;
|
||||
import com.cloud.network.rules.SshKeyToRouterRules;
|
||||
import com.cloud.network.rules.StaticNat;
|
||||
import com.cloud.network.rules.StaticNatRule;
|
||||
import com.cloud.network.rules.StaticNatRules;
|
||||
import com.cloud.network.rules.UserdataPwdRules;
|
||||
import com.cloud.network.rules.UserdataToRouterRules;
|
||||
import com.cloud.network.rules.VpcIpAssociationRules;
|
||||
import com.cloud.network.rules.VpnRules;
|
||||
import com.cloud.vm.NicVO;
|
||||
import com.cloud.vm.UserVmVO;
|
||||
import com.cloud.vm.VirtualMachineProfile;
|
||||
|
||||
@Component
|
||||
public class AdvancedNetworkVisitor extends BasicNetworkVisitor {
|
||||
|
||||
private static final Logger s_logger = Logger.getLogger(AdvancedNetworkVisitor.class);
|
||||
@Override
|
||||
public boolean visit(final UserdataPwdRules userdata) throws ResourceUnavailableException {
|
||||
final VirtualRouter router = userdata.getRouter();
|
||||
|
||||
protected NEWVirtualNetworkApplianceManager applianceManager;
|
||||
final Commands commands = new Commands(Command.OnError.Stop);
|
||||
final VirtualMachineProfile profile = userdata.getProfile();
|
||||
final NicVO nicVo = userdata.getNicVo();
|
||||
final UserVmVO userVM = userdata.getUserVM();
|
||||
|
||||
public void setApplianceManager(final NEWVirtualNetworkApplianceManager applianceManager) {
|
||||
this.applianceManager = applianceManager;
|
||||
userdata.createPasswordCommand(router, profile, nicVo, commands);
|
||||
userdata.createVmDataCommand(router, userVM, nicVo, userVM.getDetail("SSH.PublicKey"), commands);
|
||||
|
||||
return _applianceManager.sendCommandsToRouter(router, commands);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final StaticNatRules nat) throws ResourceUnavailableException {
|
||||
Network network = nat.getNetwork();
|
||||
VirtualRouter router = nat.getRouter();
|
||||
List<? extends StaticNat> rules = nat.getRules();
|
||||
|
||||
final Commands cmds = new Commands(Command.OnError.Continue);
|
||||
nat.createApplyStaticNatCommands(rules, router, cmds, network.getId());
|
||||
|
||||
return applianceManager.sendCommandsToRouter(router, cmds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final LoadBalancingRules loadbalancing) throws ResourceUnavailableException {
|
||||
Network network = loadbalancing.getNetwork();
|
||||
VirtualRouter router = loadbalancing.getRouter();
|
||||
List<LoadBalancingRule> rules = loadbalancing.getRules();
|
||||
|
||||
final Commands cmds = new Commands(Command.OnError.Continue);
|
||||
loadbalancing.createApplyLoadBalancingRulesCommands(rules, router, cmds, network.getId());
|
||||
|
||||
return networkTopology.sendCommandsToRouter(router, rules, network.getId());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public boolean visit(final FirewallRules firewall) throws ResourceUnavailableException {
|
||||
Network network = firewall.getNetwork();
|
||||
VirtualRouter router = firewall.getRouter();
|
||||
List<? extends FirewallRule> rules = firewall.getRules();
|
||||
List<LoadBalancingRule> loadbalancingRules = firewall.getLoadbalancingRules();
|
||||
|
||||
Purpose purpose = firewall.getPurpose();
|
||||
|
||||
final Commands cmds = new Commands(Command.OnError.Continue);
|
||||
if (purpose == Purpose.LoadBalancing) {
|
||||
|
||||
firewall.createApplyLoadBalancingRulesCommands(loadbalancingRules, router, cmds, network.getId());
|
||||
|
||||
return applianceManager.sendCommandsToRouter(router, cmds);
|
||||
|
||||
} else if (purpose == Purpose.PortForwarding) {
|
||||
|
||||
firewall.createApplyPortForwardingRulesCommands((List<? extends PortForwardingRule>) rules, router, cmds, network.getId());
|
||||
|
||||
return applianceManager.sendCommandsToRouter(router, cmds);
|
||||
|
||||
} else if (purpose == Purpose.StaticNat) {
|
||||
|
||||
firewall.createApplyStaticNatRulesCommands((List<StaticNatRule>) rules, router, cmds, network.getId());
|
||||
|
||||
return applianceManager.sendCommandsToRouter(router, cmds);
|
||||
|
||||
} else if (purpose == Purpose.Firewall) {
|
||||
|
||||
firewall.createApplyFirewallRulesCommands(rules, router, cmds, network.getId());
|
||||
|
||||
return applianceManager.sendCommandsToRouter(router, cmds);
|
||||
|
||||
}
|
||||
s_logger.warn("Unable to apply rules of purpose: " + rules.get(0).getPurpose());
|
||||
|
||||
public boolean visit(final DhcpEntryRules dhcp) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final IpAssociationRules ipRules) throws ResourceUnavailableException {
|
||||
Network network = ipRules.getNetwork();
|
||||
VirtualRouter router = ipRules.getRouter();
|
||||
Commands commands = ipRules.getCommands();
|
||||
List<? extends PublicIpAddress> ips = ipRules.getIpAddresses();
|
||||
|
||||
ipRules.createAssociateIPCommands(router, ips, commands, network.getId());
|
||||
return applianceManager.sendCommandsToRouter(router, commands);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final UserdataPwdRules nat) throws ResourceUnavailableException {
|
||||
public boolean visit(final SshKeyToRouterRules sshkey) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final DhcpRules nat) throws ResourceUnavailableException {
|
||||
public boolean visit(final PasswordToRouterRules pwd) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final SshKeyToRouterRules nat) throws ResourceUnavailableException {
|
||||
public boolean visit(final NetworkAclsRules acls) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final PasswordToRouterRules nat) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final NetworkAclsRules nat) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final VpcIpAssociationRules nat) throws ResourceUnavailableException {
|
||||
public boolean visit(final VpcIpAssociationRules vpcip) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -173,12 +90,12 @@ public class AdvancedNetworkVisitor extends BasicNetworkVisitor {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final DhcpPvlanRules vpn) throws ResourceUnavailableException {
|
||||
public boolean visit(final DhcpPvlanRules dhcp) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean visit(final VpnRules userdata) throws ResourceUnavailableException {
|
||||
public boolean visit(final DhcpSubNetRules subnet) throws ResourceUnavailableException {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -36,6 +36,7 @@ import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.host.Status;
|
||||
import com.cloud.host.dao.HostDao;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.Networks.TrafficType;
|
||||
import com.cloud.network.PublicIpAddress;
|
||||
import com.cloud.network.VpnUser;
|
||||
import com.cloud.network.lb.LoadBalancingRule;
|
||||
@ -50,12 +51,14 @@ import com.cloud.network.rules.RuleApplierWrapper;
|
||||
import com.cloud.network.rules.SshKeyToRouterRules;
|
||||
import com.cloud.network.rules.StaticNat;
|
||||
import com.cloud.network.rules.StaticNatRules;
|
||||
import com.cloud.network.rules.UserdataPwdRules;
|
||||
import com.cloud.network.rules.UserdataToRouterRules;
|
||||
import com.cloud.network.rules.VirtualNetworkApplianceFactory;
|
||||
import com.cloud.network.rules.VpnRules;
|
||||
import com.cloud.vm.DomainRouterVO;
|
||||
import com.cloud.vm.NicProfile;
|
||||
import com.cloud.vm.UserVmVO;
|
||||
import com.cloud.vm.VirtualMachine;
|
||||
import com.cloud.vm.VirtualMachine.State;
|
||||
import com.cloud.vm.VirtualMachineProfile;
|
||||
import com.cloud.vm.dao.UserVmDao;
|
||||
@ -110,7 +113,23 @@ public class BasicNetworkTopology implements NetworkTopology {
|
||||
@Override
|
||||
public boolean applyUserData(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException {
|
||||
return false;
|
||||
|
||||
s_logger.debug("APPLYING USERDATA RULES");
|
||||
|
||||
final String typeString = "userdata and password entry";
|
||||
final Long podId = dest.getPod().getId();
|
||||
boolean isPodLevelException = false;
|
||||
|
||||
if (podId != null && profile.getVirtualMachine().getType() == VirtualMachine.Type.User && network.getTrafficType() == TrafficType.Guest
|
||||
&& network.getGuestType() == Network.GuestType.Shared) {
|
||||
isPodLevelException = true;
|
||||
}
|
||||
|
||||
final boolean failWhenDisconnect = false;
|
||||
|
||||
UserdataPwdRules pwdRules = _virtualNetworkApplianceFactory.createUserdataPwdRules(network, nic, profile, dest);
|
||||
|
||||
return applyRules(network, routers, typeString, isPodLevelException, podId, failWhenDisconnect, new RuleApplierWrapper<RuleApplier>(pwdRules));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -26,6 +26,7 @@ import org.springframework.stereotype.Component;
|
||||
|
||||
import com.cloud.agent.api.Command;
|
||||
import com.cloud.agent.manager.Commands;
|
||||
import com.cloud.deploy.DeployDestination;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.network.Network;
|
||||
import com.cloud.network.PublicIpAddress;
|
||||
@ -147,7 +148,22 @@ public class BasicNetworkVisitor extends NetworkTopologyVisitor {
|
||||
|
||||
@Override
|
||||
public boolean visit(final UserdataPwdRules userdata) throws ResourceUnavailableException {
|
||||
return false;
|
||||
final VirtualRouter router = userdata.getRouter();
|
||||
|
||||
final Commands commands = new Commands(Command.OnError.Stop);
|
||||
final VirtualMachineProfile profile = userdata.getProfile();
|
||||
final NicVO nicVo = userdata.getNicVo();
|
||||
final UserVmVO userVM = userdata.getUserVM();
|
||||
final DeployDestination destination = userdata.getDestination();
|
||||
|
||||
if (router.getPodIdToDeployIn().longValue() == destination.getPod().getId()) {
|
||||
userdata.createPasswordCommand(router, profile, nicVo, commands);
|
||||
userdata.createVmDataCommand(router, userVM, nicVo, userVM.getDetail("SSH.PublicKey"), commands);
|
||||
|
||||
return _applianceManager.sendCommandsToRouter(router, commands);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -49,14 +49,14 @@ public interface NetworkTopology {
|
||||
boolean applyDhcpEntry(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException;
|
||||
|
||||
boolean applyUserData(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException;
|
||||
|
||||
boolean applyRules(final Network network, final List<? extends VirtualRouter> routers, final String typeString, final boolean isPodLevelException, final Long podId,
|
||||
final boolean failWhenDisconnect, RuleApplierWrapper<RuleApplier> ruleApplier) throws ResourceUnavailableException;
|
||||
|
||||
// ====== USER FOR GUEST NETWORK ====== //
|
||||
|
||||
boolean applyUserData(final Network network, final NicProfile nic, final VirtualMachineProfile profile, final DeployDestination dest, final List<DomainRouterVO> routers)
|
||||
throws ResourceUnavailableException;
|
||||
|
||||
boolean applyLoadBalancingRules(Network network, List<LoadBalancingRule> rules, List<? extends VirtualRouter> routers) throws ResourceUnavailableException;
|
||||
|
||||
boolean applyFirewallRules(final Network network, final List<? extends FirewallRule> rules, final List<? extends VirtualRouter> routers) throws ResourceUnavailableException;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user