)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"c4ecef9e276a843d3252dcee19e6c82a98d3f587","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Benny Kopilov \u003cbkopilov@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-09-29 06:23:22 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Cinder rate-limits tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added:"},{"line_number":10,"context_line":"- show cinder rate-limit api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a98d1f4_db516864","line":7,"updated":"2016-09-29 04:32:01.000000000","message":"This should be changed to absolute limits?","commit_id":"482d57dc3b5f9a250a279c687f5694cbcac71f7a"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"039818f48ebeb3c4b03cde12231a28e083ce6d8e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Benny Kopilov \u003cbkopilov@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-09-29 06:23:22 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Cinder rate-limits tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added:"},{"line_number":10,"context_line":"- show cinder rate-limit api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a98d1f4_db86c8b8","line":7,"in_reply_to":"3a98d1f4_db516864","updated":"2016-09-29 04:39:16.000000000","message":"Thank you , i will fix it","commit_id":"482d57dc3b5f9a250a279c687f5694cbcac71f7a"}],"tempest/api/volume/admin/test_volume_absolute_limits.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"96dcd91dd09dd74d8366e584bb58f0d9d9cc4915","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class VolumeAbsoluteLimitsAdminV2TestsJSON(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a98d1f4_01c51a8d","line":24,"updated":"2016-09-29 08:32:26.000000000","message":"No need for JSON anymore. We do only json.\n\nAlso, this should be just \"class AbsoluteLimitsAdminV2Tests\" because you can have absolute limits for a lot more than just volume (backups, snapshots etc...)","commit_id":"2ea7c1f8196549fb66d0bf3c11445d08ee5c630d"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91457fec5c202545b7d90c3139eabdf339ae6072","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class VolumeAbsoluteLimitsAdminV2TestsJSON(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a98d1f4_61741e35","line":24,"in_reply_to":"3a98d1f4_01c51a8d","updated":"2016-09-29 08:39:16.000000000","message":"Yes , i liked the idea .\nThanks !","commit_id":"2ea7c1f8196549fb66d0bf3c11445d08ee5c630d"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"96dcd91dd09dd74d8366e584bb58f0d9d9cc4915","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        self.assertEqual(absolute_limits[\u0027totalBackupGigabytesUsed\u0027], 0)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class VolumeRateLimitsAdminV1TestsJSON(VolumeAbsoluteLimitsAdminV2TestsJSON):"},{"line_number":48,"context_line":"    _api_version \u003d 1"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a98d1f4_01defa6c","line":47,"updated":"2016-09-29 08:32:26.000000000","message":"This class should be renamed.","commit_id":"2ea7c1f8196549fb66d0bf3c11445d08ee5c630d"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91457fec5c202545b7d90c3139eabdf339ae6072","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        self.assertEqual(absolute_limits[\u0027totalBackupGigabytesUsed\u0027], 0)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class VolumeRateLimitsAdminV1TestsJSON(VolumeAbsoluteLimitsAdminV2TestsJSON):"},{"line_number":48,"context_line":"    _api_version \u003d 1"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a98d1f4_a1946637","line":47,"in_reply_to":"3a98d1f4_01defa6c","updated":"2016-09-29 08:39:16.000000000","message":"ok","commit_id":"2ea7c1f8196549fb66d0bf3c11445d08ee5c630d"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"e833351f2785d7a9285a8aa71a183b66788c44b6","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class AbsoluteLimitsAdminV2Tests(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5da102_63ca3770","line":24,"updated":"2016-10-31 10:51:03.000000000","message":"Why is this an \u0027admin\u0027 test ? The API is also allowed for non-admin user. In devstack:\n\n   source openrc demo demo \u0026\u0026 cinder absolute-limits\n\nworks fine","commit_id":"149260b0de0372dff565ac0a4dea7c3898febd45"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"a0b89b61177b96817e0ecbcd05b484f4372f8324","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class AbsoluteLimitsAdminV2Tests(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5da102_fe57bcff","line":24,"in_reply_to":"ba5da102_63ca3770","updated":"2016-10-31 11:17:47.000000000","message":"Yes , thank you . i would prefer to move it to non-admin as you suggested.","commit_id":"149260b0de0372dff565ac0a4dea7c3898febd45"}],"tempest/api/volume/admin/test_volume_rate_limits.py":[{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"e9b238fac9c13d527b6ff9f9fb0a0d28671c22ff","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    @test.idempotent_id(\u00278e943f53-e9d6-4272-b2e9-adcf2f7c29ad\u0027)"},{"line_number":33,"context_line":"    def test_get_volume_limits(self):"},{"line_number":34,"context_line":"        # get volume limit for a tenant"},{"line_number":35,"context_line":"        limits \u003d self.\\"},{"line_number":36,"context_line":"            volumes_client.show_volume_rate_limits()[\u0027limits\u0027][\u0027absolute\u0027]"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_fc12dcb2","line":34,"range":{"start_line":34,"start_character":21,"end_line":34,"end_character":26},"updated":"2016-06-14 06:43:56.000000000","message":"nit: limits","commit_id":"2bf3e73822a850e453ef8e60d8587608b3685b45"},{"author":{"_account_id":4727,"name":"Itzik Brown","email":"itzikb@redhat.com","username":"itzikb1"},"change_message_id":"e9b238fac9c13d527b6ff9f9fb0a0d28671c22ff","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        limits \u003d self.\\"},{"line_number":36,"context_line":"            volumes_client.show_volume_rate_limits()[\u0027limits\u0027][\u0027absolute\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        # verify volume limits and defaults per tenants"},{"line_number":39,"context_line":"        self.assertEqual(limits[\u0027totalGigabytesUsed\u0027], CONF.volume.volume_size)"},{"line_number":40,"context_line":"        self.assertEqual(limits[\u0027totalVolumesUsed\u0027], 1)"},{"line_number":41,"context_line":"        self.assertEqual(limits[\u0027totalSnapshotsUsed\u0027], 0)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_dc30c058","line":38,"range":{"start_line":38,"start_character":10,"end_line":38,"end_character":55},"updated":"2016-06-14 06:43:56.000000000","message":"Don\u0027t we want also the Maximum values?","commit_id":"2bf3e73822a850e453ef8e60d8587608b3685b45"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"e811cba2473d2914be0b8d1ec6cf557d9bc2a06d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        limits \u003d self.\\"},{"line_number":36,"context_line":"            volumes_client.show_volume_rate_limits()[\u0027limits\u0027][\u0027absolute\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        # verify volume limits and defaults per tenants"},{"line_number":39,"context_line":"        self.assertEqual(limits[\u0027totalGigabytesUsed\u0027], CONF.volume.volume_size)"},{"line_number":40,"context_line":"        self.assertEqual(limits[\u0027totalVolumesUsed\u0027], 1)"},{"line_number":41,"context_line":"        self.assertEqual(limits[\u0027totalSnapshotsUsed\u0027], 0)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aa08908_bc9054ee","line":38,"range":{"start_line":38,"start_character":10,"end_line":38,"end_character":55},"in_reply_to":"7aa08908_dc30c058","updated":"2016-06-14 06:46:26.000000000","message":"Hi  Itzik , \nThanks for your time , \nThe test checks current used values and not max.\nThe max value is a default value .","commit_id":"2bf3e73822a850e453ef8e60d8587608b3685b45"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"364afd39ff915c960ee5796a065463a4e80f3362","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    def test_get_volume_limits(self):"},{"line_number":34,"context_line":"        # get volume limit for a tenant"},{"line_number":35,"context_line":"        limits \u003d self.\\"},{"line_number":36,"context_line":"            volumes_client.show_volume_rate_limits()[\u0027limits\u0027][\u0027absolute\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        # verify volume limits and defaults per tenants"},{"line_number":39,"context_line":"        self.assertEqual(limits[\u0027totalGigabytesUsed\u0027], CONF.volume.volume_size)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a8bc5a2_8b3d1edf","line":36,"updated":"2016-09-27 08:46:33.000000000","message":"So the class name contains \u0027RateLimit\u0027 but what you are actually testing is the \u0027absolute limit\u0027.\n\nAs you can see from the server response (Body: {\"limits\": {\"rate\": [], \"absolute\": {\"totalSnapshotsUsed\": 0,), rate limit is actually empty, so not much to test.\n\nYou should change the class name and file name.","commit_id":"c201bc565a73e1a0357b2892bd6d41202eec5340"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6493d27b198184598cd96e8e3ed2ee23ff3cacb9","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    def test_get_volume_limits(self):"},{"line_number":34,"context_line":"        # get volume limit for a tenant"},{"line_number":35,"context_line":"        limits \u003d self.\\"},{"line_number":36,"context_line":"            volumes_client.show_volume_rate_limits()[\u0027limits\u0027][\u0027absolute\u0027]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        # verify volume limits and defaults per tenants"},{"line_number":39,"context_line":"        self.assertEqual(limits[\u0027totalGigabytesUsed\u0027], CONF.volume.volume_size)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a98d1f4_80468f21","line":36,"in_reply_to":"5a8bc5a2_8b3d1edf","updated":"2016-09-29 03:23:19.000000000","message":"Thanks you , fixing","commit_id":"c201bc565a73e1a0357b2892bd6d41202eec5340"}],"tempest/api/volume/test_volume_absolute_limits.py":[{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"8817267d1edd06fdafe39a90feab5200a29f207b","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class AbsoluteLimitsAdminV2Tests(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5da102_f09d245a","line":24,"updated":"2016-10-31 13:54:39.000000000","message":"There\u0027s still Admin in the class name here","commit_id":"9b2b7bd763aaf31072cc7e25de9d7f664079b7fc"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"8817267d1edd06fdafe39a90feab5200a29f207b","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"},{"line_number":28,"context_line":"        super(AbsoluteLimitsAdminV2Tests, cls).resource_setup()"},{"line_number":29,"context_line":"        # Create a shared volume for tests"},{"line_number":30,"context_line":"        cls.volume \u003d cls.create_volume()"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5da102_50afb080","line":28,"updated":"2016-10-31 13:54:39.000000000","message":"here","commit_id":"9b2b7bd763aaf31072cc7e25de9d7f664079b7fc"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"8817267d1edd06fdafe39a90feab5200a29f207b","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        self.assertEqual(absolute_limits[\u0027totalBackupGigabytesUsed\u0027], 0)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"class VolumeRateLimitsAdminV1TestsJSON(AbsoluteLimitsAdminV2Tests):"},{"line_number":48,"context_line":"    _api_version \u003d 1"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5da102_30a07c90","line":47,"updated":"2016-10-31 13:54:39.000000000","message":"and here","commit_id":"9b2b7bd763aaf31072cc7e25de9d7f664079b7fc"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"041712ad4bcf8abfbda7db91ac31c305bd966ea1","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_06b5767c","line":19,"range":{"start_line":17,"start_character":0,"end_line":19,"end_character":35},"updated":"2016-11-11 23:13:03.000000000","message":"these should be together","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91af6c1983154232b989dd6312d8e18584d53827","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_b72ea8f8","line":19,"range":{"start_line":17,"start_character":0,"end_line":19,"end_character":35},"in_reply_to":"9a629dbe_06b5767c","updated":"2016-11-13 05:38:53.000000000","message":"ok , fixing","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"041712ad4bcf8abfbda7db91ac31c305bd966ea1","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class AbsoluteLimitsV2Tests(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_c6337e12","line":24,"range":{"start_line":24,"start_character":33,"end_line":24,"end_character":52},"updated":"2016-11-11 23:13:03.000000000","message":"is this admin only API ?","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91af6c1983154232b989dd6312d8e18584d53827","unresolved":false,"context_lines":[{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class AbsoluteLimitsV2Tests(base.BaseVolumeAdminTest):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    @classmethod"},{"line_number":27,"context_line":"    def resource_setup(cls):"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_97c5240c","line":24,"range":{"start_line":24,"start_character":33,"end_line":24,"end_character":52},"in_reply_to":"9a629dbe_c6337e12","updated":"2016-11-13 05:38:53.000000000","message":"You are right - fixing","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_831c016c","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"updated":"2016-11-14 03:14:35.000000000","message":"these should be together as same module import","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6d5e4f7bcf5ba99531434cf6d18778999602b460","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_591c9613","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"in_reply_to":"9a629dbe_831c016c","updated":"2016-11-14 06:15:21.000000000","message":"Done","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"e9ed3b11eff8463b63b7990f981c2eb818385032","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"7a77a97e_a6be84ab","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"updated":"2016-11-20 04:27:27.000000000","message":"this is missed. not done.","commit_id":"1575021ca05f9cedc399deb92cb28dbeccb47ac2"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"1ed311eda0c2d754c6706fabeb236a24fa91cefe","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"7a77a97e_59766707","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"in_reply_to":"7a77a97e_0c23ce56","updated":"2016-11-21 05:58:05.000000000","message":"ok fixing  . Thanks","commit_id":"1575021ca05f9cedc399deb92cb28dbeccb47ac2"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"b28a7209642ba044fd65b4e6034c2547db114e57","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"7a77a97e_0c23ce56","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"in_reply_to":"7a77a97e_260ef48b","updated":"2016-11-21 02:23:51.000000000","message":"Import are separated with L18 which should be together as all are tempest import.","commit_id":"1575021ca05f9cedc399deb92cb28dbeccb47ac2"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"327bb66e259935e49131773bf2416e5bf2496542","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from tempest.api.volume import base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d config.CONF"},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":18,"id":"7a77a97e_260ef48b","line":19,"range":{"start_line":16,"start_character":0,"end_line":19,"end_character":35},"in_reply_to":"7a77a97e_a6be84ab","updated":"2016-11-20 04:43:27.000000000","message":"Hi , \nCould you please explain what\u0027s wrong with the import section ? I will fix it immediatly .\nThanks a lot for your time,\nBenny","commit_id":"1575021ca05f9cedc399deb92cb28dbeccb47ac2"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"42c3904d888854fe83940fa706a0203fcd702a96","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from tempest import config"},{"line_number":17,"context_line":"from tempest import test"},{"line_number":18,"context_line":"from tempest.api.volume import base"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"CONF \u003d config.CONF"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"7a77a97e_07c0f6df","line":19,"range":{"start_line":19,"start_character":0,"end_line":19,"end_character":0},"updated":"2016-11-21 13:36:58.000000000","message":"Hi Ghanshyam,\npep tests fails when removing the space between line 17 ,18 .\nShould we back to space and move on ?\nBenny","commit_id":"6003f843c6a057a604c88774b9975a443f9d74b4"}],"tempest/lib/services/volume/v1/limits_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class LimitsClient(rest_client.RestClient):"},{"line_number":22,"context_line":"    \"\"\"Volume V2 limits client.\"\"\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v1\""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_e3021d09","line":22,"range":{"start_line":22,"start_character":13,"end_line":22,"end_character":16},"updated":"2016-11-14 03:14:35.000000000","message":"v1","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6d5e4f7bcf5ba99531434cf6d18778999602b460","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class LimitsClient(rest_client.RestClient):"},{"line_number":22,"context_line":"    \"\"\"Volume V2 limits client.\"\"\""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v1\""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_b9d13232","line":22,"range":{"start_line":22,"start_character":13,"end_line":22,"end_character":16},"in_reply_to":"9a629dbe_e3021d09","updated":"2016-11-14 06:15:21.000000000","message":"Done","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v1\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":27,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":28,"context_line":"        url \u003d \"limits\""},{"line_number":29,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_237255ae","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":35},"updated":"2016-11-14 03:14:35.000000000","message":"this should be \"show_limits\" as it return complete limits not only absolute limits.","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6d5e4f7bcf5ba99531434cf6d18778999602b460","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v1\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":27,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":28,"context_line":"        url \u003d \"limits\""},{"line_number":29,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_f9dbaa4d","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":35},"in_reply_to":"9a629dbe_237255ae","updated":"2016-11-14 06:15:21.000000000","message":"Done","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"}],"tempest/lib/services/volume/v1/volumes_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"041712ad4bcf8abfbda7db91ac31c305bd966ea1","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":62,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":63,"context_line":"        url \u003d \"limits\""},{"line_number":64,"context_line":"        resp, body \u003d self.get(url)"},{"line_number":65,"context_line":"        body \u003d json.loads(body)"},{"line_number":66,"context_line":"        self.expected_success(200, resp.status)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_c6653e1e","line":63,"range":{"start_line":63,"start_character":8,"end_line":63,"end_character":22},"updated":"2016-11-11 23:13:03.000000000","message":"This breaking service client policy of having separate client per resources. \nThis should go as separate client like- limit.py","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91af6c1983154232b989dd6312d8e18584d53827","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":62,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":63,"context_line":"        url \u003d \"limits\""},{"line_number":64,"context_line":"        resp, body \u003d self.get(url)"},{"line_number":65,"context_line":"        body \u003d json.loads(body)"},{"line_number":66,"context_line":"        self.expected_success(200, resp.status)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_b7ca2819","line":63,"range":{"start_line":63,"start_character":8,"end_line":63,"end_character":22},"in_reply_to":"9a629dbe_c6653e1e","updated":"2016-11-13 05:38:53.000000000","message":"Done","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"}],"tempest/lib/services/volume/v2/limits_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v2\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":27,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":28,"context_line":"        url \u003d \"limits\""},{"line_number":29,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_633d2dbb","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":35},"updated":"2016-11-14 03:14:35.000000000","message":"ditto","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6d5e4f7bcf5ba99531434cf6d18778999602b460","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    api_version \u003d \"v2\""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":27,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":28,"context_line":"        url \u003d \"limits\""},{"line_number":29,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_79f07aca","line":26,"range":{"start_line":26,"start_character":8,"end_line":26,"end_character":35},"in_reply_to":"9a629dbe_633d2dbb","updated":"2016-11-14 06:15:21.000000000","message":"Done","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"}],"tempest/lib/services/volume/v2/volumes_client.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"041712ad4bcf8abfbda7db91ac31c305bd966ea1","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":60,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":63,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":64,"context_line":"        url \u003d \"limits\""},{"line_number":65,"context_line":"        resp, body \u003d self.get(url)"},{"line_number":66,"context_line":"        body \u003d json.loads(body)"},{"line_number":67,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":68,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def create_volume(self, **kwargs):"},{"line_number":71,"context_line":"        \"\"\"Creates a new Volume."}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_066c9606","line":68,"range":{"start_line":62,"start_character":0,"end_line":68,"end_character":51},"updated":"2016-11-11 23:13:03.000000000","message":"ditto","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"91af6c1983154232b989dd6312d8e18584d53827","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":60,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    def show_volume_absolute_limits(self):"},{"line_number":63,"context_line":"        \"\"\"Returns the details of a volume absolute limits.\"\"\""},{"line_number":64,"context_line":"        url \u003d \"limits\""},{"line_number":65,"context_line":"        resp, body \u003d self.get(url)"},{"line_number":66,"context_line":"        body \u003d json.loads(body)"},{"line_number":67,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":68,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def create_volume(self, **kwargs):"},{"line_number":71,"context_line":"        \"\"\"Creates a new Volume."}],"source_content_type":"text/x-python","patch_set":10,"id":"9a629dbe_d7cf9c27","line":68,"range":{"start_line":62,"start_character":0,"end_line":68,"end_character":51},"in_reply_to":"9a629dbe_066c9606","updated":"2016-11-13 05:38:53.000000000","message":"Done","commit_id":"e1fb6d44b51827d9d1ebbaac39039a5ac1371143"}],"tempest/services/volume/base/base_volumes_client.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"c4ecef9e276a843d3252dcee19e6c82a98d3f587","unresolved":false,"context_lines":[{"line_number":60,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":61,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def show_volume_rate_limits(self):"},{"line_number":64,"context_line":"        \"\"\"Returns the details of a volume rate limits.\"\"\""},{"line_number":65,"context_line":"        url \u003d \"limits\""},{"line_number":66,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a98d1f4_bb549c54","line":63,"updated":"2016-09-29 04:32:01.000000000","message":"According to the api doc[1], this api seems \"Show absolute limits\". Is this a documentation bug?\nBut yeah, we can get \u0027rate\u0027 from a response, the doc says.\n[1] http://developer.openstack.org/api-ref-blockstorage-v2.html#showAbsoluteLimits","commit_id":"482d57dc3b5f9a250a279c687f5694cbcac71f7a"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"039818f48ebeb3c4b03cde12231a28e083ce6d8e","unresolved":false,"context_lines":[{"line_number":60,"context_line":"        self.expected_success(200, resp.status)"},{"line_number":61,"context_line":"        return rest_client.ResponseBody(resp, body)"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    def show_volume_rate_limits(self):"},{"line_number":64,"context_line":"        \"\"\"Returns the details of a volume rate limits.\"\"\""},{"line_number":65,"context_line":"        url \u003d \"limits\""},{"line_number":66,"context_line":"        resp, body \u003d self.get(url)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a98d1f4_7b3bf4eb","line":63,"in_reply_to":"3a98d1f4_bb549c54","updated":"2016-09-29 04:39:16.000000000","message":"Sounds good , i will split it to two commands :\n[stack@localhost ~]$ cinder --help | grep limit\n    absolute-limits     Lists absolute limits for a user.\n    rate-limits         Lists rate limits for a user.\n\nThank you , \nBenny","commit_id":"482d57dc3b5f9a250a279c687f5694cbcac71f7a"}],"tempest/services/volume/v1/__init__.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations under"},{"line_number":13,"context_line":"# the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"from tempest.lib.services.volume.v1.availability_zone_client import \\"},{"line_number":16,"context_line":"    AvailabilityZoneClient"},{"line_number":17,"context_line":"from tempest.lib.services.volume.v1.backups_client import BackupsClient"},{"line_number":18,"context_line":"from tempest.lib.services.volume.v1.encryption_types_client import \\"},{"line_number":19,"context_line":"    EncryptionTypesClient"},{"line_number":20,"context_line":"from tempest.lib.services.volume.v1.extensions_client import ExtensionsClient"},{"line_number":21,"context_line":"from tempest.lib.services.volume.v1.hosts_client import HostsClient"},{"line_number":22,"context_line":"from tempest.lib.services.volume.v1.limits_client import LimitsClient"},{"line_number":23,"context_line":"from tempest.lib.services.volume.v1.qos_client import QosSpecsClient"},{"line_number":24,"context_line":"from tempest.lib.services.volume.v1.quotas_client import QuotasClient"},{"line_number":25,"context_line":"from tempest.lib.services.volume.v1.services_client import ServicesClient"},{"line_number":26,"context_line":"from tempest.lib.services.volume.v1.snapshots_client import SnapshotsClient"},{"line_number":27,"context_line":"from tempest.lib.services.volume.v1.types_client import TypesClient"},{"line_number":28,"context_line":"from tempest.lib.services.volume.v1.volumes_client import VolumesClient"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"__all__ \u003d [\u0027AvailabilityZoneClient\u0027, \u0027EncryptionTypesClient\u0027,"},{"line_number":31,"context_line":"           \u0027ExtensionsClient\u0027, \u0027HostsClient\u0027, \u0027QuotasClient\u0027,"},{"line_number":32,"context_line":"           \u0027QosSpecsClient\u0027, \u0027ServicesClient\u0027,"},{"line_number":33,"context_line":"           \u0027SnapshotsClient\u0027, \u0027TypesClient\u0027, \u0027BackupsClient\u0027,"},{"line_number":34,"context_line":"           \u0027VolumesClient\u0027, \u0027LimitsClient\u0027]"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_23a975e0","line":34,"range":{"start_line":14,"start_character":0,"end_line":34,"end_character":43},"updated":"2016-11-14 03:14:35.000000000","message":"why we need to define this ? all are available from lib/service/volume/v1/","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"}],"tempest/services/volume/v2/__init__.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"34f7b467a867fa55e59b1b77d52118155335449f","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations under"},{"line_number":13,"context_line":"# the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"from tempest.lib.services.volume.v2.availability_zone_client import \\"},{"line_number":16,"context_line":"    AvailabilityZoneClient"},{"line_number":17,"context_line":"from tempest.lib.services.volume.v2.backups_client import BackupsClient"},{"line_number":18,"context_line":"from tempest.lib.services.volume.v2.encryption_types_client import \\"},{"line_number":19,"context_line":"    EncryptionTypesClient"},{"line_number":20,"context_line":"from tempest.lib.services.volume.v2.extensions_client import ExtensionsClient"},{"line_number":21,"context_line":"from tempest.lib.services.volume.v2.hosts_client import HostsClient"},{"line_number":22,"context_line":"from tempest.lib.services.volume.v2.limits_client import LimitsClient"},{"line_number":23,"context_line":"from tempest.lib.services.volume.v2.qos_client import QosSpecsClient"},{"line_number":24,"context_line":"from tempest.lib.services.volume.v2.quotas_client import QuotasClient"},{"line_number":25,"context_line":"from tempest.lib.services.volume.v2.services_client import ServicesClient"},{"line_number":26,"context_line":"from tempest.lib.services.volume.v2.snapshots_client import SnapshotsClient"},{"line_number":27,"context_line":"from tempest.lib.services.volume.v2.types_client import TypesClient"},{"line_number":28,"context_line":"from tempest.lib.services.volume.v2.volumes_client import VolumesClient"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"__all__ \u003d [\u0027AvailabilityZoneClient\u0027, \u0027BackupsClient\u0027, \u0027EncryptionTypesClient\u0027,"},{"line_number":31,"context_line":"           \u0027ExtensionsClient\u0027, \u0027HostsClient\u0027, \u0027QosSpecsClient\u0027, \u0027QuotasClient\u0027,"},{"line_number":32,"context_line":"           \u0027ServicesClient\u0027, \u0027SnapshotsClient\u0027, \u0027TypesClient\u0027,"},{"line_number":33,"context_line":"           \u0027VolumesClient\u0027, \u0027LimitsClient\u0027]"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_43ae69e8","line":33,"range":{"start_line":15,"start_character":0,"end_line":33,"end_character":43},"updated":"2016-11-14 03:14:35.000000000","message":"ditto","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"},{"author":{"_account_id":11075,"name":"Benny Kopilov","email":"bkopilov@redhat.com","username":"bkopilov"},"change_message_id":"6d5e4f7bcf5ba99531434cf6d18778999602b460","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations under"},{"line_number":13,"context_line":"# the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"from tempest.lib.services.volume.v2.availability_zone_client import \\"},{"line_number":16,"context_line":"    AvailabilityZoneClient"},{"line_number":17,"context_line":"from tempest.lib.services.volume.v2.backups_client import BackupsClient"},{"line_number":18,"context_line":"from tempest.lib.services.volume.v2.encryption_types_client import \\"},{"line_number":19,"context_line":"    EncryptionTypesClient"},{"line_number":20,"context_line":"from tempest.lib.services.volume.v2.extensions_client import ExtensionsClient"},{"line_number":21,"context_line":"from tempest.lib.services.volume.v2.hosts_client import HostsClient"},{"line_number":22,"context_line":"from tempest.lib.services.volume.v2.limits_client import LimitsClient"},{"line_number":23,"context_line":"from tempest.lib.services.volume.v2.qos_client import QosSpecsClient"},{"line_number":24,"context_line":"from tempest.lib.services.volume.v2.quotas_client import QuotasClient"},{"line_number":25,"context_line":"from tempest.lib.services.volume.v2.services_client import ServicesClient"},{"line_number":26,"context_line":"from tempest.lib.services.volume.v2.snapshots_client import SnapshotsClient"},{"line_number":27,"context_line":"from tempest.lib.services.volume.v2.types_client import TypesClient"},{"line_number":28,"context_line":"from tempest.lib.services.volume.v2.volumes_client import VolumesClient"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"__all__ \u003d [\u0027AvailabilityZoneClient\u0027, \u0027BackupsClient\u0027, \u0027EncryptionTypesClient\u0027,"},{"line_number":31,"context_line":"           \u0027ExtensionsClient\u0027, \u0027HostsClient\u0027, \u0027QosSpecsClient\u0027, \u0027QuotasClient\u0027,"},{"line_number":32,"context_line":"           \u0027ServicesClient\u0027, \u0027SnapshotsClient\u0027, \u0027TypesClient\u0027,"},{"line_number":33,"context_line":"           \u0027VolumesClient\u0027, \u0027LimitsClient\u0027]"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_79f15a95","line":33,"range":{"start_line":15,"start_character":0,"end_line":33,"end_character":43},"in_reply_to":"9a629dbe_43ae69e8","updated":"2016-11-14 06:15:21.000000000","message":"Thanks , rebased","commit_id":"1dbcb6c4b4ee5bc02bc3a4affed0858ff41a32cb"}]}
