def createNewVlanRange(cls): """ Increment current cidr of vlan range present in network and create new range """ publicIpRange = PublicIpRange.list(cls.api_client) cls.startIp = publicIpRange[0].startip cls.endIp = publicIpRange[0].endip cls.gateway = publicIpRange[0].gateway cls.netmask = publicIpRange[0].netmask # Pass ip address and mask length to IPNetwork to findout the CIDR ip = IPNetwork(cls.startIp + "/" + cls.netmask) # Take random increment factor to avoid adding the same vlan ip range # in each test case networkIncrementFactor = random.randint(1,255) new_cidr = ip.__iadd__(networkIncrementFactor) ip2 = IPNetwork(new_cidr) test_nw = ip2.network ip = IPAddress(test_nw) # Add IP range(5 IPs) in the new CIDR test_gateway = ip.__add__(1) test_startIp = ip.__add__(3) test_endIp = ip.__add__(10) # Populating services with new IP range cls.testdata["vlan_ip_range"]["startip"] = test_startIp cls.testdata["vlan_ip_range"]["endip"] = test_endIp cls.testdata["vlan_ip_range"]["gateway"] = test_gateway cls.testdata["vlan_ip_range"]["netmask"] = cls.netmask cls.testdata["vlan_ip_range"]["zoneid"] = cls.zone.id cls.testdata["vlan_ip_range"]["podid"] = cls.pod.id return PublicIpRange.create( cls.api_client, cls.testdata["vlan_ip_range"])
def createNewVlanRange(cls): """ Increment current cidr of vlan range present in network and create new range """ publicIpRange = PublicIpRange.list(cls.api_client) cls.startIp = publicIpRange[0].startip cls.endIp = publicIpRange[0].endip cls.gateway = publicIpRange[0].gateway cls.netmask = publicIpRange[0].netmask # Pass ip address and mask length to IPNetwork to findout the CIDR ip = IPNetwork(cls.startIp + "/" + cls.netmask) # Take random increment factor to avoid adding the same vlan ip range # in each test case networkIncrementFactor = random.randint(1, 255) new_cidr = ip.__iadd__(networkIncrementFactor) ip2 = IPNetwork(new_cidr) test_nw = ip2.network ip = IPAddress(test_nw) # Add IP range(5 IPs) in the new CIDR test_gateway = ip.__add__(1) test_startIp = ip.__add__(3) test_endIp = ip.__add__(10) # Populating services with new IP range cls.testdata["vlan_ip_range"]["startip"] = test_startIp cls.testdata["vlan_ip_range"]["endip"] = test_endIp cls.testdata["vlan_ip_range"]["gateway"] = test_gateway cls.testdata["vlan_ip_range"]["netmask"] = cls.netmask cls.testdata["vlan_ip_range"]["zoneid"] = cls.zone.id cls.testdata["vlan_ip_range"]["podid"] = cls.pod.id return PublicIpRange.create(cls.api_client, cls.testdata["vlan_ip_range"])
def increment_cidr(self): """Takes CIDR as input and will increment by one and returns the new CIDR """ publicIpRange = PublicIpRange.list(self.apiclient) self.startIp = publicIpRange[0].startip self.endIp = publicIpRange[0].endip self.gateway = publicIpRange[0].gateway self.netmask = publicIpRange[0].netmask # Pass ip address and mask length to IPNetwork to findout the CIDR ip = IPNetwork(self.startIp + "/" + self.netmask) # Take random increment factor to avoid adding the same vlan ip range # in each test case networkIncrementFactor = random.randint(1, 255) new_cidr = ip.__iadd__(networkIncrementFactor) ip2 = IPNetwork(new_cidr) return ip2
def increment_cidr(self): """Takes CIDR as input and will increment by one and returns the new CIDR """ publicIpRange = PublicIpRange.list(self.apiclient) self.startIp = publicIpRange[0].startip self.endIp = publicIpRange[0].endip self.gateway = publicIpRange[0].gateway self.netmask = publicIpRange[0].netmask # Pass ip address and mask length to IPNetwork to findout the CIDR ip = IPNetwork(self.startIp + "/" + self.netmask) # Take random increment factor to avoid adding the same vlan ip range # in each test case networkIncrementFactor = random.randint(1,255) new_cidr = ip.__iadd__(networkIncrementFactor) ip2 = IPNetwork(new_cidr) return ip2
def test_01_create_ipv6_public_ip_range(self): """Test to add IPv6 public IP range # Validate the following: # 1. createVlanIpRange should return valid info for new public range # 2. The Cloud Database contains the valid information """ ipv6_publiciprange_service = self.services["publicip6range"] ipv6_publiciprange_service["zoneid"] = self.zone.id ipv6_publiciprange = PublicIpRange.create( self.apiclient, ipv6_publiciprange_service ) self.cleanup.append(ipv6_publiciprange) self.debug("Created IPv6 public IP range with ID: %s" % ipv6_publiciprange.vlan.id) ipv6_publiciprange = ipv6_publiciprange.vlan public_ip_ranges = PublicIpRange.list( self.apiclient, id=ipv6_publiciprange.id ) self.assertEqual( isinstance(public_ip_ranges, list), True, "Check list response returns a valid list" ) self.assertNotEqual( len(public_ip_ranges), 0, "Check public IP range is created" ) public_ip_range = public_ip_ranges[0] self.assertEqual( public_ip_range.id, ipv6_publiciprange.id, "Check server id" ) self.assertEqual( public_ip_range.ip6cidr, ipv6_publiciprange_service["ip6cidr"], "Check ip6cidr for IPv6 public IP range" ) return
def getPublicIpv6Range(cls): list_public_ip_range_response = PublicIpRange.list( cls.apiclient, zoneid=cls.zone.id ) ipv4_range_vlan = None if isinstance(list_public_ip_range_response, list) == True and len(list_public_ip_range_response) > 0: for ip_range in list_public_ip_range_response: if ip_range.ip6cidr != None and ip_range.ip6gateway != None: return ip_range if ip_range.netmask != None and ip_range.gateway != None: vlan = ip_range.vlan if ipv4_range_vlan == None and vlan.startswith("vlan://"): vlan = vlan.replace("vlan://", "") ipv4_range_vlan = int(vlan) ipv6_publiciprange_service = cls.services["publicip6range"] ipv6_publiciprange_service["zoneid"] = cls.zone.id ipv6_publiciprange_service["vlan"] = ipv4_range_vlan ipv6_publiciprange = PublicIpRange.create( cls.apiclient, ipv6_publiciprange_service ) cls._cleanup.append(ipv6_publiciprange) return ipv6_publiciprange
h = Host(tmp_dict) # h.forced = 'True' h.id = host.id h.delete(apiClient) clusters = Cluster.list(apiClient) if clusters: for cluster in clusters: print "cluster name={}, id={}".format(cluster.name, cluster.id) if cluster.allocationstate == 'Enabled': print "Delete Cluster" c = Cluster(tmp_dict) c.id = cluster.id c.delete(apiClient) ipranges = PublicIpRange.list(apiClient) if ipranges: for iprange in ipranges: print "ip range name={}, id={}".format(iprange.name, iprange.id) if clusters: nets = PhysicalNetwork.list(apiClient) if nets: for net in nets: print "net name={}, id={}".format(net.name, net.id) print "Delete PhysicalNetwork" n = PhysicalNetwork(tmp_dict) n.id = net.id n.delete(apiClient) pods = Pod.list(apiClient)