)]}'
{"ironic_inspector/test/inspector_tempest_plugin/tests/test_basic.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"503f26671c1ee0c6eb0d4156ebdbf342a2370787","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        self.assertEqual(expected_cpu_arch,"},{"line_number":47,"context_line":"                         node[\u0027properties\u0027][\u0027cpu_arch\u0027])"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def verify_node_introspection_abort_data(self, uuid):"},{"line_number":50,"context_line":"        status \u003d self.introspection_status(uuid)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        self.assertEqual(\u0027Canceled by operator\u0027, status[\u0027error\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba5da102_d9933dff","line":49,"updated":"2016-11-04 15:38:03.000000000","message":"the naming is a bit strange. I\u0027d call it verify_introspection_aborted.","commit_id":"01054a829f7757610d982475e7f225ce947eea7a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"503f26671c1ee0c6eb0d4156ebdbf342a2370787","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        status \u003d self.introspection_status(uuid)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        self.assertEqual(\u0027Canceled by operator\u0027, status[\u0027error\u0027])"},{"line_number":53,"context_line":"        self.assertEqual(\u0027True\u0027, status[\u0027finished\u0027])"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    def verify_node_power_state(self, uuid):"},{"line_number":56,"context_line":"        node \u003d self.node_show(uuid)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba5da102_f998011e","line":53,"updated":"2016-11-04 15:38:03.000000000","message":"I think it should be boolean True, not string \u0027True\u0027","commit_id":"01054a829f7757610d982475e7f225ce947eea7a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39a365d86ca34ea7db1ef4844c73da586e293afb","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        status \u003d self.introspection_status(uuid)"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        self.assertEqual(\u0027Canceled by operator\u0027, status[\u0027error\u0027])"},{"line_number":55,"context_line":"        self.assertEqual(True, status[\u0027finished\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    def verify_node_power_state(self, uuid):"},{"line_number":58,"context_line":"        node \u003d self.node_show(uuid)"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a629dbe_5d2f2ba1","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":50},"updated":"2016-11-07 09:53:44.000000000","message":"nit:\n\n self.assertTrue(status[\u0027finished\u0027])","commit_id":"fd5e1c8e3011090e151447ac45ca89e9fd47e442"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39a365d86ca34ea7db1ef4844c73da586e293afb","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        # verify nodes status and power state"},{"line_number":145,"context_line":"        for node_id in self.node_ids:"},{"line_number":146,"context_line":"            self.verify_introspection_aborted(node_id)"},{"line_number":147,"context_line":"            self.verify_node_power_state(node_id)"},{"line_number":148,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9a629dbe_a0fe6003","line":147,"range":{"start_line":147,"start_character":0,"end_line":147,"end_character":49},"updated":"2016-11-07 09:53:44.000000000","message":"this looks redundant, as you use wait_power_state above","commit_id":"fd5e1c8e3011090e151447ac45ca89e9fd47e442"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39a365d86ca34ea7db1ef4844c73da586e293afb","unresolved":false,"context_lines":[{"line_number":145,"context_line":"        for node_id in self.node_ids:"},{"line_number":146,"context_line":"            self.verify_introspection_aborted(node_id)"},{"line_number":147,"context_line":"            self.verify_node_power_state(node_id)"},{"line_number":148,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"class InspectorSmokeTest(manager.InspectorScenarioTest):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a629dbe_604b685a","line":148,"range":{"start_line":148,"start_character":12,"end_line":148,"end_character":55},"updated":"2016-11-07 09:53:44.000000000","message":"this should go to after line 129, as it\u0027s where you touch the node for the first time.","commit_id":"fd5e1c8e3011090e151447ac45ca89e9fd47e442"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"f2a256320d1d42ea5b1c8a2f831e19b194aab9b7","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from tempest import test  # noqa"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from ironic_inspector.test.inspector_tempest_plugin.tests import manager"},{"line_number":17,"context_line":"from ironic_tempest_plugin.tests.scenario.baremetal_manager import \\"},{"line_number":18,"context_line":"    BaremetalPowerStates"},{"line_number":19,"context_line":"from ironic_tempest_plugin.tests.scenario.baremetal_manager import \\"},{"line_number":20,"context_line":"    BaremetalProvisionStates"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class InspectorBasicTest(manager.InspectorScenarioTest):"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a629dbe_11d67cc5","line":20,"range":{"start_line":17,"start_character":0,"end_line":20,"end_character":28},"updated":"2016-11-07 12:15:23.000000000","message":"nit: we should import only modules","commit_id":"8aef10892b5a761971611fbb7fc4b533a2557ad3"},{"author":{"_account_id":14885,"name":"Daniel Mellado","email":"dmellado@redhat.com","username":"daniel-mellado"},"change_message_id":"8bc8139f7ab51b6b08ce7f415e289fd0fe0d7b10","unresolved":false,"context_lines":[{"line_number":14,"context_line":"from tempest import test  # noqa"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from ironic_inspector.test.inspector_tempest_plugin.tests import manager"},{"line_number":17,"context_line":"from ironic_tempest_plugin.tests.scenario.baremetal_manager import \\"},{"line_number":18,"context_line":"    BaremetalPowerStates"},{"line_number":19,"context_line":"from ironic_tempest_plugin.tests.scenario.baremetal_manager import \\"},{"line_number":20,"context_line":"    BaremetalProvisionStates"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class InspectorBasicTest(manager.InspectorScenarioTest):"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a629dbe_9969ce8e","line":20,"range":{"start_line":17,"start_character":0,"end_line":20,"end_character":28},"in_reply_to":"9a629dbe_11d67cc5","updated":"2016-11-07 12:42:02.000000000","message":"+1 To that ;)","commit_id":"8aef10892b5a761971611fbb7fc4b533a2557ad3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"97593df6e1991e551b68184ef4521793d03626dd","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"\"\""},{"line_number":122,"context_line":"        # start nodes introspection"},{"line_number":123,"context_line":"        for node_id in self.node_ids:"},{"line_number":124,"context_line":"            self.baremetal_client.set_node_provision_state(node_id, \u0027manage\u0027)"},{"line_number":125,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":126,"context_line":"            self.introspection_start(node_id)"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        # wait for nodes power on"},{"line_number":129,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a629dbe_799f9a5f","line":126,"range":{"start_line":124,"start_character":0,"end_line":126,"end_character":45},"updated":"2016-11-07 12:45:36.000000000","message":"please use self.introspect_node instead of all this (yeah, the names are confusing)","commit_id":"8aef10892b5a761971611fbb7fc4b533a2557ad3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"97593df6e1991e551b68184ef4521793d03626dd","unresolved":false,"context_lines":[{"line_number":137,"context_line":"        for node_id in self.node_ids:"},{"line_number":138,"context_line":"            self.wait_power_state(node_id, BaremetalPowerStates.POWER_OFF)"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        # verify nodes status and power state"},{"line_number":141,"context_line":"        for node_id in self.node_ids:"},{"line_number":142,"context_line":"            self.verify_introspection_aborted(node_id)"},{"line_number":143,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a629dbe_39e7e213","line":140,"range":{"start_line":140,"start_character":29,"end_line":140,"end_character":45},"updated":"2016-11-07 12:45:36.000000000","message":"you don\u0027t really check power state here, but you should check that the provision state eventually goes to INSPECT FAIL","commit_id":"8aef10892b5a761971611fbb7fc4b533a2557ad3"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"ddfb8eb8cb8672a359014ac614a161ebad75f540","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_f4865164","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"updated":"2016-11-07 13:38:52.000000000","message":"I\u0027m wondering given how fast the introspection is now (~15 sec) can it happen that some node will finish introspection before some other node will power on? I think if that happened the test would time-out waiting here (as the already introspected node would move to power-off). Maybe this check is not necessary?","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"37c2431b054d749219f61a96325b626c8a90737f","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_0952cb13","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"in_reply_to":"9a629dbe_05d1d1cd","updated":"2016-11-07 14:13:42.000000000","message":"Yeah, it\u0027s separate patch, I\u0027ll think about it","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"1334835f7fa7cfb2e26d290d1caab37a56d7713d","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_05d1d1cd","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"in_reply_to":"9a629dbe_852081f9","updated":"2016-11-07 14:08:31.000000000","message":"Yeah, let\u0027s think about parallel tests separately..","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"4fdc22dc6c97b3c9d7adb77c1e95d5d0dc4a57d6","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_ea358af7","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"in_reply_to":"9a629dbe_8a624ed7","updated":"2016-11-07 13:52:14.000000000","message":"I don\u0027t think this is the problem with few nodes, but with big amount - it is.\n\nI still think we should use one node per test, and running tests in parallel. We can choose node for specific test first to avoid races.","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"146d1507bba8fd08be7424dbaa7e733409d90750","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_852081f9","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"in_reply_to":"9a629dbe_ea358af7","updated":"2016-11-07 14:07:37.000000000","message":"yeah sounds like it might be worth a separate patch. let\u0027s keep the current version for the sake of consistency w/ other tests?","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"2fc44f0de6845171ab33472b7639a03328436414","unresolved":false,"context_lines":[{"line_number":122,"context_line":"            self.addCleanup(self.node_cleanup, node_id)"},{"line_number":123,"context_line":"            self.introspection_start(node_id)"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"        # wait for nodes power on"},{"line_number":126,"context_line":"        for node_id in self.node_ids:"},{"line_number":127,"context_line":"            self.wait_power_state(node_id, baremetal_manager.BaremetalPowerStates.POWER_ON)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        # abort introspection"},{"line_number":130,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a629dbe_8a624ed7","line":127,"range":{"start_line":125,"start_character":8,"end_line":127,"end_character":91},"in_reply_to":"9a629dbe_f4865164","updated":"2016-11-07 13:41:11.000000000","message":"I think booting IPA is still longer than waiting for a VM to become \"power on\".. but dunno really. we have to somehow make sure introspection has started doing something. maybe we should wait for at least one node here, not for all of them.","commit_id":"30af9afced3a80d2f6304ed8e443611be17e6b04"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"49f7c5ba5521134bec9ca4129d216af1d5729f6b","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.assertEqual(\u0027Canceled by operator\u0027, status[\u0027error\u0027])"},{"line_number":52,"context_line":"        self.assertTrue(status[\u0027finished\u0027])"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def verify_introspection_failed(self, uuid):"},{"line_number":55,"context_line":"        self.assertEqual(\u0027inspect failed\u0027, self.node_show(uuid)[\u0027provision_state\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    @test.idempotent_id(\u002703bf7990-bee0-4dd7-bf74-b97ad7b52a4b\u0027)"},{"line_number":58,"context_line":"    @test.services(\u0027baremetal\u0027, \u0027compute\u0027, \u0027image\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_14b025dd","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":83},"updated":"2016-11-07 13:17:19.000000000","message":"nit: imo we can move this to verify_introspection_aborted, I don\u0027t see any reason to have it as separate method","commit_id":"902418cbb6bfa079c080838496879e60ef495459"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"d79a61f06145dd11bc2857bec26b55d4d6e32ef4","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.assertEqual(\u0027Canceled by operator\u0027, status[\u0027error\u0027])"},{"line_number":52,"context_line":"        self.assertTrue(status[\u0027finished\u0027])"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"    def verify_introspection_failed(self, uuid):"},{"line_number":55,"context_line":"        self.assertEqual(\u0027inspect failed\u0027, self.node_show(uuid)[\u0027provision_state\u0027])"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    @test.idempotent_id(\u002703bf7990-bee0-4dd7-bf74-b97ad7b52a4b\u0027)"},{"line_number":58,"context_line":"    @test.services(\u0027baremetal\u0027, \u0027compute\u0027, \u0027image\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_0f449072","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":83},"in_reply_to":"9a629dbe_14b025dd","updated":"2016-11-07 13:38:31.000000000","message":"in addition to that, the state might not be updated instantly, so we have to wait for it.","commit_id":"902418cbb6bfa079c080838496879e60ef495459"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"49f7c5ba5521134bec9ca4129d216af1d5729f6b","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"\"\""},{"line_number":122,"context_line":"        # start nodes introspection"},{"line_number":123,"context_line":"        for node_id in self.node_ids:"},{"line_number":124,"context_line":"            self.introspect_node(node_id)"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        # wait for nodes power on"},{"line_number":127,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_f42f31f4","line":124,"range":{"start_line":124,"start_character":0,"end_line":124,"end_character":41},"updated":"2016-11-07 13:17:19.000000000","message":"we need to modify this method a little bit, because as result we will have node w/o any node property.\nhttps://github.com/openstack/ironic-inspector/blob/master/ironic_inspector/test/inspector_tempest_plugin/tests/manager.py#L227-L231","commit_id":"902418cbb6bfa079c080838496879e60ef495459"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"a067bc55f5f688eda1ec0ebb543a0b2aa5124c1a","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"\"\""},{"line_number":122,"context_line":"        # start nodes introspection"},{"line_number":123,"context_line":"        for node_id in self.node_ids:"},{"line_number":124,"context_line":"            self.introspect_node(node_id)"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        # wait for nodes power on"},{"line_number":127,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a629dbe_cf49b890","line":124,"range":{"start_line":124,"start_character":0,"end_line":124,"end_character":41},"in_reply_to":"9a629dbe_f42f31f4","updated":"2016-11-07 13:38:30.000000000","message":"+1 sounds like that method should be split or have an optional ``reset\u003dTrue`` kwarg","commit_id":"902418cbb6bfa079c080838496879e60ef495459"},{"author":{"_account_id":18653,"name":"Milan Kováčik","email":"mkovacik@redhat.com","username":"dparalen"},"change_message_id":"89410c8f52dca0e1295a65b366976826ba5de531","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        \"\"\""},{"line_number":124,"context_line":"        # start nodes introspection"},{"line_number":125,"context_line":"        for node_id in self.node_ids:"},{"line_number":126,"context_line":"            self.introspect_node(node_id, False)"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        # wait for nodes power on"},{"line_number":129,"context_line":"        for node_id in self.node_ids:"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a629dbe_4c14d1f4","line":126,"range":{"start_line":126,"start_character":42,"end_line":126,"end_character":47},"updated":"2016-11-07 14:45:31.000000000","message":"should be: remove_props\u003dFalse","commit_id":"363b458456fcd772b98a531f56312d8deb976219"},{"author":{"_account_id":13636,"name":"Anton A","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"b688bd7c1ded3779b554e495bd56531c03ed706b","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        self.assertTrue(status[\u0027finished\u0027])"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"        self.wait_provisioning_state("},{"line_number":55,"context_line":"            uuid, \u0027inspect failed\u0027,"},{"line_number":56,"context_line":"            timeout\u003dCONF.baremetal.active_timeout,"},{"line_number":57,"context_line":"            interval\u003dself.wait_provisioning_state_interval)"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a629dbe_a2bba471","line":55,"range":{"start_line":55,"start_character":19,"end_line":55,"end_character":34},"updated":"2016-11-07 22:37:19.000000000","message":"note: we need to add this state to BaremetalProvisionStates","commit_id":"f52ee7a322eda215d47143ad70091b83d7e8887a"}]}
