update reconcilevlans.py
This commit is contained in:
parent
6b2f58837e
commit
0462df40a0
@ -1,20 +1,58 @@
|
||||
|
||||
import os
|
||||
import pathlib
|
||||
|
||||
fnlist=[]
|
||||
for dir in ['../configs/ct','../configs/sh']:
|
||||
fnlist+=list(pathlib.Path(dir).glob('*8360*-?-*.cfg'))
|
||||
fnlist+=list(pathlib.Path(dir).glob('*8325*.cfg'))
|
||||
|
||||
#print(fnlist)
|
||||
|
||||
vlandict={}
|
||||
vlannamedict={}
|
||||
|
||||
for fn in [ '../configs/ct/ct-noc-a8325-a.cfg' ]:
|
||||
print(os.path.basename(fn))
|
||||
with open(fn) as infile:
|
||||
allfilenames=[]
|
||||
|
||||
for fn in fnlist:
|
||||
with fn.open() as infile:
|
||||
allfilenames.append(fn.name.split('.')[0])
|
||||
for line in infile:
|
||||
if line.startswith("vlan"):
|
||||
print(line)
|
||||
vlan=line.strip()
|
||||
if line.startswith("vlan "):
|
||||
#print(line)
|
||||
vlan=int(line.strip().split()[1])
|
||||
try:
|
||||
vlandict[vlan].append(fn)
|
||||
vlandict[vlan].append(os.path.basename(fn).split('.')[0])
|
||||
except KeyError:
|
||||
vlandict[vlan]=[]
|
||||
vlandict[vlan].append(fn)
|
||||
vlandict[vlan].append(os.path.basename(fn).split('.')[0])
|
||||
elif line.strip().startswith("name"):
|
||||
if vlan:
|
||||
vlannamedict[vlan]=line.strip()[5:]
|
||||
vlan=None
|
||||
|
||||
print(vlandict)
|
||||
#print(vlandict)
|
||||
#print (allfilenames)
|
||||
|
||||
#sys.exit()
|
||||
missingdict={}
|
||||
#sys.exit()
|
||||
for vlan in vlandict:
|
||||
for fn in allfilenames:
|
||||
#print(vlandict[vlan])
|
||||
if fn not in vlandict[vlan]:
|
||||
#print(f"{fn} missing {vlan}")
|
||||
if fn not in missingdict:
|
||||
missingdict[fn]=[]
|
||||
missingdict[fn].append(vlan)
|
||||
|
||||
#print(missingdict)
|
||||
|
||||
|
||||
for fn in missingdict:
|
||||
vlanlist=[]
|
||||
for vlan in sorted(missingdict[fn]):
|
||||
vlanlist.append(str(vlan))
|
||||
print(f"{fn} missing {','.join(vlanlist)}")
|
||||
|
||||
print(vlannamedict)
|
||||
Loading…
x
Reference in New Issue
Block a user