)]}'
{"ironic_python_agent/hardware.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5eefc9d2fdf6e73342579c9e47ab0af9e80d1db3","unresolved":false,"context_lines":[{"line_number":42,"context_line":"UNIT_CONVERTER.define(\u0027GB \u003d 1024 MB\u0027)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"_DISK_WAIT_ATTEMPTS \u003d CONF.disk_wait_attempts"},{"line_number":45,"context_line":"_DISK_WAIT_DELAY \u003d CONF.disk_wait_delay"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"NODE \u003d None"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_576e0dca","line":45,"updated":"2016-06-06 05:38:01.000000000","message":"You don\u0027t need these constants any more, just use configuration options directly where you need them.","commit_id":"41230adc37a1cbda5420916b4f3dd57d24f66706"}],"ironic_python_agent/tests/unit/test_agent.py":[{"author":{"_account_id":21522,"name":"Yosef Hoffman","email":"yh128t@att.com","username":"yohoffman"},"change_message_id":"6777bbcf47585f21a300a04a9f53f63472117aed","unresolved":false,"context_lines":[{"line_number":410,"context_line":""},{"line_number":411,"context_line":"        self.assertEqual((\u00271.2.3.4\u0027, 9990), self.agent.advertise_address)"},{"line_number":412,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":413,"context_line":"        #self.assertFalse(mock_exec.called)"},{"line_number":414,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    @mock.patch.object(hardware.GenericHardwareManager, \u0027get_ipv4_addr\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_2916084c","line":413,"updated":"2016-06-07 22:18:05.000000000","message":"This line fails","commit_id":"d3f5fc5fce1180b77fbe3a6d71f7c47aaad490de"},{"author":{"_account_id":21522,"name":"Yosef Hoffman","email":"yh128t@att.com","username":"yohoffman"},"change_message_id":"6777bbcf47585f21a300a04a9f53f63472117aed","unresolved":false,"context_lines":[{"line_number":424,"context_line":"                          self.agent.set_agent_advertise_addr)"},{"line_number":425,"context_line":""},{"line_number":426,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":427,"context_line":"        #self.assertFalse(mock_exec.called)"},{"line_number":428,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":429,"context_line":""},{"line_number":430,"context_line":"    def test_route_with_ip(self, mock_exec, mock_gethostbyname):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7aa08908_09134c5c","line":427,"updated":"2016-06-07 22:18:05.000000000","message":"This line also fails","commit_id":"d3f5fc5fce1180b77fbe3a6d71f7c47aaad490de"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"e301bab75c65f50af466124744ef2edb556f1c98","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        self.assertFalse(self.agent.api_client.lookup_node.called)"},{"line_number":373,"context_line":""},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"@mock.patch.object(socket, \u0027gethostbyname\u0027, autospec\u003dTrue)"},{"line_number":376,"context_line":"@mock.patch.object(utils, \u0027execute\u0027, autospec\u003dTrue)"},{"line_number":377,"context_line":"class TestAdvertiseAddress(test_base.BaseTestCase):"},{"line_number":378,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_efc31536","line":375,"updated":"2016-06-08 21:20:03.000000000","message":"You can\u0027t remove the mock for wait for disks, otherwise IPA will touch local disks during tests runs which is scary :).","commit_id":"e0f887003292acd1256576b2a0697ba00115af24"},{"author":{"_account_id":21522,"name":"Yosef Hoffman","email":"yh128t@att.com","username":"yohoffman"},"change_message_id":"1efb014fe45538f59a7f69130d08520651c18211","unresolved":false,"context_lines":[{"line_number":372,"context_line":"        self.assertFalse(self.agent.api_client.lookup_node.called)"},{"line_number":373,"context_line":""},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"@mock.patch.object(socket, \u0027gethostbyname\u0027, autospec\u003dTrue)"},{"line_number":376,"context_line":"@mock.patch.object(utils, \u0027execute\u0027, autospec\u003dTrue)"},{"line_number":377,"context_line":"class TestAdvertiseAddress(test_base.BaseTestCase):"},{"line_number":378,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_0eaf607e","line":375,"in_reply_to":"7aa08908_efc31536","updated":"2016-06-09 13:07:15.000000000","message":"Woops, not sure what I was thinking there!","commit_id":"e0f887003292acd1256576b2a0697ba00115af24"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"e301bab75c65f50af466124744ef2edb556f1c98","unresolved":false,"context_lines":[{"line_number":410,"context_line":""},{"line_number":411,"context_line":"        self.assertEqual((\u00271.2.3.4\u0027, 9990), self.agent.advertise_address)"},{"line_number":412,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":413,"context_line":"        # self.assertFalse(mock_exec.called)"},{"line_number":414,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    @mock.patch.object(hardware.GenericHardwareManager, \u0027get_ipv4_addr\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_0f0ae189","line":413,"updated":"2016-06-08 21:20:03.000000000","message":"Assuming this PR is WIP, but we generally don\u0027t merge commented out code.","commit_id":"e0f887003292acd1256576b2a0697ba00115af24"},{"author":{"_account_id":21522,"name":"Yosef Hoffman","email":"yh128t@att.com","username":"yohoffman"},"change_message_id":"1efb014fe45538f59a7f69130d08520651c18211","unresolved":false,"context_lines":[{"line_number":410,"context_line":""},{"line_number":411,"context_line":"        self.assertEqual((\u00271.2.3.4\u0027, 9990), self.agent.advertise_address)"},{"line_number":412,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":413,"context_line":"        # self.assertFalse(mock_exec.called)"},{"line_number":414,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    @mock.patch.object(hardware.GenericHardwareManager, \u0027get_ipv4_addr\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_4ea2089c","line":413,"in_reply_to":"7aa08908_0f0ae189","updated":"2016-06-09 13:07:15.000000000","message":"Right, I just wanted to confirm that it makes sense for this line to be removed. But I guess that could be done without the comment.","commit_id":"e0f887003292acd1256576b2a0697ba00115af24"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"44ac5ac997a3d76199446bce35871de3eb0ee117","unresolved":false,"context_lines":[{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        self.assertEqual((\u00271.2.3.4\u0027, 9990), self.agent.advertise_address)"},{"line_number":415,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":416,"context_line":"        self.assertFalse(mock_exec.called)"},{"line_number":417,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"    @mock.patch.object(hardware.GenericHardwareManager, \u0027get_ipv4_addr\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_87f635f7","side":"PARENT","line":416,"updated":"2016-06-10 22:46:51.000000000","message":"Why was this removed? Seems unrelated to the rest of the change. Not -1ing though since I\u0027m not sure what this was here for originally.","commit_id":"90ba6452efe5249d2b2ed0612ef5dd9d73c70ba7"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"44ac5ac997a3d76199446bce35871de3eb0ee117","unresolved":false,"context_lines":[{"line_number":427,"context_line":"                          self.agent.set_agent_advertise_addr)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":430,"context_line":"        self.assertFalse(mock_exec.called)"},{"line_number":431,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":432,"context_line":""},{"line_number":433,"context_line":"    def test_route_with_ip(self, mock_exec, mock_gethostbyname):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_c7d83d82","side":"PARENT","line":430,"updated":"2016-06-10 22:46:51.000000000","message":"Ditto here","commit_id":"90ba6452efe5249d2b2ed0612ef5dd9d73c70ba7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"28e135076ff13b2a21f365329d19f9572229d463","unresolved":false,"context_lines":[{"line_number":416,"context_line":""},{"line_number":417,"context_line":"        self.assertEqual((\u00271.2.3.4\u0027, 9990), self.agent.advertise_address)"},{"line_number":418,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":419,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":420,"context_line":""},{"line_number":421,"context_line":"    @mock.patch.object(hardware.GenericHardwareManager, \u0027get_ipv4_addr\u0027,"},{"line_number":422,"context_line":"                       autospec\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_da8ee177","line":419,"updated":"2016-06-14 15:44:39.000000000","message":"Mario had a question as to why self.assertFalse(mock_exec.called) was removed. I think you should put it back.","commit_id":"8364e3927574d6fe2125f5bfa469b8ea1be963dd"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"28e135076ff13b2a21f365329d19f9572229d463","unresolved":false,"context_lines":[{"line_number":429,"context_line":"                          self.agent.set_agent_advertise_addr)"},{"line_number":430,"context_line":""},{"line_number":431,"context_line":"        mock_get_ipv4.assert_called_once_with(mock.ANY, \u0027em1\u0027)"},{"line_number":432,"context_line":"        self.assertFalse(mock_gethostbyname.called)"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"    def test_route_with_ip(self, mock_exec, mock_gethostbyname):"},{"line_number":435,"context_line":"        self.agent.api_url \u003d \u0027http://1.2.1.2:8081/v1\u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_ba895571","line":432,"updated":"2016-06-14 15:44:39.000000000","message":"ditto","commit_id":"8364e3927574d6fe2125f5bfa469b8ea1be963dd"},{"author":{"_account_id":13295,"name":"Mario Villaplana","email":"mario.villaplana@gmail.com","username":"mariojv"},"change_message_id":"42240e0b16f61eeb6a4f3ed8d8f126de074a1393","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CONF \u003d cfg.CONF"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"CONF.import_opt(\u0027disk_wait_attempts\u0027, \u0027ironic_python_agent.config\u0027)"},{"line_number":40,"context_line":"CONF.import_opt(\u0027disk_wait_delay\u0027, \u0027ironic_python_agent.config\u0027)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"5a9d85d2_39d99d22","line":39,"updated":"2016-06-20 20:01:21.000000000","message":"Is this necessary?\n\nThe new option isn\u0027t being overridden anywhere in this file and it looks like _wait_for_disks is either being mocked independently or as part of the entire HardwareManager anyway, so I don\u0027t think adding this has any use.","commit_id":"8743eb611ed32aecee9ada30c66e38d7c83ffe9a"},{"author":{"_account_id":21522,"name":"Yosef Hoffman","email":"yh128t@att.com","username":"yohoffman"},"change_message_id":"cf1b1e9383c14cf61846e8e664577076b34a5797","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CONF \u003d cfg.CONF"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"CONF.import_opt(\u0027disk_wait_attempts\u0027, \u0027ironic_python_agent.config\u0027)"},{"line_number":40,"context_line":"CONF.import_opt(\u0027disk_wait_delay\u0027, \u0027ironic_python_agent.config\u0027)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"5a9d85d2_9ccfdaaf","line":39,"in_reply_to":"5a9d85d2_39d99d22","updated":"2016-06-20 22:44:20.000000000","message":"I think this was also to fix an error that occurred on my local machine during testing, but you may very well be right. I will remove it and upload a new patch, and I guess we\u0027ll see.","commit_id":"8743eb611ed32aecee9ada30c66e38d7c83ffe9a"}]}
