)]}'
{"tempest/api/compute/servers/test_delete_server.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f21169efcb0738d2ae40cb218a9fb7a3d34e2505","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        self.assertEqual(\u0027204\u0027, resp[\u0027status\u0027])"},{"line_number":117,"context_line":"        self.client.wait_for_server_termination(server[\u0027id\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    @testtools.skipIf(not CONF.service_available.cinder,"},{"line_number":120,"context_line":"                      \u0027Cinder not available.\u0027)"},{"line_number":121,"context_line":"    @test.attr(type\u003d\u0027gate\u0027)"},{"line_number":122,"context_line":"    def test_delete_server_while_in_attached_volume(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_66aa1d72","line":119,"updated":"2014-10-30 17:41:46.000000000","message":"You should use the service decorator to do this. It has the double effect of skipping if cinder isn\u0027t available and also tagging the test as doing volume operations. For an example see:\n\nhttp://git.openstack.org/cgit/openstack/tempest/tree/tempest/api/volume/test_volumes_actions.py#n56","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":12536,"name":"Michael Hudson-Doyle","email":"michael.hudson@canonical.com","username":"mwhudson"},"change_message_id":"48a6c417ef8c328b9ff6cfbded39a87febb50e5c","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        self.assertEqual(\u0027204\u0027, resp[\u0027status\u0027])"},{"line_number":117,"context_line":"        self.client.wait_for_server_termination(server[\u0027id\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    @testtools.skipIf(not CONF.service_available.cinder,"},{"line_number":120,"context_line":"                      \u0027Cinder not available.\u0027)"},{"line_number":121,"context_line":"    @test.attr(type\u003d\u0027gate\u0027)"},{"line_number":122,"context_line":"    def test_delete_server_while_in_attached_volume(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_db746a9e","line":119,"in_reply_to":"7a8c0949_66aa1d72","updated":"2014-11-03 02:18:42.000000000","message":"Done","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"}],"tempest/api/compute/servers/test_server_rescue.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f21169efcb0738d2ae40cb218a9fb7a3d34e2505","unresolved":false,"context_lines":[{"line_number":28,"context_line":"        if not CONF.compute_feature_enabled.rescue:"},{"line_number":29,"context_line":"            msg \u003d \"Server rescue not available.\""},{"line_number":30,"context_line":"            raise cls.skipException(msg)"},{"line_number":31,"context_line":"        if not CONF.service_available.cinder:"},{"line_number":32,"context_line":"            skip_msg \u003d (\"%s skipped as Cinder is not available\" % cls.__name__)"},{"line_number":33,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_c6e751e3","line":31,"updated":"2014-10-30 17:41:46.000000000","message":"Do all the tests in this file require cinder being available? Or is this just because the volume creation is done in the resource_setup?","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":12536,"name":"Michael Hudson-Doyle","email":"michael.hudson@canonical.com","username":"mwhudson"},"change_message_id":"48a6c417ef8c328b9ff6cfbded39a87febb50e5c","unresolved":false,"context_lines":[{"line_number":28,"context_line":"        if not CONF.compute_feature_enabled.rescue:"},{"line_number":29,"context_line":"            msg \u003d \"Server rescue not available.\""},{"line_number":30,"context_line":"            raise cls.skipException(msg)"},{"line_number":31,"context_line":"        if not CONF.service_available.cinder:"},{"line_number":32,"context_line":"            skip_msg \u003d (\"%s skipped as Cinder is not available\" % cls.__name__)"},{"line_number":33,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_fb792694","line":31,"in_reply_to":"7a8c0949_c6e751e3","updated":"2014-11-03 02:18:42.000000000","message":"Would you believe none of them do? :) Removed the volume creation code.","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"98527fa55abe20068c879f51a63071bfced20d5f","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        if not CONF.service_available.cinder:"},{"line_number":32,"context_line":"            skip_msg \u003d (\"%s skipped as Cinder is not available\" % cls.__name__)"},{"line_number":33,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"        cls.set_network_resources(network\u003dTrue, subnet\u003dTrue, router\u003dTrue)"},{"line_number":36,"context_line":"        super(ServerRescueTestJSON, cls).resource_setup()"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_9a6583e3","line":34,"updated":"2014-11-01 02:34:03.000000000","message":"resource_setup() called bedore running tests , if cinder is not available i expect to raise skip message .\nif cinder is not used in other tests , we can remove it from resource_setup and add cinder to needed test .\n+1","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":8623,"name":"Kaitlin Farr","email":"kaitlin.farr@jhuapl.edu","username":"kaitlin.farr"},"change_message_id":"3b81fb15cc9e3a7a47152c2094a4e8aeb241845d","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                                                             cls.sg_desc)"},{"line_number":46,"context_line":"        cls.sg_id \u003d cls.sg[\u0027id\u0027]"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"        # Create a volume and wait for it to become ready for attach"},{"line_number":49,"context_line":"        resp, cls.volume \u003d cls.volumes_extensions_client.create_volume("},{"line_number":50,"context_line":"            1, display_name\u003ddata_utils.rand_name(cls.__name__ + \u0027_volume\u0027))"},{"line_number":51,"context_line":"        cls.volumes_extensions_client.wait_for_volume_status("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_574afbac","side":"PARENT","line":48,"updated":"2014-11-04 17:02:58.000000000","message":"Good catch!","commit_id":"912cb9331059daff2965e2bcf65e1003297d0601"}],"tempest/api/compute/servers/test_server_rescue_negative.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"f21169efcb0738d2ae40cb218a9fb7a3d34e2505","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        if not CONF.compute_feature_enabled.rescue:"},{"line_number":31,"context_line":"            msg \u003d \"Server rescue not available.\""},{"line_number":32,"context_line":"            raise cls.skipException(msg)"},{"line_number":33,"context_line":"        if not CONF.service_available.cinder:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as Cinder is not available\" % cls.__name__)"},{"line_number":35,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_e6ec4dca","line":33,"updated":"2014-10-30 17:41:46.000000000","message":"Same question here?","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":12536,"name":"Michael Hudson-Doyle","email":"michael.hudson@canonical.com","username":"mwhudson"},"change_message_id":"48a6c417ef8c328b9ff6cfbded39a87febb50e5c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        if not CONF.compute_feature_enabled.rescue:"},{"line_number":31,"context_line":"            msg \u003d \"Server rescue not available.\""},{"line_number":32,"context_line":"            raise cls.skipException(msg)"},{"line_number":33,"context_line":"        if not CONF.service_available.cinder:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as Cinder is not available\" % cls.__name__)"},{"line_number":35,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"7a8c0949_3b748e98","line":33,"in_reply_to":"7a8c0949_e6ec4dca","updated":"2014-11-03 02:18:42.000000000","message":"Two of them do, I\u0027ve moved the volume creation code into them and skipped it.  I don\u0027t bother trying to share the volume between the two cases, would that be worth doing?","commit_id":"29a5b53e2d01d30d6fbbc62aca6e3e065bc3ad1b"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"db91b9cc09c8785d6388fc8bf8b461434f4dfbe3","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                self.__class__.__name__ + \u0027_volume\u0027))"},{"line_number":55,"context_line":"        self.volumes_extensions_client.wait_for_volume_status("},{"line_number":56,"context_line":"            volume[\u0027id\u0027], \u0027available\u0027)"},{"line_number":57,"context_line":"        self.addCleanup(self.delete_volume, volume[\u0027id\u0027])"},{"line_number":58,"context_line":"        return volume"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def _detach(self, server_id, volume_id):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_fa182b77","line":57,"updated":"2014-11-05 05:15:27.000000000","message":"this cleanup should be added before wait_for_volume_status","commit_id":"b9326adac02ebde43359c037eacdbc1d599c132e"},{"author":{"_account_id":12536,"name":"Michael Hudson-Doyle","email":"michael.hudson@canonical.com","username":"mwhudson"},"change_message_id":"ba30c556d01330d001c44ea48e04acf5646029eb","unresolved":false,"context_lines":[{"line_number":54,"context_line":"                self.__class__.__name__ + \u0027_volume\u0027))"},{"line_number":55,"context_line":"        self.volumes_extensions_client.wait_for_volume_status("},{"line_number":56,"context_line":"            volume[\u0027id\u0027], \u0027available\u0027)"},{"line_number":57,"context_line":"        self.addCleanup(self.delete_volume, volume[\u0027id\u0027])"},{"line_number":58,"context_line":"        return volume"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def _detach(self, server_id, volume_id):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_aae80311","line":57,"in_reply_to":"7a8c0949_fa182b77","updated":"2014-11-05 20:21:24.000000000","message":"Done","commit_id":"b9326adac02ebde43359c037eacdbc1d599c132e"}]}
