)]}'
{"rally/plugins/openstack/cleanup/resources.py":[{"author":{"_account_id":10475,"name":"Alexander Maretskiy","email":"amaretskiy@mirantis.com","username":"maretskiy"},"change_message_id":"ce534b63f8da379a20fcc6adc1aec2b1d50a4f48","unresolved":false,"context_lines":[{"line_number":386,"context_line":"@base.resource(\"glance\", \"images\", order\u003d500, tenant_resource\u003dTrue)"},{"line_number":387,"context_line":"class GlanceImage(base.ResourceManager):"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"    def _manager(self):"},{"line_number":390,"context_line":"        return glance_wrapper.wrap("},{"line_number":391,"context_line":"            getattr(self.admin or self.user, self._service), self)"},{"line_number":392,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a061dce_58c6274a","side":"PARENT","line":389,"updated":"2016-04-08 13:17:33.000000000","message":"Is this normal that we do not use standard mechanism _manager() ?  https://github.com/openstack/rally/blob/master/rally/plugins/openstack/cleanup/base.py#L95\n\nWrapper is actually a kind of manager","commit_id":"7be191e79d198e72ca5321c2392f9f0d1393fb0c"},{"author":{"_account_id":11748,"name":"Chris St. Pierre","email":"cstpierr@cisco.com","username":"stpierre"},"change_message_id":"d33f98a84fd24376b08f83e6ef033552c036cf6a","unresolved":false,"context_lines":[{"line_number":386,"context_line":"@base.resource(\"glance\", \"images\", order\u003d500, tenant_resource\u003dTrue)"},{"line_number":387,"context_line":"class GlanceImage(base.ResourceManager):"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"    def _manager(self):"},{"line_number":390,"context_line":"        return glance_wrapper.wrap("},{"line_number":391,"context_line":"            getattr(self.admin or self.user, self._service), self)"},{"line_number":392,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a061dce_18a30f51","side":"PARENT","line":389,"in_reply_to":"9a061dce_58c6274a","updated":"2016-04-08 13:21:40.000000000","message":"I tried to make this work with _manager() returning the wrapper, but doing that required overriding basically every method from base.ResourceManager to work with the functions as they are named in the glance wrapper. Doing it this way lets us selectively override only list() and delete() and duplicate much less code.","commit_id":"7be191e79d198e72ca5321c2392f9f0d1393fb0c"}],"rally/plugins/openstack/wrappers/glance.py":[{"author":{"_account_id":12637,"name":"Srinivas Sakhamuri","email":"srini.openstack@gmail.com","username":"srsakhamuri"},"change_message_id":"a7b2ae7fbb8496aa7a6f46f5743d3d62eb55053e","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    @abc.abstractmethod"},{"line_number":64,"context_line":"    def get_image(self, image):"},{"line_number":65,"context_line":"        \"\"\"Refresh an image from an image object.\"\"\""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @abc.abstractmethod"},{"line_number":68,"context_line":"    def create_image(self, container_format, image_location, disk_format):"},{"line_number":69,"context_line":"        \"\"\"Creates new image.\"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba0121b8_fb78a0f4","side":"PARENT","line":66,"updated":"2016-03-29 21:10:56.000000000","message":"We should probably keep the get_image, wait_for* functions need a caller for update_resource that takes the resource and operates on resource.id. the get_manager functions won\u0027t work for both v1 and v2","commit_id":"b8d76c16eba5fcda8f66a7d62cd1326f74e13cba"}]}
