Browse Source

Absolute new version

master
Artur 4 years ago
parent
commit
5828d25d38
4 changed files with 112 additions and 823 deletions
  1. +24
    -0
      list_pp.csv
  2. +58
    -0
      update_desc_on_switchports.py
  3. +2
    -2
      update_labels_on_patchpanel.py
  4. +28
    -821
      update_vlans_on_switch.py

+ 24
- 0
list_pp.csv View File

@ -0,0 +1,24 @@
???
???
898
737
732
721
886
717
???
???
???
???
???
???
???
???
???
702
800
920
943
???
???
???

+ 58
- 0
update_desc_on_switchports.py View File

@ -0,0 +1,58 @@
#!/usr/bin/python3.8
import requests
# import json
import urllib3
urllib3.disable_warnings()
API_TOKEN = 'Token ba70a20837155752895ab1860d366812a711e6ea'
API_HOST = "https://demo.netbox.dev"
API_APP = "/api/dcim/interfaces/"
headers = {
'Authorization': API_TOKEN,
'User-Agent': 'PyScript 0.1',
'Content-Type': 'application/json',
'accept': 'application/json'
}
device_id = (input('Input id of switch:\n'))
FRONTPORT = requests.get(API_HOST + API_APP + '?device_id=' + device_id, headers=headers, verify=False)
count_of_ports = (FRONTPORT.json()['count'])
# Read labels from file and create list. After count numbers of them
list_port_labels = []
with open('list_pp.csv') as f:
for line in f:
list_port_labels.append(line.strip())
count_of_labels = len(list_port_labels)
list_port_id = []
def fill_list_port_id(counts):
for p in range(counts):
list_port_id.append(FRONTPORT.json()['results'][p]['id'])
def create_json_list():
json_list = ['id', 'label']
zipped = zip(list_port_id, list_port_labels)
dicts = [dict(zip(json_list, values)) for values in zipped]
print(dicts)
r = requests.patch(API_HOST + API_APP, json=dicts, headers=headers, verify=False)
print(r.json)
print("Count of labels:", count_of_labels, "Count of ports:", count_of_ports)
if count_of_labels == count_of_ports:
print("Списки совпадают. Генерируем")
fill_list_port_id(count_of_labels)
create_json_list()
elif count_of_labels < count_of_ports:
print(f'В списке с названием меньше позиций ({count_of_labels}) чем портов ({count_of_ports}) в патчпанеле')
fill_list_port_id(count_of_labels)
create_json_list()
else:
print(f'В списке с названием больше позиций ({count_of_labels}) чем портов ({count_of_ports}) в патчпанеле')

+ 2
- 2
update_labels_on_patchpanel.py View File

@ -4,8 +4,8 @@ import requests
import urllib3
urllib3.disable_warnings()
API_TOKEN = 'Token 367579298e03d2fd43df86e97b487fe5782d868d'
API_HOST = "https://demo.netbox.dev/"
API_TOKEN = 'Token 30498d1f93d710e3d518bc7d3d48a5221b0e48df'
API_HOST = "https://demo.netbox.dev"
API_APP = "api/dcim/front-ports/"
headers = {


+ 28
- 821
update_vlans_on_switch.py View File

@ -4,7 +4,7 @@ import json
import urllib3
urllib3.disable_warnings()
API_TOKEN = 'Token 30498d1f93d710e3d518bc7d3d48a5221b0e48df'
API_TOKEN = 'Token 0ee155b764ce14be8a2c2b44b075fcfed9a0f2ec'
API_HOST = "https://demo.netbox.dev/"
API_APP = "api/dcim/interfaces/"
@ -16,838 +16,45 @@ headers = {
}
# device_id = (input('Input id of patchpanel:\n'))
device_id = '4'
device_id = '1'
vlan_database = {
1001: 3,
1008: 4,
1009: 5,
1010: 6,
1011: 7,
1017: 8,
1018: 9,
1019: 10,
1020: 11,
1021: 12,
1022: 13,
1023: 14,
1024: 15,
1026: 16,
1028: 17,
1029: 18,
1032: 1,
1033: 19,
1035: 20,
1036: 21,
1039: 22,
1040: 23,
1043: 24,
1063: 25,
1064: 26,
1065: 27,
1066: 28,
1067: 29,
1068: 30,
1069: 31,
1070: 32,
1071: 33,
1072: 34,
1073: 35,
1074: 36,
1075: 37,
1076: 38,
1077: 39,
1078: 40,
1080: 41,
1081: 42,
1082: 43,
1083: 44,
1084: 45,
1096: 46,
1099: 54,
1100: 55,
1112: 56,
1113: 57,
1128: 58,
1139: 2,
1224: 47,
1225: 48,
3000: 59,
3001: 60,
3002: 61,
3003: 62,
3004: 63,
3005: 64,
3006: 65,
3007: 66,
3008: 67,
3009: 68,
3010: 69,
3011: 70,
3020: 71,
1: 82,
2: 83,
1102: 78,
1144: 79,
1145: 80,
1226: 81
100: 1,
300: 27,
200: 2
}
vlan_from_switch = [
{
"id": 1,
"mode": "",
"untagged_vlan": [1035],
"tagged_vlans": [
1035,
]
},
{
"id": 2,
"mode": "",
"untagged_vlan": [1035],
"tagged_vlans": [
1035,
]
},
{
"id": 3,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 4,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 5,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
]
},
{
"id": 6,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
]
},
{
"id": 7,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 8,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 9,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 10,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 11,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 12,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1032,
1035,
1096,
1139,
1225,
]
},
{
"id": 13,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 14,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
"id": 1,
"mode": "",
"untagged_vlan": [100],
"tagged_vlans": [
200,
300,
]
},
{
"id": 15,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
"id": 2,
"mode": "",
"untagged_vlan": [100],
"tagged_vlans": [
100,
]
},
{
"id": 16,
"mode": "",
"untagged_vlan": [1075],
"tagged_vlans": [
1075,
]
},
{
"id": 17,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 18,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 19,
"mode": "",
"untagged_vlan": [1040],
"tagged_vlans": [
1040,
]
},
{
"id": 20,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 21,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 22,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 23,
"mode": "",
"untagged_vlan": [1040],
"tagged_vlans": [
1040,
]
},
{
"id": 24,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 25,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1032,
1096,
1099,
]
},
{
"id": 26,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 27,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1032,
1064,
1065,
1096,
]
},
{
"id": 28,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 29,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 30,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1032,
1096,
1099,
]
},
{
"id": 31,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1099,
]
},
{
"id": 32,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1099,
]
},
{
"id": 33,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 34,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 35,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 36,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 37,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 38,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 39,
"mode": "",
"untagged_vlan": [1096],
"tagged_vlans": [
1096,
]
},
{
"id": 40,
"mode": "",
"untagged_vlan": [1064],
"tagged_vlans": [
1064,
]
},
{
"id": 41,
"mode": "",
"untagged_vlan": [1036],
"tagged_vlans": [
1036,
]
},
{
"id": 42,
"mode": "",
"untagged_vlan": [1043],
"tagged_vlans": [
1043,
]
},
{
"id": 43,
"mode": "",
"untagged_vlan": [1064],
"tagged_vlans": [
1064,
]
},
{
"id": 44,
"mode": "",
"untagged_vlan": [1064],
"tagged_vlans": [
1064,
]
},
{
"id": 45,
"mode": "",
"untagged_vlan": [1032],
"tagged_vlans": [
1021,
1032,
1035,
1064,
1075,
1076,
1096,
1099,
1139,
1225,
1226,
]
},
{
"id": 46,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1021,
1032,
1035,
1036,
1063,
1064,
1065,
1075,
1076,
1077,
1096,
1099,
1139,
1224,
1225,
1226,
]
},
{
"id": 47,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
]
},
{
"id": 48,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
1226,
]
},
{
"id": 49,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
1226,
]
},
{
"id": 50,
"mode": "",
"untagged_vlan": [],
"tagged_vlans": [
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
1226,
]
},
{
"id": 51,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
]
},
{
"id": 52,
"mode": "",
"untagged_vlan": [1],
"tagged_vlans": [
1,
1001,
1008,
1009,
1010,
1011,
1017,
1018,
1019,
1020,
1021,
1022,
1023,
1024,
1026,
1028,
1029,
1032,
1033,
1035,
1036,
1039,
1040,
1043,
1063,
1064,
1065,
1066,
1067,
1068,
1069,
1070,
1071,
1072,
1073,
1074,
1075,
1076,
1077,
1078,
1080,
1081,
1096,
1099,
1100,
1112,
1113,
1128,
1139,
1224,
1225,
]
"id": 3,
"mode": "",
"untagged_vlan": [1064],
"tagged_vlans": [
100,
200,
300,
]
},
]
FRONTPORT = requests.get(API_HOST + API_APP + '?device_id=' + device_id + '&limit=60', headers=headers, verify=False)
count_of_ports = (FRONTPORT.json()['count'])


Loading…
Cancel
Save