)]}'
{"tempest/tests/compute/floating_ips/test_floating_ips_actions.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @classmethod"},{"line_number":57,"context_line":"    def tearDownClass(cls):"},{"line_number":58,"context_line":"        super(FloatingIPsTestJSON, cls).tearDownClass()"},{"line_number":59,"context_line":"        #Deleting the server which is created in this method"},{"line_number":60,"context_line":"        resp, body \u003d cls.servers_client.delete_server(cls.server_id)"},{"line_number":61,"context_line":"        #Deleting the floating IP which is created in this method"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0Xk%3D","side":"PARENT","line":58,"updated":"2013-03-11 15:49:00.000000000","message":"you still need this line","commit_id":"758ab260cac289dfaeb7e55e471ac9147e0fda93"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    @classmethod"},{"line_number":57,"context_line":"    def tearDownClass(cls):"},{"line_number":58,"context_line":"        super(FloatingIPsTestJSON, cls).tearDownClass()"},{"line_number":59,"context_line":"        #Deleting the server which is created in this method"},{"line_number":60,"context_line":"        resp, body \u003d cls.servers_client.delete_server(cls.server_id)"},{"line_number":61,"context_line":"        #Deleting the floating IP which is created in this method"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0U8%3D","side":"PARENT","line":58,"updated":"2013-03-11 15:54:33.000000000","message":"You still need this line","commit_id":"758ab260cac289dfaeb7e55e471ac9147e0fda93"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        cls.servers_client \u003d cls.servers_client"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"        #Server creation"},{"line_number":36,"context_line":"        resp, server \u003d cls.create_server()"},{"line_number":37,"context_line":"        cls.servers_client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":38,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":39,"context_line":"        resp, body \u003d cls.servers_client.get_server(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0VM%3D","line":36,"updated":"2013-03-11 15:54:33.000000000","message":"add wait_until\u003d\u0027ACTIVE\u0027 to remove the next line","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/images/test_image_metadata.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        cls.servers_client \u003d cls.servers_client"},{"line_number":31,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":35,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0Xg%3D","line":33,"updated":"2013-03-11 15:49:00.000000000","message":"I don\u0027t think we need this any more, we don\u0027t use cls.name later","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        cls.servers_client \u003d cls.servers_client"},{"line_number":31,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":35,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0Uw%3D","line":33,"updated":"2013-03-11 15:54:33.000000000","message":"remove, use the fact that create_server will make a random name up","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":35,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        #Wait for the server to become active"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0Uo%3D","line":34,"updated":"2013-03-11 15:54:33.000000000","message":"add wait_until\u003d\u0027ACTIVE\u0027 to remove the wait_for line","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/images/test_images_whitebox.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    @classmethod"},{"line_number":38,"context_line":"    def tearDownClass(cls):"},{"line_number":39,"context_line":"        \"\"\"Delete images after a test is executed.\"\"\""},{"line_number":40,"context_line":"        for image_id in cls.image_ids:"},{"line_number":41,"context_line":"            cls.client.delete_image(image_id)"},{"line_number":42,"context_line":"            cls.image_ids.remove(image_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0W0%3D","line":39,"updated":"2013-03-11 15:49:00.000000000","message":"before you can remove this, you\u0027ll need to call the super class teardown for BaseCompute","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    @classmethod"},{"line_number":38,"context_line":"    def tearDownClass(cls):"},{"line_number":39,"context_line":"        \"\"\"Delete images after a test is executed.\"\"\""},{"line_number":40,"context_line":"        for image_id in cls.image_ids:"},{"line_number":41,"context_line":"            cls.client.delete_image(image_id)"},{"line_number":42,"context_line":"            cls.image_ids.remove(image_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0UY%3D","line":39,"updated":"2013-03-11 15:54:33.000000000","message":"this probably needs to call super to get the cleanup","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/servers/test_server_addresses.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        super(ServerAddressesTest, cls).setUpClass()"},{"line_number":30,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":33,"context_line":"        resp, cls.server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":34,"context_line":"        cls.client.wait_for_server_status(cls.server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0Wo%3D","line":32,"updated":"2013-03-11 15:49:00.000000000","message":"you can get rid of this and just use the random creation","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":33,"context_line":"        resp, cls.server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":34,"context_line":"        cls.client.wait_for_server_status(cls.server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    @attr(type\u003d\u0027negative\u0027, category\u003d\u0027server-addresses\u0027)"},{"line_number":37,"context_line":"    def test_list_server_addresses_invalid_server_id(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0WU%3D","line":34,"updated":"2013-03-11 15:49:00.000000000","message":"this line isn\u0027t needed if you cls.create_server(wait_until\u003d\u0027ACTIVE\u0027)","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        super(ServerAddressesTest, cls).setUpClass()"},{"line_number":30,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":33,"context_line":"        resp, cls.server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":34,"context_line":"        cls.client.wait_for_server_status(cls.server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0UQ%3D","line":32,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":33,"context_line":"        resp, cls.server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":34,"context_line":"        cls.client.wait_for_server_status(cls.server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    @attr(type\u003d\u0027negative\u0027, category\u003d\u0027server-addresses\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0UI%3D","line":33,"updated":"2013-03-11 15:54:33.000000000","message":"wait_until","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/servers/test_server_metadata.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        resp, tenants \u003d cls.admin_client.list_tenants()"},{"line_number":33,"context_line":"        cls.tenant_id \u003d [tnt[\u0027id\u0027] for tnt in tenants if tnt[\u0027name\u0027] \u003d\u003d"},{"line_number":34,"context_line":"                         cls.client.tenant_name][0]"},{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(meta\u003d{})"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0UE%3D","line":35,"updated":"2013-03-11 15:54:33.000000000","message":"wait_until","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"        #Wait for the server to become active"},{"line_number":40,"context_line":"        cls.client.wait_for_server_status(cls.server_id, \u0027ACTIVE\u0027)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def setUp(self):"},{"line_number":43,"context_line":"        super(ServerMetadataTestJSON, self).setUp()"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0UA%3D","line":40,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/servers/test_virtual_interfaces.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(VirtualInterfacesTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":36,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0WI%3D","line":33,"updated":"2013-03-11 15:49:00.000000000","message":"probably don\u0027t need this any more","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":36,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        cls.servers_client.wait_for_server_status(cls.server_id, \u0027ACTIVE\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @attr(type\u003d\u0027positive\u0027)"},{"line_number":41,"context_line":"    def test_list_virtual_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0WA%3D","line":38,"updated":"2013-03-11 15:49:00.000000000","message":"don\u0027t need this if you pass wait_until\u003d\u0027ACTIVE\u0027 as a param to create_server","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    @classmethod"},{"line_number":31,"context_line":"    def setUpClass(cls):"},{"line_number":32,"context_line":"        super(VirtualInterfacesTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":36,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0T8%3D","line":33,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        super(VirtualInterfacesTestJSON, cls).setUpClass()"},{"line_number":33,"context_line":"        cls.name \u003d rand_name(\u0027server\u0027)"},{"line_number":34,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":36,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        cls.servers_client.wait_for_server_status(cls.server_id, \u0027ACTIVE\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0T4%3D","line":35,"updated":"2013-03-11 15:54:33.000000000","message":"wait_until","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        resp, server \u003d cls.create_server(name\u003dcls.name)"},{"line_number":36,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        cls.servers_client.wait_for_server_status(cls.server_id, \u0027ACTIVE\u0027)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @attr(type\u003d\u0027positive\u0027)"},{"line_number":41,"context_line":"    def test_list_virtual_interfaces(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0T0%3D","line":38,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/test_authorization.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        cls.alt_security_client \u003d cls.alt_manager.security_groups_client"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cls.alt_security_client._set_auth()"},{"line_number":60,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":61,"context_line":"        resp, server \u003d cls.create_server(name\u003dname)"},{"line_number":62,"context_line":"        cls.client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":63,"context_line":"        resp, cls.server \u003d cls.client.get_server(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0V4%3D","line":60,"updated":"2013-03-11 15:49:00.000000000","message":"get rid of this, let create_server make the random string","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        cls.alt_security_client \u003d cls.alt_manager.security_groups_client"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cls.alt_security_client._set_auth()"},{"line_number":60,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":61,"context_line":"        resp, server \u003d cls.create_server(name\u003dname)"},{"line_number":62,"context_line":"        cls.client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":63,"context_line":"        resp, cls.server \u003d cls.client.get_server(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0Tw%3D","line":60,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        cls.alt_security_client._set_auth()"},{"line_number":60,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":61,"context_line":"        resp, server \u003d cls.create_server(name\u003dname)"},{"line_number":62,"context_line":"        cls.client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":63,"context_line":"        resp, cls.server \u003d cls.client.get_server(server[\u0027id\u0027])"},{"line_number":64,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0Ts%3D","line":61,"updated":"2013-03-11 15:54:33.000000000","message":"wait_until","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        cls.alt_security_client._set_auth()"},{"line_number":60,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":61,"context_line":"        resp, server \u003d cls.create_server(name\u003dname)"},{"line_number":62,"context_line":"        cls.client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":63,"context_line":"        resp, cls.server \u003d cls.client.get_server(server[\u0027id\u0027])"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        name \u003d rand_name(\u0027image\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0To%3D","line":62,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"}],"tempest/tests/compute/volumes/test_attach_volume.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":48,"context_line":"        resp, server \u003d self.create_server(name, adminPass\u003d\u0027password\u0027)"},{"line_number":49,"context_line":"        self.servers_client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        # Record addresses so that we can ssh later"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAN3%2F%2F0V0%3D","line":48,"updated":"2013-03-11 15:49:00.000000000","message":"wait_until\u003d\u0027ACTIVE\u0027","commit_id":"10debffdb35107e455dc48ae454f43f02dd0a2dc"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        self.servers_client.delete_server(server_id)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def _create_and_attach(self):"},{"line_number":45,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":48,"context_line":"        resp, server \u003d self.create_server(name, adminPass\u003d\u0027password\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0Tg%3D","line":45,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        name \u003d rand_name(\u0027server\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":48,"context_line":"        resp, server \u003d self.create_server(name, adminPass\u003d\u0027password\u0027)"},{"line_number":49,"context_line":"        self.servers_client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        # Record addresses so that we can ssh later"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0TU%3D","line":48,"updated":"2013-03-11 15:54:33.000000000","message":"wait_until","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"8a711571a4742051814a613bec683dab66d38e12","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":48,"context_line":"        resp, server \u003d self.create_server(name, adminPass\u003d\u0027password\u0027)"},{"line_number":49,"context_line":"        self.servers_client.wait_for_server_status(server[\u0027id\u0027], \u0027ACTIVE\u0027)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":52,"context_line":"        resp, server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAN3%2F%2F0TY%3D","line":49,"updated":"2013-03-11 15:54:33.000000000","message":"remove","commit_id":"db2ee6e0c1aa52dd9689d5379cd92a1cc05f601f"},{"author":{"_account_id":1794,"name":"Donald Ngo","email":"donald.ngo@hp.com","username":"donald-ngo"},"change_message_id":"f1981330e2c78b61525f26abc5180f5a53580b36","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def _create_and_attach(self):"},{"line_number":45,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":46,"context_line":"        resp, server \u003d self.create_server(wait_until\u003d\u0027ACTIVE\u0027, adminPass\u003d\u0027password\u0027)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":49,"context_line":"        resp, server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAN3%2F%2Fz%2B8%3D","line":46,"updated":"2013-03-11 18:12:32.000000000","message":"This line seems to be too long and thus fails pep8 checks. Please run pep8 on your changed code prior to checking in.","commit_id":"06515bad8687394a75c4b0b548da40fb5f2dd006"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"1397d4adbf039f3506e1ade4aaf9a49934334929","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def _create_and_attach(self):"},{"line_number":45,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":46,"context_line":"        resp, server \u003d self.create_server(wait_until\u003d\u0027ACTIVE\u0027, adminPass\u003d\u0027password\u0027)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":49,"context_line":"        resp, server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAN3%2F%2Fz9A%3D","line":46,"in_reply_to":"AAAAN3%2F%2Fz%2B8%3D","updated":"2013-03-11 18:26:12.000000000","message":"my bad.. fixing.. thank you!","commit_id":"06515bad8687394a75c4b0b548da40fb5f2dd006"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"a02b5d81436b9cbc2d24fdf206ba2b9b9ab9226e","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        if self.volume:"},{"line_number":48,"context_line":"            self.volumes_client.delete_volume(self.volume[\u0027id\u0027])"},{"line_number":49,"context_line":"            self.volume \u003d None"},{"line_number":50,"context_line":"        if self.server:"},{"line_number":51,"context_line":"            self.servers_client.delete_server(self.server[\u0027id\u0027])"},{"line_number":52,"context_line":"            self.server \u003d None"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAN3%2F%2Fvwg%3D","line":50,"updated":"2013-03-13 23:42:48.000000000","message":"I think this bit (and other references to self.server) isn\u0027t needed anymore?","commit_id":"693b9aade8dde1339c7bb2fbe7100cc4556013bf"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"edb9f4ac8b00bb8151f7f2e41d103fd283953e90","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        if self.volume:"},{"line_number":48,"context_line":"            self.volumes_client.delete_volume(self.volume[\u0027id\u0027])"},{"line_number":49,"context_line":"            self.volume \u003d None"},{"line_number":50,"context_line":"        if self.server:"},{"line_number":51,"context_line":"            self.servers_client.delete_server(self.server[\u0027id\u0027])"},{"line_number":52,"context_line":"            self.server \u003d None"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAN3%2F%2Fu7A%3D","line":50,"in_reply_to":"AAAAN3%2F%2FvHE%3D","updated":"2013-03-14 16:21:04.000000000","message":"hi again chris... mtreinish just explained me what did you mean.. working on it","commit_id":"693b9aade8dde1339c7bb2fbe7100cc4556013bf"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"3f054edeb9cb09c7441252e39d7d1dc6151b06bc","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        if self.volume:"},{"line_number":48,"context_line":"            self.volumes_client.delete_volume(self.volume[\u0027id\u0027])"},{"line_number":49,"context_line":"            self.volume \u003d None"},{"line_number":50,"context_line":"        if self.server:"},{"line_number":51,"context_line":"            self.servers_client.delete_server(self.server[\u0027id\u0027])"},{"line_number":52,"context_line":"            self.server \u003d None"},{"line_number":53,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAN3%2F%2FvHE%3D","line":50,"in_reply_to":"AAAAN3%2F%2Fvwg%3D","updated":"2013-03-14 14:42:15.000000000","message":"Hi cyeoh! thanks for the review.\n\nWell sorry, I didn\u0027t understand, why we don\u0027t need it anymore? Is it related to some recent change on nova? can you point me to that?\n\nAlso I don\u0027t think it is related to the refactor, is it? If we agree on that, I would like to do it in a different patch and get this one done.","commit_id":"693b9aade8dde1339c7bb2fbe7100cc4556013bf"},{"author":{"_account_id":1794,"name":"Donald Ngo","email":"donald.ngo@hp.com","username":"donald-ngo"},"change_message_id":"11a4d4283139b9b1f4a8f1e79c48ceaff4f4a183","unresolved":false,"context_lines":[{"line_number":105,"context_line":"            partitions \u003d linux_client.get_partitions()"},{"line_number":106,"context_line":"            self.assertFalse(self.device in partitions)"},{"line_number":107,"context_line":"        except Exception:"},{"line_number":108,"context_line":"            self.fail(\"The test_attach_detach_volume is faild!\")"},{"line_number":109,"context_line":"        finally:"},{"line_number":110,"context_line":"            if self.attached:"},{"line_number":111,"context_line":"                self._detach(server[\u0027id\u0027], volume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAN3%2F%2FuTA%3D","line":108,"updated":"2013-03-14 22:40:01.000000000","message":"Typo on \"Failed\"","commit_id":"0a1bdff93b959788054c9cb2dd3c03b0811258f8"},{"author":{"_account_id":1794,"name":"Donald Ngo","email":"donald.ngo@hp.com","username":"donald-ngo"},"change_message_id":"11a4d4283139b9b1f4a8f1e79c48ceaff4f4a183","unresolved":false,"context_lines":[{"line_number":106,"context_line":"            self.assertFalse(self.device in partitions)"},{"line_number":107,"context_line":"        except Exception:"},{"line_number":108,"context_line":"            self.fail(\"The test_attach_detach_volume is faild!\")"},{"line_number":109,"context_line":"        finally:"},{"line_number":110,"context_line":"            if self.attached:"},{"line_number":111,"context_line":"                self._detach(server[\u0027id\u0027], volume[\u0027id\u0027])"},{"line_number":112,"context_line":"            # NOTE(maurosr): here we do the cleanup for volume, servers are"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAN3%2F%2FuQk%3D","line":109,"updated":"2013-03-14 22:40:01.000000000","message":"I think a better way is to eliminate the try/finally logic and utilize addCleanup method as you go create resources\n\nFor example :\n        resp, volume \u003d self.volumes_client.create_volume(1,\n                                                         display_name\u003d\u0027test\u0027)\n        self.addCleanup(volume)\n\n        # Attach the volume to the server\n        self.servers_client.attach_volume(server[\u0027id\u0027], volume[\u0027id\u0027],\n                                          device\u003d\u0027/dev/%s\u0027 % self.device)\n        self.addCleanup(self._detach(server[\u0027id\u0027], volume[\u0027id\u0027]))\n\n\nFrom my understanding if their are any exceptions in finally the original exception is masked","commit_id":"0a1bdff93b959788054c9cb2dd3c03b0811258f8"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"05da5b1a0a1da9276a89323edf9d32acfb5d67ef","unresolved":false,"context_lines":[{"line_number":106,"context_line":"            self.assertFalse(self.device in partitions)"},{"line_number":107,"context_line":"        except Exception:"},{"line_number":108,"context_line":"            self.fail(\"The test_attach_detach_volume is faild!\")"},{"line_number":109,"context_line":"        finally:"},{"line_number":110,"context_line":"            if self.attached:"},{"line_number":111,"context_line":"                self._detach(server[\u0027id\u0027], volume[\u0027id\u0027])"},{"line_number":112,"context_line":"            # NOTE(maurosr): here we do the cleanup for volume, servers are"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAN3%2F%2FtyY%3D","line":109,"in_reply_to":"AAAAN3%2F%2FuQk%3D","updated":"2013-03-15 12:54:12.000000000","message":"Donald, that\u0027s true, but that code wasn\u0027t changed in this patch in the first place.","commit_id":"0a1bdff93b959788054c9cb2dd3c03b0811258f8"}]}
