)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"e21b51d4faeaeb117da83fb70cb06e0d6a356273","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix the DEPLOYWAIT check for agent_* drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The patch [1] sets the node\u0027s provision_state to DEPLOYWAIT while the"},{"line_number":10,"context_line":"agent is booting and writing the the image onto the local disk. But in"},{"line_number":11,"context_line":"the ironic-conductor we have a periodic task that checks for nodes in"},{"line_number":12,"context_line":"DEPLOYWAIT state and see if the deployment timed out based on the node\u0027s"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a41bdd9_06886521","line":9,"updated":"2015-07-18 10:59:00.000000000","message":"I think missing a reference for [1]","commit_id":"a5c188a91f6e667ea35d74abf1d88bc0ef5c979b"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"9f37f041f0ea862740951eba3e843aec3636648b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix the DEPLOYWAIT check for agent_* drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The patch [1] sets the node\u0027s provision_state to DEPLOYWAIT while the"},{"line_number":10,"context_line":"agent is booting and writing the the image onto the local disk. But in"},{"line_number":11,"context_line":"the ironic-conductor we have a periodic task that checks for nodes in"},{"line_number":12,"context_line":"DEPLOYWAIT state and see if the deployment timed out based on the node\u0027s"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a41bdd9_3cf1f6cd","line":9,"in_reply_to":"9a41bdd9_06886521","updated":"2015-07-18 13:16:23.000000000","message":"Done","commit_id":"a5c188a91f6e667ea35d74abf1d88bc0ef5c979b"}],"ironic/drivers/modules/agent_base_vendor.py":[{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"d602d9e67b35360ecd4e8d76ab0ce63282cbe81a","unresolved":false,"context_lines":[{"line_number":262,"context_line":"                self.reboot_to_instance(task, **kwargs)"},{"line_number":263,"context_line":"            elif (node.provision_state \u003d\u003d states.DEPLOYWAIT and"},{"line_number":264,"context_line":"                  self.deploy_has_started(task)):"},{"line_number":265,"context_line":"                node.touch_provisioning(node.uuid)"},{"line_number":266,"context_line":"            elif (node.provision_state \u003d\u003d states.CLEANING and"},{"line_number":267,"context_line":"                  not node.clean_step):"},{"line_number":268,"context_line":"                # Agent booted from prepare_cleaning"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_83eee489","line":265,"updated":"2015-07-20 12:33:58.000000000","message":"objects/node.py\n def touch_provisioning(self, context\u003dNone):\n\nSuperfluous uuid parameter.","commit_id":"0de1870da10120ddc6567c6c2e9d9af36feca314"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"39dd0730f06f89967edcfca59902afb007aef3cf","unresolved":false,"context_lines":[{"line_number":262,"context_line":"                self.reboot_to_instance(task, **kwargs)"},{"line_number":263,"context_line":"            elif (node.provision_state \u003d\u003d states.DEPLOYWAIT and"},{"line_number":264,"context_line":"                  self.deploy_has_started(task)):"},{"line_number":265,"context_line":"                node.touch_provisioning(node.uuid)"},{"line_number":266,"context_line":"            elif (node.provision_state \u003d\u003d states.CLEANING and"},{"line_number":267,"context_line":"                  not node.clean_step):"},{"line_number":268,"context_line":"                # Agent booted from prepare_cleaning"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_6625e6a9","line":265,"in_reply_to":"3a50d1a3_83eee489","updated":"2015-07-20 12:38:38.000000000","message":"Thanks! Yeah I think I forgot it from my previous implementation (before I found out that I the object attributes can be accessed like self.uuid).\n\nWill fix","commit_id":"0de1870da10120ddc6567c6c2e9d9af36feca314"}],"ironic/objects/node.py":[{"author":{"_account_id":7711,"name":"Yuriy Zveryanskyy","email":"yzveryanskyy@mirantis.com","username":"yuriyz"},"change_message_id":"d602d9e67b35360ecd4e8d76ab0ce63282cbe81a","unresolved":false,"context_lines":[{"line_number":290,"context_line":"    @base.remotable"},{"line_number":291,"context_line":"    def touch_provisioning(self, context\u003dNone):"},{"line_number":292,"context_line":"        \"\"\"Touch the database record to mark the provisioning as alive.\"\"\""},{"line_number":293,"context_line":"        self.dbapi.touch_node_provisioning(self.uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_03a414a4","line":293,"updated":"2015-07-20 12:33:58.000000000","message":"You can use self.id here instead of uuid.","commit_id":"0de1870da10120ddc6567c6c2e9d9af36feca314"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"39dd0730f06f89967edcfca59902afb007aef3cf","unresolved":false,"context_lines":[{"line_number":290,"context_line":"    @base.remotable"},{"line_number":291,"context_line":"    def touch_provisioning(self, context\u003dNone):"},{"line_number":292,"context_line":"        \"\"\"Touch the database record to mark the provisioning as alive.\"\"\""},{"line_number":293,"context_line":"        self.dbapi.touch_node_provisioning(self.uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_46a54a02","line":293,"in_reply_to":"3a50d1a3_03a414a4","updated":"2015-07-20 12:38:38.000000000","message":"Done","commit_id":"0de1870da10120ddc6567c6c2e9d9af36feca314"}],"ironic/tests/drivers/test_agent_base_vendor.py":[{"author":{"_account_id":14923,"name":"Sinval Vieira Mendes Neto","email":"sinvalneto01@gmail.com","username":"sinvalvieira"},"change_message_id":"7b1b4ea95646e458cdbe0ddd798d7645f7d0618b","unresolved":false,"context_lines":[{"line_number":327,"context_line":"    def test_heartbeat_touch_provisioning(self, mock_deploy_started,"},{"line_number":328,"context_line":"                                          mock_touch):"},{"line_number":329,"context_line":"        mock_deploy_started.return_value \u003d True"},{"line_number":330,"context_line":"        kwargs \u003d {"},{"line_number":331,"context_line":"            \u0027agent_url\u0027: \u0027http://127.0.0.1:9999/bar\u0027"},{"line_number":332,"context_line":"        }"},{"line_number":333,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_3128e485","line":330,"updated":"2015-07-22 17:20:40.000000000","message":"nit (really minor): This \"kwargs\" is exactly the same in other tests, if you are going to push another patch, could be nice to extract it to a common and reuse it on entire test class.","commit_id":"4c8bdc29ecb6ec4d77ecb7a64e4de52261a5620b"}],"ironic/tests/objects/test_node.py":[{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"11d57706e93cebc673e3f836316dc06c507e2c1a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    def test_touch_provisioning(self):"},{"line_number":144,"context_line":"        with mock.patch.object(self.dbapi, \u0027get_node_by_uuid\u0027,"},{"line_number":145,"context_line":"                               autospec\u003dTrue) as mock_get_node:"},{"line_number":146,"context_line":"            mock_get_node.return_value \u003d self.fake_node"},{"line_number":147,"context_line":"            with mock.patch.object(self.dbapi, \u0027touch_node_provisioning\u0027,"},{"line_number":148,"context_line":"                                   autospec\u003dTrue) as mock_touch:"},{"line_number":149,"context_line":"                node \u003d objects.Node.get(self.context, self.fake_node[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_0678a2c3","line":146,"updated":"2015-07-20 12:52:08.000000000","message":"Could shorten this a bit if you push another patch:\n\n   with mock.patch.object(self.dbapi, \u0027get_node_by_uuid\u0027,\n                          autospec\u003dTrue, return_value\u003dself.fake_node):","commit_id":"4c8bdc29ecb6ec4d77ecb7a64e4de52261a5620b"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"9e138ef77c23fbdadcf34c7c2f9d82c04796fd95","unresolved":false,"context_lines":[{"line_number":143,"context_line":"    def test_touch_provisioning(self):"},{"line_number":144,"context_line":"        with mock.patch.object(self.dbapi, \u0027get_node_by_uuid\u0027,"},{"line_number":145,"context_line":"                               autospec\u003dTrue) as mock_get_node:"},{"line_number":146,"context_line":"            mock_get_node.return_value \u003d self.fake_node"},{"line_number":147,"context_line":"            with mock.patch.object(self.dbapi, \u0027touch_node_provisioning\u0027,"},{"line_number":148,"context_line":"                                   autospec\u003dTrue) as mock_touch:"},{"line_number":149,"context_line":"                node \u003d objects.Node.get(self.context, self.fake_node[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_09143542","line":146,"in_reply_to":"3a50d1a3_0678a2c3","updated":"2015-07-20 12:54:57.000000000","message":"++","commit_id":"4c8bdc29ecb6ec4d77ecb7a64e4de52261a5620b"}]}
