def getVnet(self, region): try: vnets = azurerm.list_vnets(self.access_token, self.subscription) array = [] for vnet in vnets['value']: if vnet['location'] != region: continue else: for subnet in vnet['properties']['subnets']: #print(subnet['name'] + ', ' + vnet['name'] + ', vnetLocation=' + vnet['location'] + ', ' + # subnet['properties']['addressPrefix'] + ', ' + subnet['properties']['provisioningState']) array2 = [] array2.append(subnet['name']) array2.append(vnet['name']) array2.append(vnet['location']) array2.append(subnet['properties']['addressPrefix']) array2.append( subnet['properties']['provisioningState']) array2.append(subnet['id']) array.append(array2) return array except ValueError: print("Fail to get Vnet list") return False
def test_network(self): # create public ip print('Creating public ip address: ' + self.ipname) dns_label = self.vnet response = azurerm.create_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname, dns_label, self.location) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.ipname) # print(json.dumps(response.json())) ip_id = response.json()['id'] # create public ip for load balancer print('Creating public ip address for load balancer: ' + self.lbipname) dns_label = self.vnet + 'lb' response = azurerm.create_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.lbipname, dns_label, self.location) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.lbipname) # print(json.dumps(response.json())) lbip_id = response.json()['id'] # create vnet print('Creating vnet: ' + self.vnet) response = azurerm.create_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet, self.location, address_prefix='10.0.0.0/16', nsg_id=None) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.vnet) subnet_id = response.json()['properties']['subnets'][0]['id'] # create NSG nsg_name = self.vnet + 'nsg' print('Creating NSG: ' + nsg_name) response = azurerm.create_nsg(self.access_token, self.subscription_id, self.rgname, \ nsg_name, self.location) self.assertEqual(response.status_code, 201) # print(json.dumps(response.json())) self.assertEqual(response.json()['name'], nsg_name) nsg_id = response.json()['id'] # create NSG rule nsg_rule = 'ssh' print('Creating NSG rule: ' + nsg_rule) response = azurerm.create_nsg_rule(self.access_token, self.subscription_id, self.rgname, \ nsg_name, nsg_rule, description='ssh rule', destination_range='22') self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], nsg_rule) # create nic nic_name = self.vnet + 'nic' # sleep long enough for subnet to finish creating time.sleep(10) print('Creating nic: ' + nic_name) response = azurerm.create_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name, ip_id, subnet_id, self.location, nsg_id=nsg_id) # print(response.text) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], nic_name) nic_id = response.json()['id'] # create load balancer with nat pool lb_name = self.vnet + 'lb' print('Creating load balancer with nat pool: ' + lb_name) response = azurerm.create_lb_with_nat_pool(self.access_token, self.subscription_id, \ self.rgname, lb_name, lbip_id, '50000', '50100', '22', self.location) # print(json.dumps(response.json())) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], lb_name) # get public ip print('Getting public ip ' + self.ipname) response = azurerm.get_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname) self.assertEqual(response['name'], self.ipname) # get vnet print('Getting vnet: ' + self.vnet) response = azurerm.get_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet) self.assertEqual(response['name'], self.vnet) # list vnets print('Listing vnets in sub') response = azurerm.list_vnets(self.access_token, self.subscription_id) # print(json.dumps(response, sort_keys=False, indent=2, separators=(',', ': '))) self.assertTrue(len(response['value']) > 0) # get nic print('Getting nic: ' + nic_name) response = azurerm.get_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name) self.assertEqual(response['name'], nic_name) # list nics in resource group print('Listing nics in resource group: ' + self.rgname) response = azurerm.list_nics_rg(self.access_token, self.subscription_id, self.rgname) self.assertEqual(response['value'][0]['name'], nic_name) # list nics in subscription print('Listing nics in subscription.') response = azurerm.list_nics(self.access_token, self.subscription_id) self.assertTrue(len(response['value']) > 0) # delete nsg rule print('Deleting nsg rule: ' + nsg_rule) response = azurerm.delete_nsg_rule(self.access_token, self.subscription_id, self.rgname, \ nsg_name, nsg_rule) self.assertEqual(response.status_code, 202) # delete nic print('Deleting nic: ' + nic_name) response = azurerm.delete_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name) self.assertEqual(response.status_code, 202) # delete nsg print('Deleting nsg: ' + nsg_name) response = azurerm.delete_nsg(self.access_token, self.subscription_id, self.rgname, \ nsg_name) self.assertEqual(response.status_code, 202) # delete public ip print('Deleting public ip ' + self.ipname) response = azurerm.delete_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname) self.assertEqual(response.status_code, 202) # delete load balancer print('Deleting load balancer ' + lb_name) response = azurerm.delete_load_balancer(self.access_token, self.subscription_id, self.rgname, \ lb_name) self.assertEqual(response.status_code, 202) # delete vnet print('Deleting vnet: ' + self.vnet) response = azurerm.delete_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet) self.assertEqual(response.status_code, 202) # get network usage print('Getting network usage') response = azurerm.get_network_usage(self.access_token, self.subscription_id, self.location) self.assertTrue(len(response['value']) > 0)
print("Error: Expecting vmssConfig.json in current folder") sys.exit() tenant_id = configData['tenantId'] app_id = configData['appId'] app_secret = configData['appSecret'] subscription_id = configData['subscriptionId'] resource_group = configData['resourceGroup'] vmssname = configData['vmssName'] location = 'westus' # for quota API call access_token = azurerm.get_access_token(tenant_id, app_id, app_secret) # list VNETs in subscription print('VNETs in subscription:') vnets = azurerm.list_vnets(access_token, subscription_id) for vnet in vnets['value']: print(vnet['name'] + ', ' + vnet['location']) # get VNET print('Get VNET details') vnet_name = resource_group + 'vnet' vnet = azurerm.get_vnet(access_token, subscription_id, resource_group, vnet_name) print(json.dumps(vnet, sort_keys=False, indent=2, separators=(',', ': '))) # list NICs in subscription print('\nNICs in subscription:') nics = azurerm.list_nics(access_token, subscription_id) for nic in nics['value']: print(json.dumps(nic, sort_keys=False, indent=2, separators=(',', ': '))) #print(nic['name'])
def test_network(self): # create public ip print('Creating public ip address: ' + self.ipname) dns_label = self.vnet response = azurerm.create_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname, dns_label, self.location) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.ipname) # print(json.dumps(response.json())) ip_id = response.json()['id'] # create public ip for load balancer print('Creating public ip address for load balancer: ' + self.lbipname) dns_label = self.vnet + 'lb' response = azurerm.create_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.lbipname, dns_label, self.location) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.lbipname) # print(json.dumps(response.json())) lbip_id = response.json()['id'] # create vnet print('Creating vnet: ' + self.vnet) response = azurerm.create_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet, self.location, address_prefix='10.0.0.0/16', nsg_id=None) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], self.vnet) subnet_id = response.json()['properties']['subnets'][0]['id'] # create NSG nsg_name = self.vnet + 'nsg' print('Creating NSG: ' + nsg_name) response = azurerm.create_nsg(self.access_token, self.subscription_id, self.rgname, \ nsg_name, self.location) self.assertEqual(response.status_code, 201) # print(json.dumps(response.json())) self.assertEqual(response.json()['name'], nsg_name) nsg_id = response.json()['id'] # create NSG rule nsg_rule = 'ssh' print('Creating NSG rule: ' + nsg_rule) response = azurerm.create_nsg_rule(self.access_token, self.subscription_id, self.rgname, \ nsg_name, nsg_rule, description='ssh rule', destination_range='22') self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], nsg_rule) # create nic nic_name = self.vnet + 'nic' print('Creating nic: ' + nic_name) response = azurerm.create_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name, ip_id, subnet_id, self.location) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], nic_name) nic_id = response.json()['id'] # create load balancer with nat pool lb_name = self.vnet + 'lb' print('Creating load balancer with nat pool: ' + lb_name) response = azurerm.create_lb_with_nat_pool(self.access_token, self.subscription_id, \ self.rgname, lb_name, lbip_id, '50000', '50100', '22', self.location) # print(json.dumps(response.json())) self.assertEqual(response.status_code, 201) self.assertEqual(response.json()['name'], lb_name) # get public ip print('Getting public ip ' + self.ipname) response = azurerm.get_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname) self.assertEqual(response['name'], self.ipname) # get vnet print('Getting vnet: ' + self.vnet) response = azurerm.get_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet) self.assertEqual(response['name'], self.vnet) # list vnets print('Listing vnets in sub') response = azurerm.list_vnets(self.access_token, self.subscription_id) # print(json.dumps(response, sort_keys=False, indent=2, separators=(',', ': '))) self.assertTrue(len(response['value']) > 0) # get nic print('Getting nic: ' + nic_name) response = azurerm.get_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name) self.assertEqual(response['name'], nic_name) # list nics in resource group print('Listing nics in resource group: ' + self.rgname) response = azurerm.list_nics_rg(self.access_token, self.subscription_id, self.rgname) self.assertEqual(response['value'][0]['name'], nic_name) # list nics in subscription print('Listing nics in subscription.') response = azurerm.list_nics(self.access_token, self.subscription_id) self.assertTrue(len(response['value']) > 0) # delete nsg rule print('Deleting nsg rule: ' + nsg_rule) response = azurerm.delete_nsg_rule(self.access_token, self.subscription_id, self.rgname, \ nsg_name, nsg_rule) self.assertEqual(response.status_code, 202) # delete nsg print('Deleting nsg: ' + nsg_name) response = azurerm.delete_nsg(self.access_token, self.subscription_id, self.rgname, \ nsg_name) self.assertEqual(response.status_code, 202) # delete nic print('Deleting nic: ' + nic_name) response = azurerm.delete_nic(self.access_token, self.subscription_id, self.rgname, \ nic_name) self.assertEqual(response.status_code, 202) # delete public ip print('Deleting public ip ' + self.ipname) response = azurerm.delete_public_ip(self.access_token, self.subscription_id, self.rgname, \ self.ipname) self.assertEqual(response.status_code, 202) # delete load balancer print('Deleting load balancer ' + lb_name) response = azurerm.delete_load_balancer(self.access_token, self.subscription_id, self.rgname, \ lb_name) self.assertEqual(response.status_code, 202) # delete vnet print('Deleting vnet: ' + self.vnet) response = azurerm.delete_vnet(self.access_token, self.subscription_id, self.rgname, \ self.vnet) self.assertEqual(response.status_code, 202) # get network usage print('Getting network usage') response = azurerm.get_network_usage(self.access_token, self.subscription_id, self.location) self.assertTrue(len(response['value']) > 0)