)]}'
{"watcher_tempest_plugin/README.rst":[{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"2c56d1f497d7b7ae4b1a000a0b89336c4fb18e16","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Then setup a local working environment (here ``watcher-cloud``) for running"},{"line_number":45,"context_line":"Tempest for Watcher which shall contain the configuration for your OpenStack"},{"line_number":46,"context_line":"intergration platform."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"In a virtual environment, you can do so by issuing the following command::"},{"line_number":49,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_9eb684f7","line":46,"range":{"start_line":46,"start_character":0,"end_line":46,"end_character":12},"updated":"2016-01-25 07:44:47.000000000","message":"integration","commit_id":"b53da21b9b72b1a24292795fdf05f853971d9e2f"}],"watcher_tempest_plugin/tests/scenario/base.py":[{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":118,"context_line":"        \"\"\"Wrapper utility for creating a test audit"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        :param audit_template_uuid: Audit Template UUID this audit will use"},{"line_number":121,"context_line":"        :param type: Audit type (either ONESHOT or CONTINUOUS)"},{"line_number":122,"context_line":"        :return: A tuple with The HTTP response and its body"},{"line_number":123,"context_line":"        \"\"\""},{"line_number":124,"context_line":"        resp, body \u003d self.client.create_audit("}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_81c7ce44","line":121,"updated":"2016-01-20 13:46:35.000000000","message":"nit missing docstring : state, deadline","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        super(BaseInfraOptimScenarioTest, cls).resource_cleanup()"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @classmethod"},{"line_number":60,"context_line":"    def wait_for(cls, condition, timeout\u003d30):"},{"line_number":61,"context_line":"        start_time \u003d time.time()"},{"line_number":62,"context_line":"        while time.time() - start_time \u003c timeout:"},{"line_number":63,"context_line":"            if condition():"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_862776b5","line":60,"updated":"2016-01-22 06:55:32.000000000","message":"Use tempest.test.call_until_true instead","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        super(BaseInfraOptimScenarioTest, cls).resource_cleanup()"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    @classmethod"},{"line_number":60,"context_line":"    def wait_for(cls, condition, timeout\u003d30):"},{"line_number":61,"context_line":"        start_time \u003d time.time()"},{"line_number":62,"context_line":"        while time.time() - start_time \u003c timeout:"},{"line_number":63,"context_line":"            if condition():"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_b55175da","line":60,"in_reply_to":"9a68dd71_862776b5","updated":"2016-01-22 11:00:37.000000000","message":"Done","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            time.sleep(.5)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def _check_network_config(cls):"},{"line_number":69,"context_line":"        if not CONF.network.public_network_id:"},{"line_number":70,"context_line":"            msg \u003d \u0027public network not defined.\u0027"},{"line_number":71,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_26480a2d","line":68,"updated":"2016-01-22 06:55:32.000000000","message":"Is this for future scenario tests that will likely require a network?  Not sure why this is needed for the dummy test.","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            time.sleep(.5)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def _check_network_config(cls):"},{"line_number":69,"context_line":"        if not CONF.network.public_network_id:"},{"line_number":70,"context_line":"            msg \u003d \u0027public network not defined.\u0027"},{"line_number":71,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_b5edf5f0","line":68,"in_reply_to":"9a68dd71_26480a2d","updated":"2016-01-22 11:00:37.000000000","message":"Tempest scenarios require it to run the tests and the error that we get if it not set properly is not really understandable. Also, I lost quite a bit of time on this I preferred adding a check that would make it more explicit.","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def _check_network_config(cls):"},{"line_number":69,"context_line":"        if not CONF.network.public_network_id:"},{"line_number":70,"context_line":"            msg \u003d \u0027public network not defined.\u0027"},{"line_number":71,"context_line":"            LOG.error(msg)"},{"line_number":72,"context_line":"            raise exceptions.InvalidConfiguration(msg)"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_263ecab8","line":70,"updated":"2016-01-22 06:55:32.000000000","message":"public_network_id is not defined in tempest configuration file, but it is required.","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    @classmethod"},{"line_number":68,"context_line":"    def _check_network_config(cls):"},{"line_number":69,"context_line":"        if not CONF.network.public_network_id:"},{"line_number":70,"context_line":"            msg \u003d \u0027public network not defined.\u0027"},{"line_number":71,"context_line":"            LOG.error(msg)"},{"line_number":72,"context_line":"            raise exceptions.InvalidConfiguration(msg)"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_d57d091d","line":70,"in_reply_to":"9a68dd71_263ecab8","updated":"2016-01-22 11:00:37.000000000","message":"Done","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"}],"watcher_tempest_plugin/tests/scenario/test_execute_dummy_optim.py":[{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    def has_audit_succeeded(self, audit_uuid):"},{"line_number":27,"context_line":"        has_succeeded \u003d False"},{"line_number":28,"context_line":"        _, audit \u003d self.client.show_audit(audit_uuid)"},{"line_number":29,"context_line":"        if audit.get(\u0027state\u0027) \u003d\u003d \u0027SUCCEEDED\u0027:"},{"line_number":30,"context_line":"            has_succeeded \u003d True"},{"line_number":31,"context_line":"        return has_succeeded"},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_16aa421a","line":29,"updated":"2016-01-20 13:46:35.000000000","message":"Can you use the default state provided by the object Audit.","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    def has_action_plan_finished(self, action_plan_uuid):"},{"line_number":34,"context_line":"        has_succeeded \u003d False"},{"line_number":35,"context_line":"        _, action_plan \u003d self.client.show_action_plan(action_plan_uuid)"},{"line_number":36,"context_line":"        if action_plan.get(\u0027state\u0027) in (\u0027FAILED\u0027, \u0027SUCCEEDED\u0027, \u0027CANCELLED\u0027):"},{"line_number":37,"context_line":"            has_succeeded \u003d True"},{"line_number":38,"context_line":"        return has_succeeded"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_d6626a16","line":36,"updated":"2016-01-20 13:46:35.000000000","message":"ditto","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":60,"context_line":"        # Execute the action by changing its state to STARTING"},{"line_number":61,"context_line":"        _, updated_ap \u003d self.client.update_action_plan("},{"line_number":62,"context_line":"            action_plan[\u0027uuid\u0027],"},{"line_number":63,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_f6676e23","line":63,"updated":"2016-01-20 13:46:35.000000000","message":"ditto","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"},{"line_number":67,"context_line":"            return self.has_action_plan_finished(action_plan_uuid)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.wait_for(lambda uuid\u003daction_plan[\u0027uuid\u0027]: has_finished(uuid))"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_4173164e","line":66,"updated":"2016-01-20 13:46:35.000000000","message":"Can you remove this function ? ( I don\u0027t like )\n\nI prefer that your remame the function  has_action_plan_finished","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"e1e591326a7faa5eac123b405dd6e6142fbf8c47","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        _, finished_ap \u003d self.client.show_action_plan(action_plan[\u0027uuid\u0027])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        self.assertIn(updated_ap[\u0027state\u0027], (\u0027STARTING\u0027, \u0027ONGOING\u0027))"},{"line_number":73,"context_line":"        self.assertEqual(finished_ap[\u0027state\u0027], \u0027SUCCEEDED\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a68dd71_56775ad4","line":73,"updated":"2016-01-20 13:46:35.000000000","message":"ditto","commit_id":"dc550364559288a7bbf50422cd212395f04f7ec7"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    def has_audit_succeeded(self, audit_uuid):"},{"line_number":27,"context_line":"        has_succeeded \u003d False"},{"line_number":28,"context_line":"        _, audit \u003d self.client.show_audit(audit_uuid)"},{"line_number":29,"context_line":"        if audit.get(\u0027state\u0027) \u003d\u003d \u0027SUCCEEDED\u0027:"},{"line_number":30,"context_line":"            has_succeeded \u003d True"},{"line_number":31,"context_line":"        return has_succeeded"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def has_action_plan_finished(self, action_plan_uuid):"},{"line_number":34,"context_line":"        has_succeeded \u003d False"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_06e946e6","line":31,"range":{"start_line":29,"start_character":8,"end_line":31,"end_character":28},"updated":"2016-01-22 06:55:32.000000000","message":"return audit.get(\u0027state\u0027) \u003d\u003d \u0027SUCCEEDED\u0027","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    def has_audit_succeeded(self, audit_uuid):"},{"line_number":27,"context_line":"        has_succeeded \u003d False"},{"line_number":28,"context_line":"        _, audit \u003d self.client.show_audit(audit_uuid)"},{"line_number":29,"context_line":"        if audit.get(\u0027state\u0027) \u003d\u003d \u0027SUCCEEDED\u0027:"},{"line_number":30,"context_line":"            has_succeeded \u003d True"},{"line_number":31,"context_line":"        return has_succeeded"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def has_action_plan_finished(self, action_plan_uuid):"},{"line_number":34,"context_line":"        has_succeeded \u003d False"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_b5ee55b2","line":31,"range":{"start_line":29,"start_character":8,"end_line":31,"end_character":28},"in_reply_to":"9a68dd71_06e946e6","updated":"2016-01-22 11:00:37.000000000","message":"Done","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    def has_action_plan_finished(self, action_plan_uuid):"},{"line_number":34,"context_line":"        has_succeeded \u003d False"},{"line_number":35,"context_line":"        _, action_plan \u003d self.client.show_action_plan(action_plan_uuid)"},{"line_number":36,"context_line":"        if action_plan.get(\u0027state\u0027) in (\u0027FAILED\u0027, \u0027SUCCEEDED\u0027, \u0027CANCELLED\u0027):"},{"line_number":37,"context_line":"            has_succeeded \u003d True"},{"line_number":38,"context_line":"        return has_succeeded"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_execute_dummy_action_plan(self):"},{"line_number":41,"context_line":"        \"\"\"Execute an action plan based on the DUMMY strategy"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_86bbf6e4","line":38,"range":{"start_line":36,"start_character":8,"end_line":38,"end_character":28},"updated":"2016-01-22 06:55:32.000000000","message":"Ditto, and should we consider moving these methods to some sort of util file?","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    def has_action_plan_finished(self, action_plan_uuid):"},{"line_number":34,"context_line":"        has_succeeded \u003d False"},{"line_number":35,"context_line":"        _, action_plan \u003d self.client.show_action_plan(action_plan_uuid)"},{"line_number":36,"context_line":"        if action_plan.get(\u0027state\u0027) in (\u0027FAILED\u0027, \u0027SUCCEEDED\u0027, \u0027CANCELLED\u0027):"},{"line_number":37,"context_line":"            has_succeeded \u003d True"},{"line_number":38,"context_line":"        return has_succeeded"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    def test_execute_dummy_action_plan(self):"},{"line_number":41,"context_line":"        \"\"\"Execute an action plan based on the DUMMY strategy"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_75f21d71","line":38,"range":{"start_line":36,"start_character":8,"end_line":38,"end_character":28},"in_reply_to":"9a68dd71_86bbf6e4","updated":"2016-01-22 11:00:37.000000000","message":"I\u0027ll move them to base for now and we\u0027ll see later on if we create a dedicated \u0027utils\u0027 module.","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        _, audit_template \u003d self.create_audit_template()"},{"line_number":50,"context_line":"        _, audit \u003d self.create_audit(audit_template[\u0027uuid\u0027])"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        self.wait_for("},{"line_number":53,"context_line":"            lambda uuid\u003daudit[\u0027uuid\u0027]: self.has_audit_succeeded(uuid)"},{"line_number":54,"context_line":"        )"},{"line_number":55,"context_line":"        _, action_plans \u003d self.client.list_action_plan_by_audit(audit[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_c6f32e9d","line":52,"updated":"2016-01-22 06:55:32.000000000","message":"Fail if this times out?  self.assertTrue(self.wait_for(...))","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        _, audit_template \u003d self.create_audit_template()"},{"line_number":50,"context_line":"        _, audit \u003d self.create_audit(audit_template[\u0027uuid\u0027])"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        self.wait_for("},{"line_number":53,"context_line":"            lambda uuid\u003daudit[\u0027uuid\u0027]: self.has_audit_succeeded(uuid)"},{"line_number":54,"context_line":"        )"},{"line_number":55,"context_line":"        _, action_plans \u003d self.client.list_action_plan_by_audit(audit[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_707d4be6","line":52,"in_reply_to":"9a68dd71_c6f32e9d","updated":"2016-01-22 11:00:37.000000000","message":"Done","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"},{"line_number":67,"context_line":"            return self.has_action_plan_finished(action_plan_uuid)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.wait_for(lambda uuid\u003daction_plan[\u0027uuid\u0027]: has_finished(uuid))"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_062866e1","line":66,"updated":"2016-01-22 06:55:32.000000000","message":"Why\u0027s this needed?","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"},{"line_number":67,"context_line":"            return self.has_action_plan_finished(action_plan_uuid)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.wait_for(lambda uuid\u003daction_plan[\u0027uuid\u0027]: has_finished(uuid))"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_3087d3d8","line":66,"in_reply_to":"9a68dd71_062866e1","updated":"2016-01-22 11:00:37.000000000","message":"Replaced it with a partial","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":13289,"name":"Taylor Peoples","email":"tpeoples@us.ibm.com","username":"tpeoples"},"change_message_id":"de6f5ea246597e5452f990730b22e7ef4a5d0db6","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"},{"line_number":67,"context_line":"            return self.has_action_plan_finished(action_plan_uuid)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.wait_for(lambda uuid\u003daction_plan[\u0027uuid\u0027]: has_finished(uuid))"},{"line_number":70,"context_line":"        _, finished_ap \u003d self.client.show_action_plan(action_plan[\u0027uuid\u0027])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        self.assertIn(updated_ap[\u0027state\u0027], (\u0027STARTING\u0027, \u0027ONGOING\u0027))"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_86ef7686","line":69,"updated":"2016-01-22 06:55:32.000000000","message":"Ditto","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":18971,"name":"Vincent Françoise","email":"Vincent.FRANCOISE@b-com.com","username":"v-francoise"},"change_message_id":"3b6648017d37ae65984da2f5b15064aade10c8cc","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        def has_finished(action_plan_uuid):"},{"line_number":67,"context_line":"            return self.has_action_plan_finished(action_plan_uuid)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.wait_for(lambda uuid\u003daction_plan[\u0027uuid\u0027]: has_finished(uuid))"},{"line_number":70,"context_line":"        _, finished_ap \u003d self.client.show_action_plan(action_plan[\u0027uuid\u0027])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        self.assertIn(updated_ap[\u0027state\u0027], (\u0027STARTING\u0027, \u0027ONGOING\u0027))"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a68dd71_f0693b26","line":69,"in_reply_to":"9a68dd71_86ef7686","updated":"2016-01-22 11:00:37.000000000","message":"Done","commit_id":"a42c5b8254bdbc6ee70ef18217b8e6e9ecb20138"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"2c56d1f497d7b7ae4b1a000a0b89336c4fb18e16","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"        _, action_plan \u003d self.client.show_action_plan(action_plan[\u0027uuid\u0027])"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"        # Execute the action by changing its state to STARTING"},{"line_number":53,"context_line":"        _, updated_ap \u003d self.client.update_action_plan("},{"line_number":54,"context_line":"            action_plan[\u0027uuid\u0027],"},{"line_number":55,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a68dd71_5ef7ac8a","line":52,"range":{"start_line":52,"start_character":54,"end_line":52,"end_character":62},"updated":"2016-01-25 07:44:47.000000000","message":"should be changed to TRIGGERED.\nsee https://review.openstack.org/#/c/269700/","commit_id":"b53da21b9b72b1a24292795fdf05f853971d9e2f"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"2c56d1f497d7b7ae4b1a000a0b89336c4fb18e16","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        # Execute the action by changing its state to STARTING"},{"line_number":53,"context_line":"        _, updated_ap \u003d self.client.update_action_plan("},{"line_number":54,"context_line":"            action_plan[\u0027uuid\u0027],"},{"line_number":55,"context_line":"            patch\u003d[{\u0027path\u0027: \u0027/state\u0027, \u0027op\u0027: \u0027replace\u0027, \u0027value\u0027: \u0027STARTING\u0027}]"},{"line_number":56,"context_line":"        )"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        def has_finished(action_plan_uuid):"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a68dd71_fef1c095","line":55,"range":{"start_line":55,"start_character":65,"end_line":55,"end_character":73},"updated":"2016-01-25 07:44:47.000000000","message":"should be changed to TRIGGERED.\nsee see https://review.openstack.org/#/c/269700/","commit_id":"b53da21b9b72b1a24292795fdf05f853971d9e2f"}]}
