)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"3eb12bd0b081489aefcbee9d3dd21a8281bfd262","unresolved":true,"context_lines":[{"line_number":12,"context_line":"  provided is not executed."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"This patch relays on [1], that will sanitize any input coming from"},{"line_number":15,"context_line":"the server API."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This patch adds a new script to sanitize all \"port.mac_address\""},{"line_number":18,"context_line":"registers stored in the dabatabase."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"4926b017_dbcc4621","line":15,"updated":"2021-05-07 06:55:40.000000000","message":"So can we merge it now or should we wait for new neutron-lib release which will include [1]?","commit_id":"19773d1ea29b18e0f6ce2c44187800d3ad9858e8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"44d1fc4fdf805e5bf3c63ea24809b7be0414a9ba","unresolved":true,"context_lines":[{"line_number":12,"context_line":"  provided is not executed."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"This patch relays on [1], that will sanitize any input coming from"},{"line_number":15,"context_line":"the server API."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"This patch adds a new script to sanitize all \"port.mac_address\""},{"line_number":18,"context_line":"registers stored in the dabatabase."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3ecfcdfc_6697bc51","line":15,"in_reply_to":"4926b017_dbcc4621","updated":"2021-05-07 07:20:31.000000000","message":"We can merge it now.\n\nThe n-lib patch if to sanitize the user input. That means, for example, if we merge this patch (without the n-lib one), the user will need to introduce manually a sanitized MAC address.\n\nFor example, this command won\u0027t return anything:\n  openstack port list --mac-address 1:2:3:4:5:6\n\nbut this one will:\n  openstack port list --mac-address 01:02:03:04:05:06\n\ndespite being the same MAC address.\n\n\nIf we need to set an order, this must be the first patch to be merged and then the n-lib one (bump the n-lib version). The optimal way is to do both, that\u0027s why I\u0027ll bump the n-lib version in this patch, waiting for a new n-lib release.","commit_id":"19773d1ea29b18e0f6ce2c44187800d3ad9858e8"}],"neutron/cmd/sanitize_port_mac_addresses.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ad2726c63fb831e7941f5ff106f37864e9edca7d","unresolved":true,"context_lines":[{"line_number":37,"context_line":"    database. The output format will be xx:xx:xx:xx:xx:xx."},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    conf \u003d setup_conf()"},{"line_number":40,"context_line":"    conf()"},{"line_number":41,"context_line":"    admin_ctx \u003d context.get_admin_context()"},{"line_number":42,"context_line":"    with db_api.CONTEXT_WRITER.using(admin_ctx):"},{"line_number":43,"context_line":"        all_ports \u003d admin_ctx.session.query(models_v2.Port.id,"}],"source_content_type":"text/x-python","patch_set":6,"id":"e83dbde4_d6bb0276","line":40,"updated":"2021-06-22 20:45:56.000000000","message":"nit: can you just call setup_conf() instead of these two steps?","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"726675ee2b4b57c43d5a926fb0a7fdcfc62582b1","unresolved":false,"context_lines":[{"line_number":37,"context_line":"    database. The output format will be xx:xx:xx:xx:xx:xx."},{"line_number":38,"context_line":"    \"\"\""},{"line_number":39,"context_line":"    conf \u003d setup_conf()"},{"line_number":40,"context_line":"    conf()"},{"line_number":41,"context_line":"    admin_ctx \u003d context.get_admin_context()"},{"line_number":42,"context_line":"    with db_api.CONTEXT_WRITER.using(admin_ctx):"},{"line_number":43,"context_line":"        all_ports \u003d admin_ctx.session.query(models_v2.Port.id,"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f8c18b9_d702f474","line":40,"in_reply_to":"e83dbde4_d6bb0276","updated":"2021-06-23 07:38:09.000000000","message":"I\u0027m replicating what is done in ipset_cleanup, netns_cleanup and ovs_cleanup","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"}],"neutron/cmd/upgrade_checks/checks.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"dec5e8af5938dc8dbe3c37107191e47b580e56b2","unresolved":true,"context_lines":[{"line_number":310,"context_line":"            if mac !\u003d converters.convert_to_sanitized_mac_address(mac):"},{"line_number":311,"context_line":"                return upgradecheck.Result("},{"line_number":312,"context_line":"                    upgradecheck.Code.WARNING,"},{"line_number":313,"context_line":"                    _(\"There port MAC addresses not correctly formated in the\""},{"line_number":314,"context_line":"                      \"database. The script \""},{"line_number":315,"context_line":"                      \"neutron-sanitize-port-mac-addresses should be \""},{"line_number":316,"context_line":"                      \"executed\"))"}],"source_content_type":"text/x-python","patch_set":10,"id":"67bcbf69_0f258b4d","line":313,"range":{"start_line":313,"start_character":23,"end_line":313,"end_character":28},"updated":"2021-07-27 14:55:25.000000000","message":"nit: Some port MAC...","commit_id":"827cca2ed75b159c3a1a2e5f193150fe32491b1b"}],"neutron/common/utils.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"8a645506b74aba6eb0bc3890ab309cee56d71553","unresolved":true,"context_lines":[{"line_number":984,"context_line":"        return sql_func.rand"},{"line_number":985,"context_line":""},{"line_number":986,"context_line":""},{"line_number":987,"context_line":"def sanitize_mac_address(mac_address):"},{"line_number":988,"context_line":"    \"\"\"Return a MAC address with format xx:xx:xx:xx:xx:xx"},{"line_number":989,"context_line":"    :param mac_address: The MAC address value"},{"line_number":990,"context_line":"    :return: A string with the MAC address formatted. If the MAC address"}],"source_content_type":"text/x-python","patch_set":8,"id":"52938334_78dd5552","line":987,"updated":"2021-07-01 06:59:37.000000000","message":"we are already using neutron-lib 2.12 so I think You can already use function from neutron-lib in this patch","commit_id":"45c99600c2a32bb8211e50263cfd82ea62af1bc9"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"9db2c50df8a228455c91ebb145dea5627c26209d","unresolved":true,"context_lines":[{"line_number":984,"context_line":"        return sql_func.rand"},{"line_number":985,"context_line":""},{"line_number":986,"context_line":""},{"line_number":987,"context_line":"def sanitize_mac_address(mac_address):"},{"line_number":988,"context_line":"    \"\"\"Return a MAC address with format xx:xx:xx:xx:xx:xx"},{"line_number":989,"context_line":"    :param mac_address: The MAC address value"},{"line_number":990,"context_line":"    :return: A string with the MAC address formatted. If the MAC address"}],"source_content_type":"text/x-python","patch_set":8,"id":"ea6e37db_c8625da0","line":987,"in_reply_to":"52938334_78dd5552","updated":"2021-07-01 09:22:07.000000000","message":"I don\u0027t think we have never called a method from n-lib.api.converters but is not forbidden. I\u0027ll push a new PS.","commit_id":"45c99600c2a32bb8211e50263cfd82ea62af1bc9"}],"neutron/db/db_base_plugin_v2.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"d347f8e24629dd41d0d13433ce0a2918f2df32a8","unresolved":true,"context_lines":[{"line_number":1457,"context_line":"                db_port[\u0027tenant_id\u0027])"},{"line_number":1458,"context_line":""},{"line_number":1459,"context_line":"        if (new_mac and"},{"line_number":1460,"context_line":"                new_mac !\u003d utils.sanitize_mac_address(db_port[\u0027mac_address\u0027])):"},{"line_number":1461,"context_line":"            self._check_mac_addr_update(context, db_port,"},{"line_number":1462,"context_line":"                                        new_mac, current_owner)"},{"line_number":1463,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3c4e1030_03df14f1","line":1460,"updated":"2021-05-05 18:50:28.000000000","message":"I guess at this point new_mac will have been sanitized?","commit_id":"301270c2d2226949fbdec6498dcdac014faad7f9"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"e13a071e2e0d8a48820381af567933b185ab2d5d","unresolved":true,"context_lines":[{"line_number":1457,"context_line":"                db_port[\u0027tenant_id\u0027])"},{"line_number":1458,"context_line":""},{"line_number":1459,"context_line":"        if (new_mac and"},{"line_number":1460,"context_line":"                new_mac !\u003d utils.sanitize_mac_address(db_port[\u0027mac_address\u0027])):"},{"line_number":1461,"context_line":"            self._check_mac_addr_update(context, db_port,"},{"line_number":1462,"context_line":"                                        new_mac, current_owner)"},{"line_number":1463,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2dfe6b48_fea607d9","line":1460,"in_reply_to":"3c4e1030_03df14f1","updated":"2021-05-06 07:31:37.000000000","message":"\"new_mac\" comes from the user input. It is the responsibility of the user to pass a correct value. However if [1] is merged, this value will be sanitized\n\n[1]https://review.opendev.org/c/openstack/neutron-lib/+/788300","commit_id":"301270c2d2226949fbdec6498dcdac014faad7f9"}],"neutron/db/l3_dvr_db.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ad2726c63fb831e7941f5ff106f37864e9edca7d","unresolved":true,"context_lines":[{"line_number":396,"context_line":"        except n_exc.ObjectNotFound:"},{"line_number":397,"context_line":"            pass"},{"line_number":398,"context_line":""},{"line_number":399,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":400,"context_line":"    def delete_floatingip_agent_gateway_port(self, context, host_id,"},{"line_number":401,"context_line":"                                             ext_net_id):"},{"line_number":402,"context_line":"        \"\"\"Function to delete FIP gateway port with given ext_net_id.\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"d0d8af66_43badce4","line":399,"updated":"2021-06-22 20:45:56.000000000","message":"Seems unrelated","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"726675ee2b4b57c43d5a926fb0a7fdcfc62582b1","unresolved":true,"context_lines":[{"line_number":396,"context_line":"        except n_exc.ObjectNotFound:"},{"line_number":397,"context_line":"            pass"},{"line_number":398,"context_line":""},{"line_number":399,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":400,"context_line":"    def delete_floatingip_agent_gateway_port(self, context, host_id,"},{"line_number":401,"context_line":"                                             ext_net_id):"},{"line_number":402,"context_line":"        \"\"\"Function to delete FIP gateway port with given ext_net_id.\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"abe98196_2eba5a72","line":399,"in_reply_to":"d0d8af66_43badce4","updated":"2021-06-23 07:38:09.000000000","message":"It wasn\u0027t, that was needed because the n-lib bump. Now is in the base code so I\u0027ll rebase this patch.","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"}],"releasenotes/notes/sanitize-port-mac-address-732f451942483e21.yaml":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ad2726c63fb831e7941f5ff106f37864e9edca7d","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``port.mac_address`` field is sanitized to have a common format"},{"line_number":5,"context_line":"    \"xx:xx:xx:xx:xx:xx\". The values stored in the database can be sanitized"},{"line_number":6,"context_line":"    executing the new script provided ``neutron-sanitize-port-mac-address``."},{"line_number":7,"context_line":"    This script will read all ``port`` registers and fix, if needed, the"},{"line_number":8,"context_line":"    stored MAC address format."},{"line_number":9,"context_line":"    The ``port`` API is also modified to sanitize the user input. This change"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"667a1bdb_165b6cd9","line":6,"range":{"start_line":6,"start_character":66,"end_line":6,"end_character":73},"updated":"2021-06-22 20:45:56.000000000","message":"s/addresses","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"726675ee2b4b57c43d5a926fb0a7fdcfc62582b1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The ``port.mac_address`` field is sanitized to have a common format"},{"line_number":5,"context_line":"    \"xx:xx:xx:xx:xx:xx\". The values stored in the database can be sanitized"},{"line_number":6,"context_line":"    executing the new script provided ``neutron-sanitize-port-mac-address``."},{"line_number":7,"context_line":"    This script will read all ``port`` registers and fix, if needed, the"},{"line_number":8,"context_line":"    stored MAC address format."},{"line_number":9,"context_line":"    The ``port`` API is also modified to sanitize the user input. This change"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"e9339cda_8f294854","line":6,"range":{"start_line":6,"start_character":66,"end_line":6,"end_character":73},"in_reply_to":"667a1bdb_165b6cd9","updated":"2021-06-23 07:38:09.000000000","message":"Done","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"}],"setup.cfg":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"d347f8e24629dd41d0d13433ce0a2918f2df32a8","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.ovn.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"1491b09a_8d2b9eca","line":64,"range":{"start_line":64,"start_character":52,"end_line":64,"end_character":55},"updated":"2021-05-05 18:50:28.000000000","message":"There isn\u0027t an ovn in the path name","commit_id":"301270c2d2226949fbdec6498dcdac014faad7f9"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"e13a071e2e0d8a48820381af567933b185ab2d5d","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.ovn.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":1,"id":"a206d933_485952ca","line":64,"range":{"start_line":64,"start_character":52,"end_line":64,"end_character":55},"in_reply_to":"1491b09a_8d2b9eca","updated":"2021-05-06 07:31:37.000000000","message":"Thanks!","commit_id":"301270c2d2226949fbdec6498dcdac014faad7f9"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"3eb12bd0b081489aefcbee9d3dd21a8281bfd262","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"1f439ab6_9941549b","line":64,"updated":"2021-05-07 06:55:40.000000000","message":"should we have some release note and/or some docs about that new cli tool? Like when and how it should be used, etc.","commit_id":"19773d1ea29b18e0f6ce2c44187800d3ad9858e8"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"44d1fc4fdf805e5bf3c63ea24809b7be0414a9ba","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"60e860db_ab248a09","line":64,"in_reply_to":"1f439ab6_9941549b","updated":"2021-05-07 07:20:31.000000000","message":"I don\u0027t know why I didn\u0027t make a reno. This is mandatory for a change like this one. I\u0027ll push it in the next PS.","commit_id":"19773d1ea29b18e0f6ce2c44187800d3ad9858e8"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ad2726c63fb831e7941f5ff106f37864e9edca7d","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":6,"id":"7f20536f_64090963","line":64,"range":{"start_line":64,"start_character":30,"end_line":64,"end_character":37},"updated":"2021-06-22 20:45:56.000000000","message":"s/addresses - at least that\u0027s the name of the file and plural looks more correct","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"ad2726c63fb831e7941f5ff106f37864e9edca7d","unresolved":true,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":6,"id":"bac33724_37b4fe3d","line":64,"range":{"start_line":64,"start_character":70,"end_line":64,"end_character":77},"updated":"2021-06-22 20:45:56.000000000","message":"same","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"726675ee2b4b57c43d5a926fb0a7fdcfc62582b1","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":6,"id":"1c92c7f9_bdd7494b","line":64,"range":{"start_line":64,"start_character":30,"end_line":64,"end_character":37},"in_reply_to":"7f20536f_64090963","updated":"2021-06-23 07:38:09.000000000","message":"Done","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"726675ee2b4b57c43d5a926fb0a7fdcfc62582b1","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    neutron-ovn-metadata-agent \u003d neutron.cmd.eventlet.agents.ovn_metadata:main"},{"line_number":62,"context_line":"    neutron-ovn-migration-mtu \u003d neutron.cmd.ovn.migration_mtu:main"},{"line_number":63,"context_line":"    neutron-ovn-db-sync-util \u003d neutron.cmd.ovn.neutron_ovn_db_sync_util:main"},{"line_number":64,"context_line":"    neutron-sanitize-port-mac-address \u003d neutron.cmd.sanitize_port_mac_address:main"},{"line_number":65,"context_line":"neutron.core_plugins \u003d"},{"line_number":66,"context_line":"    ml2 \u003d neutron.plugins.ml2.plugin:Ml2Plugin"},{"line_number":67,"context_line":"neutron.service_plugins \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":6,"id":"9ab5c1e4_9da69534","line":64,"range":{"start_line":64,"start_character":70,"end_line":64,"end_character":77},"in_reply_to":"bac33724_37b4fe3d","updated":"2021-06-23 07:38:09.000000000","message":"Done","commit_id":"bdc59ae6f1040a3246ce5ba3de6b54b98d62bb29"}]}
