You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by al...@apache.org on 2013/05/09 20:00:46 UTC
[8/9] git commit: updated refs/heads/internallb to def0861
Merge branch 'master' into internallb1
Conflicts:
plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java
server/src/com/cloud/network/vpc/VpcManagerImpl.java
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/56d94fc0
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/56d94fc0
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/56d94fc0
Branch: refs/heads/internallb
Commit: 56d94fc074db52ef00ace1703081a342dfb63db0
Parents: d828c15 8f9a42e
Author: Alena Prokharchyk <al...@citrix.com>
Authored: Thu May 9 09:51:36 2013 -0700
Committer: Alena Prokharchyk <al...@citrix.com>
Committed: Thu May 9 10:21:34 2013 -0700
----------------------------------------------------------------------
api/src/com/cloud/network/vpc/VpcOffering.java | 1 +
.../hypervisor/vmware/resource/VmwareResource.java | 18 +
.../commands/ListCiscoAsa1000vResourcesCmd.java | 1 +
.../api/commands/ListCiscoVnmcResourcesCmd.java | 15 +-
.../response/CiscoAsa1000vResourceResponse.java | 45 ++-
.../api/response/CiscoVnmcResourceResponse.java | 42 ++-
.../cloud/network/element/NetscalerElement.java | 34 ++-
server/pom.xml | 4 +-
.../src/com/cloud/network/NetworkServiceImpl.java | 6 +-
.../network/guru/ExternalGuestNetworkGuru.java | 40 ++-
.../src/com/cloud/network/rules/RulesManager.java | 3 +
.../com/cloud/network/rules/RulesManagerImpl.java | 38 ++
.../src/com/cloud/network/vpc/VpcManagerImpl.java | 31 ++-
.../com/cloud/resource/ResourceManagerImpl.java | 12 +-
server/src/com/cloud/vm/UserVmManagerImpl.java | 10 +-
.../com/cloud/vm/VirtualMachineManagerImpl.java | 50 ++-
.../com/cloud/network/MockRulesManagerImpl.java | 8 +
server/test/com/cloud/vpc/VpcTest.java | 269 +++++++++++++++
.../networkoffering/CreateNetworkOfferingTest.java | 43 +++
ui/scripts/instances.js | 2 +-
20 files changed, 590 insertions(+), 82 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/56d94fc0/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java
----------------------------------------------------------------------
diff --cc plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java
index ce09727,b814430..4f2a0a1
--- a/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java
+++ b/plugins/network-elements/netscaler/src/com/cloud/network/element/NetscalerElement.java
@@@ -98,10 -57,13 +98,13 @@@ import com.cloud.network.lb.LoadBalanci
import com.cloud.network.lb.LoadBalancingRule.LbDestination;
import com.cloud.network.resource.NetscalerResource;
import com.cloud.network.rules.FirewallRule;
-import com.cloud.network.rules.FirewallRule.Purpose;
import com.cloud.network.rules.LbStickinessMethod;
import com.cloud.network.rules.LbStickinessMethod.StickinessMethodType;
+import com.cloud.network.rules.LoadBalancerContainer;
import com.cloud.network.rules.StaticNat;
+ import com.cloud.network.vpc.PrivateGateway;
+ import com.cloud.network.vpc.StaticRouteProfile;
+ import com.cloud.network.vpc.Vpc;
import com.cloud.offering.NetworkOffering;
import com.cloud.utils.NumbersUtil;
import com.cloud.utils.db.DB;
@@@ -983,20 -960,33 +986,49 @@@ public class NetscalerElement extends E
}
return null;
}
+
+ private boolean canHandleLbRules(List<LoadBalancingRule> rules) {
+ Map<Capability, String> lbCaps = this.getCapabilities().get(Service.Lb);
+ if (!lbCaps.isEmpty()) {
+ String schemeCaps = lbCaps.get(Capability.LbSchemes);
+ if (schemeCaps != null) {
+ for (LoadBalancingRule rule : rules) {
+ if (!schemeCaps.contains(rule.getScheme().toString())) {
+ s_logger.debug("Scheme " + rules.get(0).getScheme() + " is not supported by the provider " + this.getName());
+ return false;
+ }
+ }
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public boolean implementVpc(Vpc vpc, DeployDestination dest, ReservationContext context)
+ throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
+ return true;
+ }
+
+ @Override
+ public boolean shutdownVpc(Vpc vpc, ReservationContext context) throws ConcurrentOperationException,
+ ResourceUnavailableException {
+ return true;
+ }
+
+ @Override
+ public boolean createPrivateGateway(PrivateGateway gateway) throws ConcurrentOperationException,
+ ResourceUnavailableException {
+ return true;
+ }
+
+ @Override
+ public boolean deletePrivateGateway(PrivateGateway privateGateway) throws ConcurrentOperationException,
+ ResourceUnavailableException {
+ return true;
+ }
+
+ @Override
+ public boolean applyStaticRoutes(Vpc vpc, List<StaticRouteProfile> routes) throws ResourceUnavailableException {
+ return true;
+ }
}
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/56d94fc0/server/src/com/cloud/network/NetworkServiceImpl.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/56d94fc0/server/src/com/cloud/network/vpc/VpcManagerImpl.java
----------------------------------------------------------------------
diff --cc server/src/com/cloud/network/vpc/VpcManagerImpl.java
index 1ccefe6,9be2208..55656d8
--- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java
+++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
@@@ -184,9 -184,7 +184,9 @@@ public class VpcManagerImpl extends Man
private final ScheduledExecutorService _executor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("VpcChecker"));
private List<VpcProvider> vpcElements = null;
private final List<Service> nonSupportedServices = Arrays.asList(Service.SecurityGroup, Service.Firewall);
- private final List<Provider> supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp, Provider.InternalLbVm);
- private final List<Provider> supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp, Provider.Netscaler);
++ private final List<Provider> supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp, Provider.InternalLbVm, Provider.Netscaler);
+
+
int _cleanupInterval;
int _maxNetworks;
SearchBuilder<IPAddressVO> IpAddressSearch;
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/56d94fc0/server/test/org/apache/cloudstack/networkoffering/CreateNetworkOfferingTest.java
----------------------------------------------------------------------
diff --cc server/test/org/apache/cloudstack/networkoffering/CreateNetworkOfferingTest.java
index bcfc46a,7946c1a..92aa2a2
--- a/server/test/org/apache/cloudstack/networkoffering/CreateNetworkOfferingTest.java
+++ b/server/test/org/apache/cloudstack/networkoffering/CreateNetworkOfferingTest.java
@@@ -181,4 -184,43 +185,43 @@@ public class CreateNetworkOfferingTest
assertNotNull("Isolated network offering with specifyIpRanges=true and with no sourceNatService, failed to create", off);
}
+
+ @Test
+ public void createVpcNtwkOff() {
+ Map<Service, Set<Provider>> serviceProviderMap = new HashMap<Network.Service, Set<Network.Provider>>();
+ Set<Network.Provider> vrProvider = new HashSet<Network.Provider>();
+ vrProvider.add(Provider.VPCVirtualRouter);
+ serviceProviderMap.put(Network.Service.Dhcp , vrProvider);
+ serviceProviderMap.put(Network.Service.Dns , vrProvider);
+ serviceProviderMap.put(Network.Service.Lb , vrProvider);
+ serviceProviderMap.put(Network.Service.SourceNat , vrProvider);
+ serviceProviderMap.put(Network.Service.Gateway , vrProvider);
+ serviceProviderMap.put(Network.Service.Lb , vrProvider);
+ NetworkOfferingVO off = configMgr.createNetworkOffering("isolated", "isolated", TrafficType.Guest, null, true,
+ Availability.Optional, 200, serviceProviderMap, false, Network.GuestType.Isolated, false,
- null, false, null, false, false);
++ null, false, null, false, false, null);
+ // System.out.println("Creating Vpc Network Offering");
+ assertNotNull("Vpc Isolated network offering with Vpc provider ", off);
+ }
+
+ @Test
+ public void createVpcNtwkOffWithNetscaler() {
+ Map<Service, Set<Provider>> serviceProviderMap = new HashMap<Network.Service, Set<Network.Provider>>();
+ Set<Network.Provider> vrProvider = new HashSet<Network.Provider>();
+ Set<Network.Provider> lbProvider = new HashSet<Network.Provider>();
+ vrProvider.add(Provider.VPCVirtualRouter);
+ lbProvider.add(Provider.Netscaler);
+ serviceProviderMap.put(Network.Service.Dhcp, vrProvider);
+ serviceProviderMap.put(Network.Service.Dns, vrProvider);
+ serviceProviderMap.put(Network.Service.Lb, vrProvider);
+ serviceProviderMap.put(Network.Service.SourceNat, vrProvider);
+ serviceProviderMap.put(Network.Service.Gateway, vrProvider);
+ serviceProviderMap.put(Network.Service.Lb, lbProvider);
+ NetworkOfferingVO off = configMgr.createNetworkOffering("isolated", "isolated", TrafficType.Guest, null, true,
+ Availability.Optional, 200, serviceProviderMap, false, Network.GuestType.Isolated, false, null, false,
- null, false, false);
++ null, false, false, null);
+ // System.out.println("Creating Vpc Network Offering");
+ assertNotNull("Vpc Isolated network offering with Vpc and Netscaler provider ", off);
+ }
+
}