X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=xenserver%2Fusr_share_openvswitch_scripts_ovs-xapi-sync;h=273ec04d894ca0837944f47d10d805452cd5dd80;hb=aacea8ba432bdffcca77696ba407be0c62661394;hp=4d82b9981e0e9776a11665a5edcc9cb3ea34ed7a;hpb=da54975c9d79313ba27d80ee8901eee160653e3a;p=openvswitch diff --git a/xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync b/xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync index 4d82b998..273ec04d 100755 --- a/xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync +++ b/xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync @@ -176,11 +176,13 @@ def update_bridge_id(name, ids): if ids.get("bridge-id") != primary_id: set_external_id("Bridge", name, "bridge-id", primary_id) + ids["bridge-id"] = primary_id def update_iface_id(name, ids): id = get_iface_id(name, ids.get("xs-vif-uuid")) if ids.get("iface-id") != id and id: set_external_id("Interface", name, "iface-id", id) + ids["iface-id"] = id def keep_table_columns(schema, table_name, column_types): table = schema.tables.get(table_name) @@ -252,8 +254,6 @@ def main(argv): "(use --help for help)\n" % ovs.util.PROGRAM_NAME) sys.exit(1) - ovs.daemon.die_if_already_running() - remote = args[0] idl = ovs.db.idl.Idl(remote, "Open_vSwitch", monitor_uuid_schema_cb) @@ -285,13 +285,17 @@ def main(argv): for rec in idl.data["Bridge"].itervalues(): name = rec.name.as_scalar() xs_network_uuids = rec.external_ids.get("xs-network-uuids") - new_bridges[name] = {"xs-network-uuids": xs_network_uuids} + bridge_id = rec.external_ids.get("bridge-id") + new_bridges[name] = {"xs-network-uuids": xs_network_uuids, + "bridge-id": bridge_id} new_interfaces = {} for rec in idl.data["Interface"].itervalues(): name = rec.name.as_scalar() xs_vif_uuid = rec.external_ids.get("xs-vif-uuid") - new_interfaces[name] = {"xs-vif-uuid": xs_vif_uuid} + iface_id = rec.external_ids.get("iface-id") + new_interfaces[name] = {"xs-vif-uuid": xs_vif_uuid, + "iface-id": iface_id} if bridges != new_bridges: for name,ids in new_bridges.items():