def add_netscaler(apiclient, zoneid, NSservice): """ Adds Netscaler device and enables NS provider""" cmd = listPhysicalNetworks.listPhysicalNetworksCmd() cmd.zoneid = zoneid physical_networks = apiclient.listPhysicalNetworks(cmd) if isinstance(physical_networks, list): physical_network = physical_networks[0] cmd = listNetworkServiceProviders.listNetworkServiceProvidersCmd() cmd.name = "Netscaler" cmd.physicalnetworkid = physical_network.id nw_service_providers = apiclient.listNetworkServiceProviders(cmd) if isinstance(nw_service_providers, list): netscaler_provider = nw_service_providers[0] else: cmd1 = addNetworkServiceProvider.addNetworkServiceProviderCmd() cmd1.name = "Netscaler" cmd1.physicalnetworkid = physical_network.id netscaler_provider = apiclient.addNetworkServiceProvider(cmd1) netscaler = NetScaler.add(apiclient, NSservice, physicalnetworkid=physical_network.id) if netscaler_provider.state != "Enabled": cmd = updateNetworkServiceProvider.updateNetworkServiceProviderCmd() cmd.id = netscaler_provider.id cmd.state = "Enabled" apiclient.updateNetworkServiceProvider(cmd) return netscaler
def add_netscaler(apiclient, zoneid, NSservice): """ Adds Netscaler device and enables NS provider""" cmd = listPhysicalNetworks.listPhysicalNetworksCmd() cmd.zoneid = zoneid physical_networks = apiclient.listPhysicalNetworks(cmd) if isinstance(physical_networks, list): physical_network = physical_networks[0] cmd = listNetworkServiceProviders.listNetworkServiceProvidersCmd() cmd.name = 'Netscaler' cmd.physicalnetworkid = physical_network.id nw_service_providers = apiclient.listNetworkServiceProviders(cmd) if isinstance(nw_service_providers, list): netscaler_provider = nw_service_providers[0] else: cmd1 = addNetworkServiceProvider.addNetworkServiceProviderCmd() cmd1.name = 'Netscaler' cmd1.physicalnetworkid = physical_network.id netscaler_provider = apiclient.addNetworkServiceProvider(cmd1) netscaler = NetScaler.add( apiclient, NSservice, physicalnetworkid=physical_network.id ) if netscaler_provider.state != 'Enabled': cmd = updateNetworkServiceProvider.updateNetworkServiceProviderCmd() cmd.id = netscaler_provider.id cmd.state = 'Enabled' apiclient.updateNetworkServiceProvider(cmd) return netscaler