)]}'
{"tempest/api/compute/servers/test_attach_volume.py":[{"author":{"_account_id":97,"name":"Daryl Walleck","email":"daryl.walleck@rackspace.com","username":"dwalleck"},"change_message_id":"a637d1c211c883b4b4193a8d7c1b59e124aca112","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # List Volume attachment of the server"},{"line_number":60,"context_line":"        _, body \u003d self.client.list_volume_attachments(server[\u0027id\u0027])"},{"line_number":61,"context_line":"        self.assertNotEqual(0, len(body))"},{"line_number":62,"context_line":"        self.assertIn(attachment, body)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Get Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAW3%2F%2FZDA%3D","line":61,"updated":"2014-04-14 22:35:55.000000000","message":"Since there should only be one attachment, wouldn\u0027t it make more sense to explicitly check for 1 instead?","commit_id":"537d7077d264a9ed8f6966fd51bee5ae3257299b"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6a348ef59dcccd118a5e1e54aa6741cd4458c7c0","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # List Volume attachment of the server"},{"line_number":60,"context_line":"        _, body \u003d self.client.list_volume_attachments(server[\u0027id\u0027])"},{"line_number":61,"context_line":"        self.assertNotEqual(0, len(body))"},{"line_number":62,"context_line":"        self.assertIn(attachment, body)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Get Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAW3%2F%2FYwI%3D","line":61,"in_reply_to":"AAAAW3%2F%2FZDA%3D","updated":"2014-04-14 23:34:17.000000000","message":"Agree.","commit_id":"537d7077d264a9ed8f6966fd51bee5ae3257299b"},{"author":{"_account_id":97,"name":"Daryl Walleck","email":"daryl.walleck@rackspace.com","username":"dwalleck"},"change_message_id":"a637d1c211c883b4b4193a8d7c1b59e124aca112","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        self.assertEqual(volume[\u0027id\u0027], body[\u0027volumeId\u0027])"},{"line_number":69,"context_line":"        self.assertEqual(attachment[\u0027id\u0027], body[\u0027id\u0027])"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # Detach Volume from server"},{"line_number":72,"context_line":"        self.addCleanup(self._detach, server[\u0027id\u0027], volume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAW3%2F%2FZD8%3D","line":71,"updated":"2014-04-14 22:35:55.000000000","message":"If you\u0027re going through the attach volume lifecycle, you probably want to make sure the volume detaches before ending the test","commit_id":"537d7077d264a9ed8f6966fd51bee5ae3257299b"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"6a348ef59dcccd118a5e1e54aa6741cd4458c7c0","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        self.assertEqual(volume[\u0027id\u0027], body[\u0027volumeId\u0027])"},{"line_number":69,"context_line":"        self.assertEqual(attachment[\u0027id\u0027], body[\u0027id\u0027])"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        # Detach Volume from server"},{"line_number":72,"context_line":"        self.addCleanup(self._detach, server[\u0027id\u0027], volume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAW3%2F%2FYwE%3D","line":71,"in_reply_to":"AAAAW3%2F%2FZD8%3D","updated":"2014-04-14 23:34:17.000000000","message":"That make sense.","commit_id":"537d7077d264a9ed8f6966fd51bee5ae3257299b"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"3edf405343e758ff5e8163401528c109fde2f5b9","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        cls.client \u003d cls.servers_client"},{"line_number":34,"context_line":"        cls.volumes_client \u003d cls.volumes_extensions_client"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def _delete_volume(self, volume_id):"},{"line_number":37,"context_line":"        self.volumes_client.delete_volume(volume_id)"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    @test.attr(type\u003d\u0027gate\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAW3%2F%2FRa0%3D","line":36,"updated":"2014-04-15 16:48:03.000000000","message":"This helper method is useless","commit_id":"57a1dd982d79548dc61613c8eee048b5ea7ca3c4"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"3edf405343e758ff5e8163401528c109fde2f5b9","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        # Create a volume and wait for it to become \u0027available\u0027"},{"line_number":45,"context_line":"        _, volume \u003d self.volumes_client.create_volume("},{"line_number":46,"context_line":"            1, display_name\u003ddata_utils.rand_name(\u0027test_volume-\u0027))"},{"line_number":47,"context_line":"        self.addCleanup(self._delete_volume, volume[\u0027id\u0027])"},{"line_number":48,"context_line":"        self.volumes_client.wait_for_volume_status(volume[\u0027id\u0027], \u0027available\u0027)"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"        # Attach the volume to the server"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAW3%2F%2FRaU%3D","line":47,"updated":"2014-04-15 16:48:03.000000000","message":"self.addCleanup(self.volumes_client.delete_volume, volume[\u0027id\u0027])\n\nshould work","commit_id":"57a1dd982d79548dc61613c8eee048b5ea7ca3c4"}],"tempest/api/compute/volumes/test_attach_volume.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"898e8aab5a0d34217d77cbd6035aa7fafc611e09","unresolved":false,"context_lines":[{"line_number":73,"context_line":"            server[\u0027id\u0027],"},{"line_number":74,"context_line":"            volume[\u0027id\u0027],"},{"line_number":75,"context_line":"            device\u003d\u0027/dev/%s\u0027 % self.device)"},{"line_number":76,"context_line":"        self.attachment \u003d attachment"},{"line_number":77,"context_line":"        self.volumes_client.wait_for_volume_status(volume[\u0027id\u0027], \u0027in-use\u0027)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        self.attached \u003d True"}],"source_content_type":"text/x-python","patch_set":4,"id":"bad4c104_ac81684c","line":76,"updated":"2014-04-29 13:44:44.000000000","message":"Why do you do this? You could just write\n\nself.attachment \u003d self.servers_client.attach_volume(\n    server[\u0027id\u0027],\n    volume[\u0027id\u0027],\n    device\u003d\u0027/dev/%s\u0027 % self.device)[1]","commit_id":"d332758844e978403bd3058956e165d1e7ef9d5f"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"898e8aab5a0d34217d77cbd6035aa7fafc611e09","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        # Create Server, Volume and attach that Volume to Server"},{"line_number":122,"context_line":"        self._create_and_attach()"},{"line_number":123,"context_line":"        server \u003d self.server"},{"line_number":124,"context_line":"        volume \u003d self.volume"},{"line_number":125,"context_line":"        attachment \u003d self.attachment"},{"line_number":126,"context_line":"        # List Volume attachment of the server"},{"line_number":127,"context_line":"        _, body \u003d self.servers_client.list_volume_attachments(server[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"bad4c104_8ccae49f","line":124,"updated":"2014-04-29 13:44:44.000000000","message":"Why do you create new variables? Just use self.server and self.volume","commit_id":"d332758844e978403bd3058956e165d1e7ef9d5f"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"898e8aab5a0d34217d77cbd6035aa7fafc611e09","unresolved":false,"context_lines":[{"line_number":122,"context_line":"        self._create_and_attach()"},{"line_number":123,"context_line":"        server \u003d self.server"},{"line_number":124,"context_line":"        volume \u003d self.volume"},{"line_number":125,"context_line":"        attachment \u003d self.attachment"},{"line_number":126,"context_line":"        # List Volume attachment of the server"},{"line_number":127,"context_line":"        _, body \u003d self.servers_client.list_volume_attachments(server[\u0027id\u0027])"},{"line_number":128,"context_line":"        self.assertEqual(1, len(body))"}],"source_content_type":"text/x-python","patch_set":4,"id":"bad4c104_0c55f4c5","line":125,"updated":"2014-04-29 13:44:44.000000000","message":"ditto","commit_id":"d332758844e978403bd3058956e165d1e7ef9d5f"},{"author":{"_account_id":8824,"name":"Sergey Murashov","email":"smurashov@mirantis.com","username":"SergeyMurashov"},"change_message_id":"b39e402642323d4ef147c053c3d95ada5d38c616","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    def _create_and_attach(self):"},{"line_number":55,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":56,"context_line":"        admin_pass \u003d self.image_ssh_password"},{"line_number":57,"context_line":"        resp, self.server \u003d self.create_test_server(wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":58,"context_line":"                                                    adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_0813ab0d","line":57,"updated":"2014-05-15 12:11:28.000000000","message":"unused variable \"resp\"","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":8824,"name":"Sergey Murashov","email":"smurashov@mirantis.com","username":"SergeyMurashov"},"change_message_id":"b39e402642323d4ef147c053c3d95ada5d38c616","unresolved":false,"context_lines":[{"line_number":58,"context_line":"                                                    adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":61,"context_line":"        resp, self.server[\u0027addresses\u0027] \u003d \\"},{"line_number":62,"context_line":"            self.servers_client.list_addresses(self.server[\u0027id\u0027])"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Create a volume and wait for it to become ready"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_28fb07c2","line":61,"updated":"2014-05-15 12:11:28.000000000","message":"unused variable \"resp\"","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":8824,"name":"Sergey Murashov","email":"smurashov@mirantis.com","username":"SergeyMurashov"},"change_message_id":"b39e402642323d4ef147c053c3d95ada5d38c616","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            self.servers_client.list_addresses(self.server[\u0027id\u0027])"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Create a volume and wait for it to become ready"},{"line_number":65,"context_line":"        resp, self.volume \u003d self.volumes_client.create_volume("},{"line_number":66,"context_line":"            1, display_name\u003d\u0027test\u0027)"},{"line_number":67,"context_line":"        self.addCleanup(self._delete_volume)"},{"line_number":68,"context_line":"        self.volumes_client.wait_for_volume_status(self.volume[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_48f853c3","line":65,"updated":"2014-05-15 12:11:28.000000000","message":"unused variable \"resp\"","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"7b470d5cfbb6684c014f96a0c546a5c197b02d89","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Create a volume and wait for it to become ready"},{"line_number":65,"context_line":"        resp, self.volume \u003d self.volumes_client.create_volume("},{"line_number":66,"context_line":"            1, display_name\u003d\u0027test\u0027)"},{"line_number":67,"context_line":"        self.addCleanup(self._delete_volume)"},{"line_number":68,"context_line":"        self.volumes_client.wait_for_volume_status(self.volume[\u0027id\u0027],"},{"line_number":69,"context_line":"                                                   \u0027available\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_cbd3e136","line":66,"updated":"2014-05-08 14:17:17.000000000","message":"Why don\u0027t you check response status code anywhere?","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8267eaa2eee6204e2c774131ddaccc74e5971efe","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Create a volume and wait for it to become ready"},{"line_number":65,"context_line":"        resp, self.volume \u003d self.volumes_client.create_volume("},{"line_number":66,"context_line":"            1, display_name\u003d\u0027test\u0027)"},{"line_number":67,"context_line":"        self.addCleanup(self._delete_volume)"},{"line_number":68,"context_line":"        self.volumes_client.wait_for_volume_status(self.volume[\u0027id\u0027],"},{"line_number":69,"context_line":"                                                   \u0027available\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_d649bad1","line":66,"in_reply_to":"7adec928_cbd3e136","updated":"2014-05-09 01:40:30.000000000","message":"Actually response status code is already checked at client side (same way as discussed in https://review.openstack.org/#/c/90310/3/tempest/api/compute/v3/admin/test_hosts.py)","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"2a45622e96d9e9a90f1f827cf525295ba8a4be46","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        # Create a volume and wait for it to become ready"},{"line_number":65,"context_line":"        resp, self.volume \u003d self.volumes_client.create_volume("},{"line_number":66,"context_line":"            1, display_name\u003d\u0027test\u0027)"},{"line_number":67,"context_line":"        self.addCleanup(self._delete_volume)"},{"line_number":68,"context_line":"        self.volumes_client.wait_for_volume_status(self.volume[\u0027id\u0027],"},{"line_number":69,"context_line":"                                                   \u0027available\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7adec928_0d506831","line":66,"in_reply_to":"7adec928_d649bad1","updated":"2014-05-09 11:55:01.000000000","message":"Thanks, I understood.","commit_id":"dd54b6271e492faa0eef4ffc1e3d1e3ff76966fd"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0d3017e4bc1c3e383949caef667bd284d2339bb1","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":56,"context_line":"        admin_pass \u003d self.image_ssh_password"},{"line_number":57,"context_line":"        _, self.server \u003d self.create_test_server(wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":58,"context_line":"                                                 adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":61,"context_line":"        _, self.server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_30d3f039","line":58,"updated":"2014-05-27 03:46:31.000000000","message":"Please don\u0027t mix cleanup and new tests for easy review and keeping the scope clear.","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4dbdc776311b84f763794d353f345bd2f5db7a3c","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":56,"context_line":"        admin_pass \u003d self.image_ssh_password"},{"line_number":57,"context_line":"        _, self.server \u003d self.create_test_server(wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":58,"context_line":"                                                 adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":61,"context_line":"        _, self.server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_eb48bdce","line":58,"in_reply_to":"3ae8d1ca_30d3f039","updated":"2014-05-27 05:23:02.000000000","message":"Yes, totally agree :).\nI will take care next time.","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0d3017e4bc1c3e383949caef667bd284d2339bb1","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    def test_list_get_volume_attachments(self):"},{"line_number":119,"context_line":"        if self._interface \u003d\u003d \u0027xml\u0027:"},{"line_number":120,"context_line":"            skip_msg \u003d (\"Skipped for XML as XML support is deprecated\")"},{"line_number":121,"context_line":"            raise self.skipException(skip_msg)"},{"line_number":122,"context_line":"        # Create Server, Volume and attach that Volume to Server"},{"line_number":123,"context_line":"        self._create_and_attach()"},{"line_number":124,"context_line":"        # List Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_90e20402","line":121,"updated":"2014-05-27 03:46:31.000000000","message":"We can use a decorator\n\n@test.skip_because(bug\u003d\"1261964\", interface\u003d\"xml\")\n\ninstead of line119-121.\n\nThe sample is tempest/api/compute/admin/test_hosts_negative.py","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4dbdc776311b84f763794d353f345bd2f5db7a3c","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    def test_list_get_volume_attachments(self):"},{"line_number":119,"context_line":"        if self._interface \u003d\u003d \u0027xml\u0027:"},{"line_number":120,"context_line":"            skip_msg \u003d (\"Skipped for XML as XML support is deprecated\")"},{"line_number":121,"context_line":"            raise self.skipException(skip_msg)"},{"line_number":122,"context_line":"        # Create Server, Volume and attach that Volume to Server"},{"line_number":123,"context_line":"        self._create_and_attach()"},{"line_number":124,"context_line":"        # List Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_cbf4e189","line":121,"in_reply_to":"3ae8d1ca_90e20402","updated":"2014-05-27 05:23:02.000000000","message":"Thanks. That will be nice. \nBut my only concern is - is it fine to mention this bug number as it is related to host API?\nI know this bug will be fixed only when nova will remove XML support so will fix this xml case also:).\nJust need your opinion on this.","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"8c3186735d6e315f11bf1c58630c8965d8905ee6","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    def test_list_get_volume_attachments(self):"},{"line_number":119,"context_line":"        if self._interface \u003d\u003d \u0027xml\u0027:"},{"line_number":120,"context_line":"            skip_msg \u003d (\"Skipped for XML as XML support is deprecated\")"},{"line_number":121,"context_line":"            raise self.skipException(skip_msg)"},{"line_number":122,"context_line":"        # Create Server, Volume and attach that Volume to Server"},{"line_number":123,"context_line":"        self._create_and_attach()"},{"line_number":124,"context_line":"        # List Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_f2ac2538","line":121,"in_reply_to":"3ae8d1ca_97caf39f","updated":"2014-05-27 10:47:37.000000000","message":"Done.","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"7b301f08a941da6a6cccbe76eabbbbd642aff109","unresolved":false,"context_lines":[{"line_number":118,"context_line":"    def test_list_get_volume_attachments(self):"},{"line_number":119,"context_line":"        if self._interface \u003d\u003d \u0027xml\u0027:"},{"line_number":120,"context_line":"            skip_msg \u003d (\"Skipped for XML as XML support is deprecated\")"},{"line_number":121,"context_line":"            raise self.skipException(skip_msg)"},{"line_number":122,"context_line":"        # Create Server, Volume and attach that Volume to Server"},{"line_number":123,"context_line":"        self._create_and_attach()"},{"line_number":124,"context_line":"        # List Volume attachment of the server"}],"source_content_type":"text/x-python","patch_set":6,"id":"3ae8d1ca_97caf39f","line":121,"in_reply_to":"3ae8d1ca_cbf4e189","updated":"2014-05-27 09:48:50.000000000","message":"ah, yes. that is a nice point.\n\nit would be better to submit another bug report which said we don\u0027t need to implement xml clients for nova api tests.","commit_id":"dc22701ba581e1a045da1f9d6c243b2cf2954ea2"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"d0fce43e0dd4b57a5a6ecb19ea9c4ecfda582ea5","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":56,"context_line":"        admin_pass \u003d self.image_ssh_password"},{"line_number":57,"context_line":"        _, self.server \u003d self.create_test_server(wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":58,"context_line":"                                                 adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":61,"context_line":"        _, self.server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":7,"id":"1ae5cdf2_85fedd36","line":58,"updated":"2014-06-03 02:45:08.000000000","message":"The above change(resp -\u003e _) should be out of scope from this patch, because this patch purpose is not cleanup.\n\nPlease split the part of cleanup from this patch and create the other patch if necessary.\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Structural_split_of_changes","commit_id":"ae535de4bd420c4c72edce1eb3114642809b18b3"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"b4ff8b7a7ff9c6464ae4758b194b1bb0aea5b167","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        # Start a server and wait for it to become ready"},{"line_number":56,"context_line":"        admin_pass \u003d self.image_ssh_password"},{"line_number":57,"context_line":"        _, self.server \u003d self.create_test_server(wait_until\u003d\u0027ACTIVE\u0027,"},{"line_number":58,"context_line":"                                                 adminPass\u003dadmin_pass)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"        # Record addresses so that we can ssh later"},{"line_number":61,"context_line":"        _, self.server[\u0027addresses\u0027] \u003d \\"}],"source_content_type":"text/x-python","patch_set":7,"id":"1ae5cdf2_894c3772","line":58,"in_reply_to":"1ae5cdf2_85fedd36","updated":"2014-06-03 02:54:07.000000000","message":"Done for this patch. I will do the cleanup in separate patch.","commit_id":"ae535de4bd420c4c72edce1eb3114642809b18b3"}],"tempest/services/compute/json/servers_client.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"6a4ba9d3742c718e1672c9b982e0f17af68e492d","unresolved":false,"context_lines":[{"line_number":335,"context_line":"                                 (server_id, volume_id))"},{"line_number":336,"context_line":"        return resp, body"},{"line_number":337,"context_line":""},{"line_number":338,"context_line":"    def get_volume_attachments(self, server_id, attach_id):"},{"line_number":339,"context_line":"        \"\"\"Return details about the given volume attachment.\"\"\""},{"line_number":340,"context_line":"        resp, body \u003d self.get(\u0027servers/%s/os-volume_attachments/%s\u0027 % ("},{"line_number":341,"context_line":"            str(server_id), attach_id))"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAXH%2F%2FXSI%3D","line":338,"updated":"2014-04-22 09:44:43.000000000","message":"This should be get_volume_attachment, without the final s. Because this method returns at most one attachment.\n\nThe API call is called \"os-volume_attachments\" with a S because it has to account for the fact that the last argument (/attachment_id) could be missing. But in this wrapper I believe attach_id is intented to be mandatory.","commit_id":"aae86c7438cba2a31629696028700bd5d6590973"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"4334f33e102cc655e3e2d36223f06ed0c44a5cb9","unresolved":false,"context_lines":[{"line_number":335,"context_line":"                                 (server_id, volume_id))"},{"line_number":336,"context_line":"        return resp, body"},{"line_number":337,"context_line":""},{"line_number":338,"context_line":"    def get_volume_attachments(self, server_id, attach_id):"},{"line_number":339,"context_line":"        \"\"\"Return details about the given volume attachment.\"\"\""},{"line_number":340,"context_line":"        resp, body \u003d self.get(\u0027servers/%s/os-volume_attachments/%s\u0027 % ("},{"line_number":341,"context_line":"            str(server_id), attach_id))"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAXH%2F%2FXLs%3D","line":338,"in_reply_to":"AAAAXH%2F%2FXSI%3D","updated":"2014-04-22 09:53:00.000000000","message":"Thanks Jordan for information. I will change the name.","commit_id":"aae86c7438cba2a31629696028700bd5d6590973"}]}
