)]}'
{"tempest/api/compute/images/test_image_metadata.py":[{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"5d820b988e847c7a4ae2f4c25bb45142e5317900","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":35,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":36,"context_line":"                        % cls.__name__)"},{"line_number":37,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_e2b54d32","line":35,"updated":"2014-06-22 07:34:33.000000000","message":"Should this test really be skipped if no snapshot is available?\nMaybe change it to use regular image - will be slower bu still work\nsee below","commit_id":"7622c3f7a5b07242eddd1c14d66fb197af2a30a9"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"5d820b988e847c7a4ae2f4c25bb45142e5317900","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        resp, server \u003d cls.create_test_server(wait_until\u003d\u0027ACTIVE\u0027)"},{"line_number":43,"context_line":"        cls.server_id \u003d server[\u0027id\u0027]"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        # Snapshot the server once to save time"},{"line_number":46,"context_line":"        name \u003d data_utils.rand_name(\u0027image\u0027)"},{"line_number":47,"context_line":"        resp, _ \u003d cls.client.create_image(cls.server_id, name, {})"},{"line_number":48,"context_line":"        cls.image_id \u003d resp[\u0027location\u0027].rsplit(\u0027/\u0027, 1)[1]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_02b15943","line":45,"updated":"2014-06-22 07:34:33.000000000","message":"change here to not use snapshot","commit_id":"7622c3f7a5b07242eddd1c14d66fb197af2a30a9"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"258744db611a56921d68116cc056dc09f40a1f10","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":34,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":37,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":38,"context_line":"        cls.image_id \u003d None"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_fc385cf0","line":36,"updated":"2014-06-24 05:12:35.000000000","message":"I\u0027m not very sure if this update is right as this tests is nova image tests, not glance tests.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":1420,"name":"Adam Gandelman","email":"adamg@ubuntu.com","username":"gandelman-a"},"change_message_id":"1d2a5fd1bb7bbe0a112d814808ed06c8e7094f6a","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":34,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":37,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":38,"context_line":"        cls.image_id \u003d None"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_e89dac0b","line":36,"in_reply_to":"1ae5cdf2_0f2d8cfd","updated":"2014-06-25 19:23:52.000000000","message":"I disagree. The tests here are not testing anything to do with snapshotting, only  testing metadata associated with an existing image.  The tests do not care whether the image used is created by a snapshot or otherwise, the image is merely a test fixture.  Relying instead of Glance, we simplify setup, reduce potential for unrelated errors during instance spawn/snapshot, and avoid having to spawn a new instance entirely (reduces time of test case dramatically)","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"1006f7b7cfbe375fc9153282e1f72828682c3cf7","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":34,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":37,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":38,"context_line":"        cls.image_id \u003d None"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_8196994a","line":36,"in_reply_to":"1ae5cdf2_5ddac9e9","updated":"2014-07-04 09:04:05.000000000","message":"The only downside of this approach is that it requires a glance public endpoint when testing on a public cloud.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"a5eed70ac988ba06dc79df4c3cef9b06d042be4f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":34,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":37,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":38,"context_line":"        cls.image_id \u003d None"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_5ddac9e9","line":36,"in_reply_to":"1ae5cdf2_e89dac0b","updated":"2014-06-26 08:53:15.000000000","message":"Adam is right :) I am convinced, thanks for the explanation.\n\nMoreover these tests are already dependant on glance being available so using the glance_client seems not that bad.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"85d639c93a8a3ad421e3a73becd0a1bb77d86c3c","unresolved":false,"context_lines":[{"line_number":33,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":34,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":37,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":38,"context_line":"        cls.image_id \u003d None"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_0f2d8cfd","line":36,"in_reply_to":"1ae5cdf2_fc385cf0","updated":"2014-06-25 14:29:08.000000000","message":"I agree with Zhi. Maybe you could just skip the tests that really rely on the instance snapshot, if the new snapshot flag is set to False.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"}],"tempest/api/compute/images/test_images_negative.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"85d639c93a8a3ad421e3a73becd0a1bb77d86c3c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":31,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":35,"context_line":"                        % cls.__name__)"},{"line_number":36,"context_line":"            raise cls.skipException(skip_msg)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_2aaa3685","line":33,"updated":"2014-06-25 14:29:08.000000000","message":"In this class there\u0027s several tests that don\u0027t require the snapshot feature (see test_delete_image_non_hex_string_id, test_delete_image_blank_id etc.)\n\nCould you use the @testtools.skipUnless decorator on a test by test basis ?","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":1420,"name":"Adam Gandelman","email":"adamg@ubuntu.com","username":"gandelman-a"},"change_message_id":"1d2a5fd1bb7bbe0a112d814808ed06c8e7094f6a","unresolved":false,"context_lines":[{"line_number":30,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":31,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":35,"context_line":"                        % cls.__name__)"},{"line_number":36,"context_line":"            raise cls.skipException(skip_msg)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_888c28d9","line":33,"in_reply_to":"1ae5cdf2_2aaa3685","updated":"2014-06-25 19:23:52.000000000","message":"I was originally going to do that but it feels strange to have a negative test running while its non-negative equiv is skipped?","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"a5eed70ac988ba06dc79df4c3cef9b06d042be4f","unresolved":false,"context_lines":[{"line_number":30,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":31,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":35,"context_line":"                        % cls.__name__)"},{"line_number":36,"context_line":"            raise cls.skipException(skip_msg)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_dd9419ea","line":33,"in_reply_to":"1ae5cdf2_888c28d9","updated":"2014-06-26 08:53:15.000000000","message":"I don\u0027t know if it feels strange or not, but if you like it that way, I am fine with it.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"1006f7b7cfbe375fc9153282e1f72828682c3cf7","unresolved":false,"context_lines":[{"line_number":30,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":31,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":34,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":35,"context_line":"                        % cls.__name__)"},{"line_number":36,"context_line":"            raise cls.skipException(skip_msg)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_e1be75ad","line":33,"in_reply_to":"1ae5cdf2_dd9419ea","updated":"2014-07-04 09:04:05.000000000","message":"Adam I think it feels strange because if there is no snapshot functionality available in a cloud, there are not going to be snapshots around available for deletion.\nOne could still upload private images via glance (as you did in the other test), but it would still be possible to delete them via nova, so the negative tests below make sense even without snapshot.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"}],"tempest/api/compute/images/test_list_image_filters.py":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"1006f7b7cfbe375fc9153282e1f72828682c3cf7","unresolved":false,"context_lines":[{"line_number":32,"context_line":"            skip_msg \u003d (\"%s skipped as glance 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":"        if not CONF.compute_feature_enabled.snapshot:"},{"line_number":36,"context_line":"            skip_msg \u003d (\"%s skipped as instance snapshotting is not supported\""},{"line_number":37,"context_line":"                        % cls.__name__)"},{"line_number":38,"context_line":"            raise cls.skipException(skip_msg)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_0114499e","line":35,"updated":"2014-07-04 09:04:05.000000000","message":"Some of the tests below could still be run if you created images via glance.","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"72aac4a7051fcd50a9769399c7bddb40b89466ad","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        if not CONF.service_available.glance:"},{"line_number":37,"context_line":"            skip_msg \u003d (\"%s skipped as glance is not available\" % cls.__name__)"},{"line_number":38,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        cls.client \u003d cls.images_client"},{"line_number":41,"context_line":"        cls.glance_client \u003d cls.os.image_client"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7ac7a964_06885b1e","line":39,"updated":"2014-08-14 19:12:03.000000000","message":"Whitespace change...","commit_id":"4e372d60560bd7f63cbba19de7b2a5bc87a9092b"}],"tempest/scenario/test_stamp_pattern.py":[{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"5d820b988e847c7a4ae2f4c25bb45142e5317900","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    @tempest.test.skip_because(bug\u003d\"1205344\")"},{"line_number":154,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.snapshot,"},{"line_number":155,"context_line":"                          \u0027Snapshotting is not available.\u0027)"},{"line_number":156,"context_line":"    @tempest.test.services(\u0027compute\u0027, \u0027network\u0027, \u0027volume\u0027, \u0027image\u0027)"},{"line_number":157,"context_line":"    def test_stamp_pattern(self):"},{"line_number":158,"context_line":"        # prepare for booting a instance"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_02887969","line":155,"updated":"2014-06-22 07:34:33.000000000","message":"why is this skip not in setUpClass like the rest of the patch?","commit_id":"7622c3f7a5b07242eddd1c14d66fb197af2a30a9"},{"author":{"_account_id":1420,"name":"Adam Gandelman","email":"adamg@ubuntu.com","username":"gandelman-a"},"change_message_id":"912c6ab99c4cfa646abc924342a3b3f029e93eb0","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    @tempest.test.skip_because(bug\u003d\"1205344\")"},{"line_number":154,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.snapshot,"},{"line_number":155,"context_line":"                          \u0027Snapshotting is not available.\u0027)"},{"line_number":156,"context_line":"    @tempest.test.services(\u0027compute\u0027, \u0027network\u0027, \u0027volume\u0027, \u0027image\u0027)"},{"line_number":157,"context_line":"    def test_stamp_pattern(self):"},{"line_number":158,"context_line":"        # prepare for booting a instance"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_ac06b883","line":155,"in_reply_to":"1ae5cdf2_02887969","updated":"2014-06-23 17:54:02.000000000","message":"mostly an attempt to stay consistent to the rest of the local test file wrt how things were being skipped (decorators vs in-line conditionals). i\u0027d prefer to migrate all of the conditionals to decorators, but that is for another patch","commit_id":"7622c3f7a5b07242eddd1c14d66fb197af2a30a9"},{"author":{"_account_id":8576,"name":"Yair Fried","email":"yfried@redhat.com","username":"yfried"},"change_message_id":"c657217ad83d5c6de10ba28879880e8545924df8","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    @tempest.test.skip_because(bug\u003d\"1205344\")"},{"line_number":154,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.snapshot,"},{"line_number":155,"context_line":"                          \u0027Snapshotting is not available.\u0027)"},{"line_number":156,"context_line":"    @tempest.test.services(\u0027compute\u0027, \u0027network\u0027, \u0027volume\u0027, \u0027image\u0027)"},{"line_number":157,"context_line":"    def test_stamp_pattern(self):"},{"line_number":158,"context_line":"        # prepare for booting a instance"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_6cdf50d7","line":155,"in_reply_to":"1ae5cdf2_ac06b883","updated":"2014-06-23 17:59:02.000000000","message":"the way things are now, setUpClass and setUp are executed BEFORE the decorator is evaluated, and since this is the only test in the class, this means they will be executed (as well as tearDown) for nothing. putting the skip in setUpClass saves time.","commit_id":"7622c3f7a5b07242eddd1c14d66fb197af2a30a9"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"670ac33754539e4df1066298740ba321b3000859","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    @tempest.test.skip_because(bug\u003d\"1205344\")"},{"line_number":154,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.snapshot,"},{"line_number":155,"context_line":"                          \u0027Snapshotting is not available.\u0027)"},{"line_number":156,"context_line":"    @tempest.test.services(\u0027compute\u0027, \u0027network\u0027, \u0027volume\u0027, \u0027image\u0027)"},{"line_number":157,"context_line":"    def test_stamp_pattern(self):"},{"line_number":158,"context_line":"        # prepare for booting a instance"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_84479276","line":155,"updated":"2014-07-04 01:41:24.000000000","message":"suggestion only: move that to the setUpClass as it happens to the cinder volume snapshot flag","commit_id":"e70904e9df085edce88d3d7be415617e7e37b205"}]}
