- configure the virtual router element for advanced networks only

- enable all service providers created in  a zone
- TODO: basic networking and optionally selecting providers enabled
This commit is contained in:
Prasanna Santhanam 2011-11-30 17:40:42 +05:30
parent 06dda10f31
commit 0b1ca708bb

View File

@ -141,41 +141,49 @@ class deployDataCenters():
self.createVlanIpRanges("Advanced", ipranges, zoneId, networkId=networkId) self.createVlanIpRanges("Advanced", ipranges, zoneId, networkId=networkId)
def configureProviders(self, providers, zoneid): def configureProviders(self, providers, zoneid, networktype):
for prov in providers: for prov in providers:
pnets = listPhysicalNetworks.listPhysicalNetworksCmd() pnets = listPhysicalNetworks.listPhysicalNetworksCmd()
pnets.zoneid = zoneid pnets.zoneid = zoneid
pnets.state = 'Disabled' pnets.state = 'Disabled'
pnetsresponse = self.apiClient.listPhysicalNetworks(pnets) pnetsresponse = self.apiClient.listPhysicalNetworks(pnets)
pnetid = pnetsresponse[0].id pnetid = pnetsresponse[0].id
upnet = updatePhysicalNetwork.updatePhysicalNetworkCmd() upnet = updatePhysicalNetwork.updatePhysicalNetworkCmd()
upnet.state = 'Enabled' upnet.state = 'Enabled'
upnet.id = pnetid upnet.id = pnetid
upnet.vlan = prov.vlan upnet.vlan = prov.vlan
upnetresponse = self.apiClient.updatePhysicalNetwork(upnet) upnetresponse = self.apiClient.updatePhysicalNetwork(upnet)
pnetprov = listNetworkServiceProviders.listNetworkServiceProvidersCmd() '''only for advanced zone - virtualrouter'''
pnetprov.physicalnetworkid = pnetid if networktype == 'Advanced':
pnetprov.state = 'Disabled' pnetprov = listNetworkServiceProviders.listNetworkServiceProvidersCmd()
pnetprovresponse = self.apiClient.listNetworkServiceProviders(pnetprov) pnetprov.physicalnetworkid = pnetid
pnetprovid = pnetprovresponse[0].id pnetprov.state = 'Enabled'
pnetprov.name = 'VirtualRouter'
vrprov = self.apiClient.listNetworkServiceProviders(pnetprov)
#TODO: Only enables default - should also update service list - VPN/LB/DNS/DHCP/FW vrprov = listVirtualRouterElements.listVirtualRouterElementsCmd()
upnetprov = updateNetworkServiceProvider.updateNetworkServiceProviderCmd() vrprov.nspid = vrprov.id
upnetprov.id = pnetprovid vrprovresponse = self.apiClient.listVirtualRouterElements(vrprov)
upnetprov.state = 'Enabled' vrprovid = vrprovresponse[0].id
upnetprovresponse = self.apiClient.updateNetworkServiceProvider(upnetprov)
vrprov = listVirtualRouterElements.listVirtualRouterElementsCmd() vrconfig = configureVirtualRouterElement.configureVirtualRouterElementCmd()
vrprov.nspid = pnetprovid vrconfig.enabled = 'true'
vrprovresponse = self.apiClient.listVirtualRouterElements(vrprov) vrconfig.id = vrprovid
vrprovid = vrprovresponse[0].id vrconfigresponse = self.apiClient.configureVirtualRouterElement(vrconfig)
vrconfig = configureVirtualRouterElement.configureVirtualRouterElementCmd() pnetprov = listNetworkServiceProviders.listNetworkServiceProvidersCmd()
vrconfig.enabled = 'true' pnetprov.physicalnetworkid = pnetid
vrconfig.id = vrprovid pnetprov.state = 'Disabled'
vrconfigresponse = self.apiClient.configureVirtualRouterElement(vrconfig) pnetprovs = self.apiClient.listNetworkServiceProviders(pnetprov)
'''enable all the providers'''
for pnetprov in pnetprovs:
upnetprov = updateNetworkServiceProvider.updateNetworkServiceProviderCmd()
upnetprov.id = pnetprov.id
upnetprov.state = 'Enabled'
upnetprovresponse = self.apiClient.updateNetworkServiceProvider(upnetprov)
def createZones(self, zones): def createZones(self, zones):
@ -195,7 +203,7 @@ class deployDataCenters():
zoneId = zoneresponse.id zoneId = zoneresponse.id
'''enable physical networks and providers''' '''enable physical networks and providers'''
self.configureProviders(zone.providers, zoneId) self.configureProviders(zone.providers, zoneId, zone.networktype)
'''create pods''' '''create pods'''
self.createpods(zone.pods, zone, zoneId) self.createpods(zone.pods, zone, zoneId)