2 ##############################################################################
3 # Copyright (c) 2015 Ericsson AB and others.
4 # stefan.k.berg@ericsson.com
5 # jonas.bjurel@ericsson.com
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Apache License, Version 2.0
8 # which accompanies this distribution, and is available at
9 # http://www.apache.org/licenses/LICENSE-2.0
10 ##############################################################################
17 if len(sys.argv) != 3:
18 sys.stderr.write("Usage: "+sys.argv[0]+" <infile> <deafile>\n")
22 if not os.path.exists(infile):
23 sys.stderr.write("ERROR: The file "+infile+" could not be opened\n")
27 if not os.path.exists(deafile):
28 sys.stderr.write("ERROR: The file "+deafile+" could not be opened\n")
32 namespace = "interfaces"
34 f1 = open(infile, 'r')
38 f2 = open(deafile, 'r')
42 # Create lookup table network name -> id for current setup
44 for interface in doc1:
47 for network in interface["assigned_networks"]:
48 nwlookup[network["name"]] = network["id"]
52 out["interfaces"] = {}
54 for interface in doc1:
57 interface["assigned_networks"] = []
58 for nwname in doc2["interfaces"][interface["name"]]:
60 iface["id"] = nwlookup[nwname]
61 iface["name"] = nwname
62 interface["assigned_networks"].append(iface)
64 f3 = open(infile, 'w')
65 f3.write(yaml.dump(doc1, default_flow_style=False))