)]}'
{"networking_ovn/octavia/ovn_driver.py":[{"author":{"_account_id":17776,"name":"Reedip","email":"reedip.banerjee@gmail.com","username":"Reedip"},"change_message_id":"a9395f59da3ffffcfdd0626f1e58cdf66da5872f","unresolved":false,"context_lines":[{"line_number":1520,"context_line":"        network_driver \u003d get_network_driver()"},{"line_number":1521,"context_line":"        network_driver.neutron_client.delete_port(port_id)"},{"line_number":1522,"context_line":""},{"line_number":1523,"context_line":"    def handle_vip_fip(self, fip_info):"},{"line_number":1524,"context_line":"        ovn_lb \u003d self._find_ovn_lb(fip_info[\u0027lb_id\u0027])"},{"line_number":1525,"context_line":"        external_ids \u003d copy.deepcopy(ovn_lb.external_ids)"},{"line_number":1526,"context_line":"        commands \u003d []"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_52c4545f","line":1523,"range":{"start_line":1523,"start_character":8,"end_line":1523,"end_character":22},"updated":"2019-06-24 08:18:39.000000000","message":"can change the function name, in the upcoming ps, but looks cool :)","commit_id":"ec2055ca7655580fdc51ec482b369504792dc8ef"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"78d06aa2201d267fdec7f08c51f048943536f52c","unresolved":false,"context_lines":[{"line_number":331,"context_line":"        if commands:"},{"line_number":332,"context_line":"            self._execute_commands(commands)"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    # Handler following VIP port updates."},{"line_number":335,"context_line":"    # 1. If a floating ip is associated to a vip port, then networking-ovn sets"},{"line_number":336,"context_line":"    #    the fip in the external_ids column of the logical port as"},{"line_number":337,"context_line":"    #       - Logical_Switch_Port.external_ids:port_fip \u003d \u003cFIP\u003e"},{"line_number":338,"context_line":"    #    then, in the Load balancer table for the vip, create another vip entry"},{"line_number":339,"context_line":"    #    for the FIP."},{"line_number":340,"context_line":"    #"},{"line_number":341,"context_line":"    #    If a floating ip is disassociated from the vip, then delete the vip"},{"line_number":342,"context_line":"    #    entry for the FIP."},{"line_number":343,"context_line":"    def vip_port_update_handler(self, vip_lp):"},{"line_number":344,"context_line":"        port_name \u003d vip_lp.external_ids.get(ovn_const.OVN_PORT_NAME_EXT_ID_KEY)"},{"line_number":345,"context_line":"        lb_id \u003d port_name[len(ovn_const.LB_VIP_PORT_PREFIX):]"}],"source_content_type":"text/x-python","patch_set":11,"id":"9fb8cfa7_0e5db947","line":342,"range":{"start_line":334,"start_character":0,"end_line":342,"end_character":27},"updated":"2019-07-16 09:22:48.000000000","message":"nit: This should be the docstring for the method instead of a comment","commit_id":"902aff2f78b981784eeb030e9ee0d64f2eb2751f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"aae4b74930b79817cf4af6d09bc030e79e38e1cf","unresolved":false,"context_lines":[{"line_number":331,"context_line":"        if commands:"},{"line_number":332,"context_line":"            self._execute_commands(commands)"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    # Handler following VIP port updates."},{"line_number":335,"context_line":"    # 1. If a floating ip is associated to a vip port, then networking-ovn sets"},{"line_number":336,"context_line":"    #    the fip in the external_ids column of the logical port as"},{"line_number":337,"context_line":"    #       - Logical_Switch_Port.external_ids:port_fip \u003d \u003cFIP\u003e"},{"line_number":338,"context_line":"    #    then, in the Load balancer table for the vip, create another vip entry"},{"line_number":339,"context_line":"    #    for the FIP."},{"line_number":340,"context_line":"    #"},{"line_number":341,"context_line":"    #    If a floating ip is disassociated from the vip, then delete the vip"},{"line_number":342,"context_line":"    #    entry for the FIP."},{"line_number":343,"context_line":"    def vip_port_update_handler(self, vip_lp):"},{"line_number":344,"context_line":"        port_name \u003d vip_lp.external_ids.get(ovn_const.OVN_PORT_NAME_EXT_ID_KEY)"},{"line_number":345,"context_line":"        lb_id \u003d port_name[len(ovn_const.LB_VIP_PORT_PREFIX):]"}],"source_content_type":"text/x-python","patch_set":11,"id":"7faddb67_fc6abf7e","line":342,"range":{"start_line":334,"start_character":0,"end_line":342,"end_character":27},"in_reply_to":"9fb8cfa7_0e5db947","updated":"2019-07-16 12:10:20.000000000","message":"ACK I\u0027ll move it thanks!","commit_id":"902aff2f78b981784eeb030e9ee0d64f2eb2751f"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"78d06aa2201d267fdec7f08c51f048943536f52c","unresolved":false,"context_lines":[{"line_number":357,"context_line":"        if fip and fip !\u003d lb_vip_fip:"},{"line_number":358,"context_line":"            request_info[\u0027action\u0027] \u003d \u0027associate\u0027"},{"line_number":359,"context_line":"        elif fip is None and fip !\u003d lb_vip_fip:"},{"line_number":360,"context_line":"            request_info[\u0027action\u0027] \u003d \u0027disassociate\u0027"},{"line_number":361,"context_line":"        else:"},{"line_number":362,"context_line":"            return"},{"line_number":363,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"7faddb67_bcd3e75f","line":360,"updated":"2019-07-16 09:22:48.000000000","message":"super nit: This actions could become constants (to avoid someone mistyping it at some point)","commit_id":"d5d9b3c51ac0a2712234d9b311e25f541e734751"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"aae4b74930b79817cf4af6d09bc030e79e38e1cf","unresolved":false,"context_lines":[{"line_number":357,"context_line":"        if fip and fip !\u003d lb_vip_fip:"},{"line_number":358,"context_line":"            request_info[\u0027action\u0027] \u003d \u0027associate\u0027"},{"line_number":359,"context_line":"        elif fip is None and fip !\u003d lb_vip_fip:"},{"line_number":360,"context_line":"            request_info[\u0027action\u0027] \u003d \u0027disassociate\u0027"},{"line_number":361,"context_line":"        else:"},{"line_number":362,"context_line":"            return"},{"line_number":363,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"7faddb67_029090ec","line":360,"in_reply_to":"7faddb67_bcd3e75f","updated":"2019-07-16 12:10:20.000000000","message":"Done","commit_id":"d5d9b3c51ac0a2712234d9b311e25f541e734751"}],"networking_ovn/tests/functional/octavia/test_ovn_driver.py":[{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"8007b6e167dda3913a4557f99142a1e157c05454","unresolved":false,"context_lines":[{"line_number":29,"context_line":"from networking_ovn.common import constants as ovn_const"},{"line_number":30,"context_line":"from networking_ovn.octavia import ovn_driver"},{"line_number":31,"context_line":"from networking_ovn.tests.functional import base"},{"line_number":32,"context_line":"from networking_ovn.tests.functional import test_ovsdb_monitor as t_ovsdb_mon"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"LR_REF_KEY_HEADER \u003d \u0027neutron-\u0027"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_f5911b55","line":32,"updated":"2019-07-03 08:49:18.000000000","message":"not needed, I\u0027ll drop it.","commit_id":"8ac17c6594a49318d1346bfb19c449aa5a24652f"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"f31861540069b281bd02040463f93263a91e3392","unresolved":false,"context_lines":[{"line_number":1127,"context_line":"                    lb_data[\u0027model\u0027].loadbalancer_id,"},{"line_number":1128,"context_line":"                    [lb.name for lb in ls.load_balancer])"},{"line_number":1129,"context_line":"            elif ls.name \u003d\u003d provider_net:"},{"line_number":1130,"context_line":"                # Make sure that LB1 is not added to provider net - e1 LSP"},{"line_number":1131,"context_line":"                self.assertListEqual([], ls.load_balancer)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_f5ccbb8b","line":1130,"range":{"start_line":1130,"start_character":71,"end_line":1130,"end_character":74},"updated":"2019-07-03 08:45:36.000000000","message":"s/LSP/LS/","commit_id":"8ac17c6594a49318d1346bfb19c449aa5a24652f"}]}
