)]}'
{"tempest/scenario/manager.py":[{"author":{"_account_id":10016,"name":"Joseph Lanoux","email":"joseph.lanoux@hpe.com","username":"lanoux"},"change_message_id":"d46eb7031e32084f2b3503cc43f9a10f859ab86c","unresolved":false,"context_lines":[{"line_number":1721,"context_line":"    @staticmethod"},{"line_number":1722,"context_line":"    def _stack_output(stack, output_key):"},{"line_number":1723,"context_line":"        \"\"\"Return a stack output value for a given key.\"\"\""},{"line_number":1724,"context_line":"        return next((o[\u0027output_value\u0027] for o in stack[\"outputs\"]"},{"line_number":1725,"context_line":"                    if o[\u0027output_key\u0027] \u003d\u003d output_key), None)"},{"line_number":1726,"context_line":""},{"line_number":1727,"context_line":"    def _ping_ip_address(self, ip_address, should_succeed\u003dTrue):"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_e0f8b5e7","line":1724,"updated":"2014-09-01 08:13:34.000000000","message":"Why did you use double quotes?","commit_id":"e327de93b06c5c4db809697731137d2ad15b0d9f"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"a88c0127d79e4547927b0f9a582832ae40c33da6","unresolved":false,"context_lines":[{"line_number":1721,"context_line":"    @staticmethod"},{"line_number":1722,"context_line":"    def _stack_output(stack, output_key):"},{"line_number":1723,"context_line":"        \"\"\"Return a stack output value for a given key.\"\"\""},{"line_number":1724,"context_line":"        return next((o[\u0027output_value\u0027] for o in stack[\"outputs\"]"},{"line_number":1725,"context_line":"                    if o[\u0027output_key\u0027] \u003d\u003d output_key), None)"},{"line_number":1726,"context_line":""},{"line_number":1727,"context_line":"    def _ping_ip_address(self, ip_address, should_succeed\u003dTrue):"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa98f980_361bb51c","line":1724,"in_reply_to":"fa98f980_e0f8b5e7","updated":"2014-09-02 02:47:25.000000000","message":"oops, there is no special reason (my mistake).. I\u0027ll fix this to single quotes for the consistency.\nThanks!","commit_id":"e327de93b06c5c4db809697731137d2ad15b0d9f"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"2d48e50415a656dd0fab9e5cf59a65c54f57be98","unresolved":false,"context_lines":[{"line_number":1737,"context_line":"        return tempest.test.call_until_true("},{"line_number":1738,"context_line":"            ping, CONF.orchestration.build_timeout, 1)"},{"line_number":1739,"context_line":""},{"line_number":1740,"context_line":"    def _wait_for_resource_status(self, stack_identifier, resource_name,"},{"line_number":1741,"context_line":"                                  status, failure_pattern\u003d\u0027^.*_FAILED$\u0027):"},{"line_number":1742,"context_line":"        \"\"\"Waits for a Resource to reach a given status.\"\"\""},{"line_number":1743,"context_line":"        self.client.wait_for_resource_status(stack_identifier, resource_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa98f980_440951dc","line":1740,"updated":"2014-09-02 09:10:17.000000000","message":"Do we need this extra helper at all? It\u0027s adding no value, the default value for failure_pattern is already in the original method.","commit_id":"eb0fd9ffd4e670cbbe0025bf926fa547f638c6f4"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"2d48e50415a656dd0fab9e5cf59a65c54f57be98","unresolved":false,"context_lines":[{"line_number":1743,"context_line":"        self.client.wait_for_resource_status(stack_identifier, resource_name,"},{"line_number":1744,"context_line":"                                             status, failure_pattern)"},{"line_number":1745,"context_line":""},{"line_number":1746,"context_line":"    def _wait_for_stack_status(self, stack_identifier, status,"},{"line_number":1747,"context_line":"                               failure_pattern\u003d\u0027^.*_FAILED$\u0027):"},{"line_number":1748,"context_line":"        \"\"\""},{"line_number":1749,"context_line":"        Waits for a Stack to reach a given status."}],"source_content_type":"text/x-python","patch_set":5,"id":"fa98f980_8413390c","line":1746,"updated":"2014-09-02 09:10:17.000000000","message":"Ditto L1740","commit_id":"eb0fd9ffd4e670cbbe0025bf926fa547f638c6f4"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"e9e0da03d5111c557e9d84e1a3ba719f1a9b3776","unresolved":false,"context_lines":[{"line_number":2273,"context_line":"        return tempest.test.call_until_true("},{"line_number":2274,"context_line":"            ping, CONF.orchestration.build_timeout, 1)"},{"line_number":2275,"context_line":""},{"line_number":2276,"context_line":"    def _stack_delete(self, stack_identifier):"},{"line_number":2277,"context_line":"        try:"},{"line_number":2278,"context_line":"            self.client.delete_stack(stack_identifier)"},{"line_number":2279,"context_line":"        except heat_exceptions.HTTPNotFound:"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa98f980_29834505","line":2276,"updated":"2014-09-10 07:20:03.000000000","message":"is this still needed? would the tempest client really throw heat_exceptions.HTTPNotFound?","commit_id":"7e3a331306058852aa72476d5a1ec2ec594abc16"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"23967d21b8a3b291c0705c8f6f4e609e39694c68","unresolved":false,"context_lines":[{"line_number":2272,"context_line":"        return tempest.test.call_until_true("},{"line_number":2273,"context_line":"            ping, CONF.orchestration.build_timeout, 1)"},{"line_number":2274,"context_line":""},{"line_number":2275,"context_line":"    def _stack_delete(self, stack_identifier):"},{"line_number":2276,"context_line":"        try:"},{"line_number":2277,"context_line":"            self.orchestration_client.delete_stack(stack_identifier)"},{"line_number":2278,"context_line":"        except exceptions.NotFound:"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa98f980_8096be92","line":2275,"updated":"2014-09-10 10:19:14.000000000","message":"this is not needed. you are duplicating manager.delete_wrapper","commit_id":"0e66ef6353e2780c41142553134a3e5f22c1e08b"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"22f235f880560271d8d74b6ff73e82f728deaf5c","unresolved":false,"context_lines":[{"line_number":2251,"context_line":"        return network, subnet, router"},{"line_number":2252,"context_line":""},{"line_number":2253,"context_line":""},{"line_number":2254,"context_line":"class OrchestrationScenarioTest(ScenarioTest):"},{"line_number":2255,"context_line":"    \"\"\""},{"line_number":2256,"context_line":"    Base class for orchestration scenario tests"},{"line_number":2257,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa98f980_10f2526f","line":2254,"updated":"2014-09-17 21:11:17.000000000","message":"This would break the autoscale test, but that is skipped, so it should be fine as it makes the migration easier.","commit_id":"bc6fe8ded2e997a9feae147b2000f94af1c18e8a"},{"author":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"change_message_id":"d303d3b288636bf4a3a4f5208d4144f6631bdc26","unresolved":false,"context_lines":[{"line_number":2251,"context_line":"        return network, subnet, router"},{"line_number":2252,"context_line":""},{"line_number":2253,"context_line":""},{"line_number":2254,"context_line":"class OrchestrationScenarioTest(ScenarioTest):"},{"line_number":2255,"context_line":"    \"\"\""},{"line_number":2256,"context_line":"    Base class for orchestration scenario tests"},{"line_number":2257,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa98f980_6737424e","line":2254,"in_reply_to":"fa98f980_10f2526f","updated":"2014-09-18 21:49:13.000000000","message":"I\u0027m going to suggest that the autoscale test be removed from tempest","commit_id":"bc6fe8ded2e997a9feae147b2000f94af1c18e8a"}],"tempest/scenario/orchestration/test_server_cfn_init.py":[{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"23967d21b8a3b291c0705c8f6f4e609e39694c68","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"        _, self.stack \u003d self.client.get_stack(stack[\u0027id\u0027])"},{"line_number":62,"context_line":"        self.stack_identifier \u003d \u0027%s/%s\u0027 % (self.stack_name, self.stack[\u0027id\u0027])"},{"line_number":63,"context_line":"        self.addCleanup(self._stack_delete, self.stack_identifier)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"    def check_stack(self):"},{"line_number":66,"context_line":"        sid \u003d self.stack_identifier"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa98f980_00eace0e","line":63,"updated":"2014-09-10 10:19:14.000000000","message":"please use delete_wrapper instead of stack_delete.","commit_id":"0e66ef6353e2780c41142553134a3e5f22c1e08b"}]}
