)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"0bc4d9934c3d03c1d21ac92690d8ef62c008026d","unresolved":false,"context_lines":[{"line_number":23,"context_line":"* nova volume-attach"},{"line_number":24,"context_line":"* nova interface-list"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Note that the \"nova interface-attach\" command does not"},{"line_number":27,"context_line":"produce output so there is nothing to update for that here"},{"line_number":28,"context_line":"but a unit test is added anyway to assert that behavior."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Depends-On: https://review.openstack.org/631948/"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9fdfeff1_b3c0f72c","line":27,"range":{"start_line":26,"start_character":10,"end_line":27,"end_character":14},"updated":"2019-02-27 00:56:10.000000000","message":"It is not correct currently because the following patch has been merged.\n\nhttps://review.openstack.org/#/c/637677/","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a6bb2a2a38c06fe463c7796e89f351b432aaf6ee","unresolved":false,"context_lines":[{"line_number":23,"context_line":"* nova volume-attach"},{"line_number":24,"context_line":"* nova interface-list"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Note that the \"nova interface-attach\" command does not"},{"line_number":27,"context_line":"produce output so there is nothing to update for that here"},{"line_number":28,"context_line":"but a unit test is added anyway to assert that behavior."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Depends-On: https://review.openstack.org/631948/"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9fdfeff1_a0d2c3fb","line":27,"range":{"start_line":26,"start_character":10,"end_line":27,"end_character":14},"in_reply_to":"9fdfeff1_b3c0f72c","updated":"2019-02-27 21:35:48.000000000","message":"True, I forgot about this after rebasing. Will remove.","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"}],"novaclient/tests/unit/v2/test_shell.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"0bc4d9934c3d03c1d21ac92690d8ef62c008026d","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_f3caff4c","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"updated":"2019-02-27 00:56:10.000000000","message":"test-tag","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"70d495b6328af67c70c117a39bc97e9ba5006062","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_4063d742","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"in_reply_to":"9fdfeff1_000b8f7c","updated":"2019-02-27 21:40:54.000000000","message":"A-ha, I see. I missed that.","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fddc1ed1f531dd8a057643dabfad5cdc7ac23703","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_000b8f7c","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"in_reply_to":"9fdfeff1_80453fb6","updated":"2019-02-27 21:39:07.000000000","message":"\u003e I think Takashi might be referring to the output that the fake will\n \u003e return:\n \u003e \n \u003e https://review.openstack.org/#/c/636779/5/novaclient/tests/unit/v2/fakes.py@2033\n\nThat\u0027s only if 2.70 is used with the command, which this test doesn\u0027t, it\u0027s using 2.49.","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"bd754e011ee2e5e3022823650c5a0a33fa979229","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_80453fb6","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"in_reply_to":"9fdfeff1_80d77fee","updated":"2019-02-27 21:37:57.000000000","message":"I think Takashi might be referring to the output that the fake will return:\n\nhttps://review.openstack.org/#/c/636779/5/novaclient/tests/unit/v2/fakes.py@2033","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a6bb2a2a38c06fe463c7796e89f351b432aaf6ee","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":5,"id":"9fdfeff1_80d77fee","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"in_reply_to":"9fdfeff1_f3caff4c","updated":"2019-02-27 21:35:48.000000000","message":"No, this is correct, the command is using \"test_tag\".","commit_id":"157e51167d8edca52dec4da014fc22352b1e8bbb"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"8141d8e789df591ea61b110e509490bbff679655","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":6,"id":"9fdfeff1_ec63dd18","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"updated":"2019-02-28 07:37:42.000000000","message":"IMO, \u0027test-tag\u0027 is better because the response is defined in novaclient/tests/unit/v2/fakes.py and the tag is \u0027test-tag\u0027 in the file.\nIt had better that a string for check is as same as that in line 3557.","commit_id":"8b96c69360e1450003796e8fa2b6a29fdae9ca1c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"12d98812c5ceb0a105065c7de36b7397feb06069","unresolved":false,"context_lines":[{"line_number":3545,"context_line":"        self.assert_called(\u0027POST\u0027, \u0027/servers/1234/os-interface\u0027,"},{"line_number":3546,"context_line":"                           {\u0027interfaceAttachment\u0027: {\u0027port_id\u0027: \u0027port_id\u0027,"},{"line_number":3547,"context_line":"                                                    \u0027tag\u0027: \u0027test_tag\u0027}})"},{"line_number":3548,"context_line":"        self.assertNotIn(\u0027test_tag\u0027, out)"},{"line_number":3549,"context_line":""},{"line_number":3550,"context_line":"    def test_interface_attach_v2_70(self):"},{"line_number":3551,"context_line":"        out \u003d self.run_command("}],"source_content_type":"text/x-python","patch_set":6,"id":"9fdfeff1_f9bb8b0b","line":3548,"range":{"start_line":3548,"start_character":26,"end_line":3548,"end_character":34},"in_reply_to":"9fdfeff1_ec63dd18","updated":"2019-02-28 17:07:32.000000000","message":"Seems extremely nit picky to me, especially when we\u0027re trying to get this landed before the feature freeze, but OK, done.","commit_id":"8b96c69360e1450003796e8fa2b6a29fdae9ca1c"}],"novaclient/v2/shell.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"e11ba25a42cf79ce1756c3b2f5e023dea29ef896","unresolved":false,"context_lines":[{"line_number":4540,"context_line":""},{"line_number":4541,"context_line":"    res \u003d server.interface_attach(args.port_id, args.net_id, args.fixed_ip,"},{"line_number":4542,"context_line":"                                  **update_kwargs)"},{"line_number":4543,"context_line":"    # This will never actually print anything because res is a Server object."},{"line_number":4544,"context_line":"    if isinstance(res, dict):"},{"line_number":4545,"context_line":"        utils.print_dict(res)"},{"line_number":4546,"context_line":""},{"line_number":4547,"context_line":""},{"line_number":4548,"context_line":"@utils.arg(\u0027server\u0027, metavar\u003d\u0027\u003cserver\u003e\u0027, help\u003d_(\u0027Name or ID of server.\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fdfeff1_9d6a79ea","line":4545,"range":{"start_line":4543,"start_character":0,"end_line":4545,"end_character":29},"updated":"2019-02-15 07:23:58.000000000","message":"Should it be removed?","commit_id":"8a5d3257d95c3a9d9ed0c309c2109d26244bac3b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"aa3e5adc551378dac2369f4bf3bd4d50ff3c82c7","unresolved":false,"context_lines":[{"line_number":4540,"context_line":""},{"line_number":4541,"context_line":"    res \u003d server.interface_attach(args.port_id, args.net_id, args.fixed_ip,"},{"line_number":4542,"context_line":"                                  **update_kwargs)"},{"line_number":4543,"context_line":"    # This will never actually print anything because res is a Server object."},{"line_number":4544,"context_line":"    if isinstance(res, dict):"},{"line_number":4545,"context_line":"        utils.print_dict(res)"},{"line_number":4546,"context_line":""},{"line_number":4547,"context_line":""},{"line_number":4548,"context_line":"@utils.arg(\u0027server\u0027, metavar\u003d\u0027\u003cserver\u003e\u0027, help\u003d_(\u0027Name or ID of server.\u0027))"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fdfeff1_17941d36","line":4545,"range":{"start_line":4543,"start_character":0,"end_line":4545,"end_character":29},"in_reply_to":"9fdfeff1_9d6a79ea","updated":"2019-02-15 16:24:02.000000000","message":"That could be done in a follow up if it\u0027s OK with you.","commit_id":"8a5d3257d95c3a9d9ed0c309c2109d26244bac3b"}]}
