)]}'
{"rally/plugins/openstack/scenarios/cinder/utils.py":[{"author":{"_account_id":12395,"name":"Roman Vasylets","email":"pomeo92@gmail.com","username":"rvasilets"},"change_message_id":"ff6436a259bdde69d74e4241dbf891409c8144a1","unresolved":false,"context_lines":[{"line_number":422,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":423,"context_line":"        \"\"\""},{"line_number":424,"context_line":"        return (self.admin_clients(\"cinder\").volume_types.update(volume_type,"},{"line_number":425,"context_line":"                name, description, is_public))"},{"line_number":426,"context_line":""},{"line_number":427,"context_line":"    @atomic.action_timer(\"cinder.delete_volume_type\")"},{"line_number":428,"context_line":"    def _delete_volume_type(self, volume_type):"}],"source_content_type":"text/x-python","patch_set":1,"id":"da36d5c6_401f3d5b","line":425,"updated":"2017-02-27 23:24:59.000000000","message":"but we shouldn\u0027t allow to use custom names due to our future cleanup model https://blueprints.launchpad.net/rally/+spec/cleanup-refactoring","commit_id":"8ff2bd7f7c5e9671b7a89cb6c28c0c81510e9033"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"bf9013caff986219dc9c9954d5709793e21a56f7","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a30ddce_30d64a4f","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"updated":"2017-03-13 09:12:33.000000000","message":"If we can not transmit the param of name, why we need it in here?","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"0b90c76d0b561596f09d02c293b5b813b7091a36","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a1ced50_530bd07c","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"1a1ced50_7b1e0771","updated":"2017-03-23 03:18:16.000000000","message":"Thanks, Done","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"96aff670ba422edca0ee960909e0f417f6635830","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a1ced50_7b1e0771","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"7a25e98e_3d5c3525","updated":"2017-03-22 12:17:39.000000000","message":"Ok. From the user perspective, parameter \"name\" sounds like it is possible to setup custom name. Also, the same opinion can appear after reading the docsting for \"name\" parameter.\n\nThe code works(L442) in proper way (generate another random name), but name of parameter and description should be clarified. \"update_name\" sounds much better for me.\n\n   name \u003d None\n   if update_name:\n       name \u003d self.generate_random_name()","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"dd963e5c68164053829d1f40eeb32c57ec236111","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7a25e98e_3d5c3525","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"7a25e98e_baaaeb6e","updated":"2017-03-14 03:44:51.000000000","message":"sorry, if i am a user, i would like it can update name,Although value is replaced by generating random name.\nI think we can report log to tell user the value be replaced.","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"7649c6e66c5e2001c012591ee78970b6056b272f","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a30ddce_c499b37a","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"9a30ddce_30d64a4f","updated":"2017-03-13 09:46:01.000000000","message":"we just update what the user tells us to update. so name, description and is_public must be in here. when user want to update name, we replace it by generating random name.","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"f6cc81ea19080433d690873f70c6442c328b94b9","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7a25e98e_baaaeb6e","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"9a30ddce_90bd2c04","updated":"2017-03-14 03:19:39.000000000","message":"We should port this param to `update_name \u003d False`, it looks better.","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"320c915ccb49d0e79b35374f52459c8086e81e58","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":430,"context_line":"    def _update_volume_type(self, volume_type, name\u003dNone,"},{"line_number":431,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":432,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":433,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9a30ddce_90bd2c04","line":430,"range":{"start_line":430,"start_character":47,"end_line":430,"end_character":56},"in_reply_to":"9a30ddce_c499b37a","updated":"2017-03-13 12:58:59.000000000","message":"Thanks, I understand what you said. The old code did the same behavior as you do. But users would confused about it. You could neglect my comment;)","commit_id":"1881f4114de45cef9f42a0242a880daee65aa357"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":445,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":448,"context_line":"    def _update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":449,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":450,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":453,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":454,"context_line":"                            if False, don\u0027t update name."},{"line_number":455,"context_line":"        :param description: Description of the the volume type."},{"line_number":456,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":457,"context_line":"        \"\"\""},{"line_number":458,"context_line":"        name \u003d None"},{"line_number":459,"context_line":"        if update_name:"},{"line_number":460,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"        return (self.admin_clients(\"cinder\").volume_types.update(volume_type,"},{"line_number":463,"context_line":"                name, description, is_public))"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    @atomic.action_timer(\"cinder.delete_volume_type\")"},{"line_number":466,"context_line":"    def _delete_volume_type(self, volume_type):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_4813ce0e","line":463,"range":{"start_line":447,"start_character":0,"end_line":463,"end_character":46},"updated":"2017-04-13 05:58:26.000000000","message":"Maybe we can remove this method, it is unused in new model.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"c3623315106ab07dff85ac43e414e7de12af62e3","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":445,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":448,"context_line":"    def _update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":449,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":450,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":453,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":454,"context_line":"                            if False, don\u0027t update name."},{"line_number":455,"context_line":"        :param description: Description of the the volume type."},{"line_number":456,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":457,"context_line":"        \"\"\""},{"line_number":458,"context_line":"        name \u003d None"},{"line_number":459,"context_line":"        if update_name:"},{"line_number":460,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"        return (self.admin_clients(\"cinder\").volume_types.update(volume_type,"},{"line_number":463,"context_line":"                name, description, is_public))"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    @atomic.action_timer(\"cinder.delete_volume_type\")"},{"line_number":466,"context_line":"    def _delete_volume_type(self, volume_type):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_4fe192fe","line":463,"range":{"start_line":447,"start_character":0,"end_line":463,"end_character":46},"in_reply_to":"7ffa3b31_3be1f0ff","updated":"2017-04-14 09:18:00.000000000","message":"Chen is right. This class is deprecated and is not used anywhere in our code. There is no need to extend it with new functionality since this class should be removed soon(as Hai Sho mentioned)","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d2eb80567962bf6a4a2de0739b193bae55daaed7","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":445,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":448,"context_line":"    def _update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":449,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":450,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":453,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":454,"context_line":"                            if False, don\u0027t update name."},{"line_number":455,"context_line":"        :param description: Description of the the volume type."},{"line_number":456,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":457,"context_line":"        \"\"\""},{"line_number":458,"context_line":"        name \u003d None"},{"line_number":459,"context_line":"        if update_name:"},{"line_number":460,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"        return (self.admin_clients(\"cinder\").volume_types.update(volume_type,"},{"line_number":463,"context_line":"                name, description, is_public))"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    @atomic.action_timer(\"cinder.delete_volume_type\")"},{"line_number":466,"context_line":"    def _delete_volume_type(self, volume_type):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_5c78cb28","line":463,"range":{"start_line":447,"start_character":0,"end_line":463,"end_character":46},"in_reply_to":"7ffa3b31_4fe192fe","updated":"2017-04-19 08:39:28.000000000","message":"Done","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"92dba948f4abb2090d95969623ab7e5d02a690cc","unresolved":false,"context_lines":[{"line_number":444,"context_line":"        kwargs[\"name\"] \u003d self.generate_random_name()"},{"line_number":445,"context_line":"        return self.admin_clients(\"cinder\").volume_types.create(**kwargs)"},{"line_number":446,"context_line":""},{"line_number":447,"context_line":"    @atomic.action_timer(\"cinder.update_volume_type\")"},{"line_number":448,"context_line":"    def _update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":449,"context_line":"                            description\u003dNone, is_public\u003dNone):"},{"line_number":450,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":451,"context_line":""},{"line_number":452,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":453,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":454,"context_line":"                            if False, don\u0027t update name."},{"line_number":455,"context_line":"        :param description: Description of the the volume type."},{"line_number":456,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":457,"context_line":"        \"\"\""},{"line_number":458,"context_line":"        name \u003d None"},{"line_number":459,"context_line":"        if update_name:"},{"line_number":460,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"        return (self.admin_clients(\"cinder\").volume_types.update(volume_type,"},{"line_number":463,"context_line":"                name, description, is_public))"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    @atomic.action_timer(\"cinder.delete_volume_type\")"},{"line_number":466,"context_line":"    def _delete_volume_type(self, volume_type):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_3be1f0ff","line":463,"range":{"start_line":447,"start_character":0,"end_line":463,"end_character":46},"in_reply_to":"9ff52f3f_4813ce0e","updated":"2017-04-14 06:02:40.000000000","message":"We can remove utils.py after 2 versions.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"}],"rally/plugins/openstack/scenarios/cinder/volume_types.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"c3623315106ab07dff85ac43e414e7de12af62e3","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"@validation.restricted_parameters(\"name\")"},{"line_number":61,"context_line":"@validation.required_api_versions(component\u003d\"cinder\", versions\u003d[\"2\"])"},{"line_number":62,"context_line":"@validation.required_services(consts.Service.CINDER)"},{"line_number":63,"context_line":"@validation.add(\"required_platform\", platform\u003d\"openstack\", admin\u003dTrue)"},{"line_number":64,"context_line":"@scenario.configure(context\u003d{\"admin_cleanup\": [\"cinder\"]},"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_2f7d261c","line":61,"range":{"start_line":61,"start_character":1,"end_line":61,"end_character":69},"updated":"2017-04-14 09:18:00.000000000","message":"Since the new scenario requires the specific version, there is no need to use CinderBasic as a parent class which is a helper class for scenarios with \"unified actions\". Inheritance of OpenStackScenario sounds much reasonable (it doesn\u0027t have any redundant things). In this case you will able to abandon usage of BlockStorage class and initialize CinderV2Service directly","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d2eb80567962bf6a4a2de0739b193bae55daaed7","unresolved":false,"context_lines":[{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"@validation.restricted_parameters(\"name\")"},{"line_number":61,"context_line":"@validation.required_api_versions(component\u003d\"cinder\", versions\u003d[\"2\"])"},{"line_number":62,"context_line":"@validation.required_services(consts.Service.CINDER)"},{"line_number":63,"context_line":"@validation.add(\"required_platform\", platform\u003d\"openstack\", admin\u003dTrue)"},{"line_number":64,"context_line":"@scenario.configure(context\u003d{\"admin_cleanup\": [\"cinder\"]},"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_fc92f74a","line":61,"range":{"start_line":61,"start_character":1,"end_line":61,"end_character":69},"in_reply_to":"7ffa3b31_2f7d261c","updated":"2017-04-19 08:39:28.000000000","message":"Done","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        :param create_type_args: Optional parameters used during volume"},{"line_number":72,"context_line":"                                 type creation"},{"line_number":73,"context_line":"        :param update_type_args: Optional parameters used during volume"},{"line_number":74,"context_line":"                                 updation"},{"line_number":75,"context_line":"        \"\"\""},{"line_number":76,"context_line":"        create_type_args \u003d create_type_args or {}"},{"line_number":77,"context_line":"        update_type_args \u003d update_type_args or {}"}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_68dc5246","line":74,"updated":"2017-04-13 05:58:26.000000000","message":"here please add update_name argument illustration.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"cdfa12b83e89f17533ea3477a400348e97701668","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        self.admin_cinder.get_volume_type(volume_type)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"@validation.restricted_parameters(\"name\")"},{"line_number":62,"context_line":"@validation.required_api_versions(component\u003d\"cinder\", versions\u003d[\"2\"])"},{"line_number":63,"context_line":"@validation.required_services(consts.Service.CINDER)"},{"line_number":64,"context_line":"@validation.add(\"required_platform\", platform\u003d\"openstack\", admin\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":9,"id":"5ff73747_0d6026ce","line":61,"updated":"2017-04-24 12:04:11.000000000","message":"There is not name argument in run method, we need to use subdict argument in validation","commit_id":"fc1f8be48e8a06bc2231be1bbc20ad93bffa9d09"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"08035d2e73c32133bad8f70e47ee248b8d778541","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        update_type_args \u003d update_type_args or {}"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        service \u003d cinder_v2.CinderV2Service(self._admin_clients,"},{"line_number":82,"context_line":"                                            self.generate_random_name)"},{"line_number":83,"context_line":"        volume_type \u003d service.create_volume_type(**create_type_args)"},{"line_number":84,"context_line":"        service.update_volume_type(volume_type, **update_type_args)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"5ff73747_87b02a45","line":82,"updated":"2017-04-27 00:39:29.000000000","message":"Hi @zhang, we forgot to specify atomic_actions. :(\nservice \u003d cinder_v2.CinderV2Service(self._admin_clients,\n                                          name_generator\u003dself.generate_random_name,\natomic_inst\u003dself.atomic_actions())\n\n\nhttp://logs.openstack.org/38/432138/10/check/gate-rally-dsvm-rally-cinder/4063b55/console.html#_2017-04-25_03_06_26_354446","commit_id":"031706470eb2dc88675ceae70e7ec16ae68f4d24"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"2341bc32f6f0901e6f5c82e007c4d8bd7a14ca74","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                    name\u003d\"CinderVolumeTypes.create_and_update_volume_type\")"},{"line_number":70,"context_line":"class CreateAndUpdateVolumeType(scenario.OpenStackScenario):"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    def run(self, create_type_args, update_type_args):"},{"line_number":73,"context_line":"        \"\"\"create a volume type, then update the type."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"        :param create_type_args: Optional parameters used during volume"}],"source_content_type":"text/x-python","patch_set":14,"id":"ff0f0b1f_34e33708","line":72,"range":{"start_line":72,"start_character":18,"end_line":72,"end_character":52},"updated":"2017-05-18 06:17:59.000000000","message":"can you specify those expected argument explicitly?","commit_id":"87dacb451b4b2d4e1ab9e96cb5000ba7fe9b9b50"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"2341bc32f6f0901e6f5c82e007c4d8bd7a14ca74","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        create_type_args \u003d create_type_args or {}"},{"line_number":81,"context_line":"        update_type_args \u003d update_type_args or {}"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        service \u003d cinder_v2.CinderV2Service(self._admin_clients,"},{"line_number":84,"context_line":"                                            self.generate_random_name,"},{"line_number":85,"context_line":"                                            atomic_inst\u003dself.atomic_actions())"},{"line_number":86,"context_line":"        volume_type \u003d service.create_volume_type(**create_type_args)"},{"line_number":87,"context_line":"        service.update_volume_type(volume_type, **update_type_args)"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"ff0f0b1f_54e6ab18","line":85,"range":{"start_line":83,"start_character":8,"end_line":85,"end_character":78},"updated":"2017-05-18 06:17:59.000000000","message":"1) why self.admin_cinder is not used here? L65 should check that Cinder V2 is used and in this case it will mean that self.admin_cinder will be a proxy for Cinder V2 service.\n\n2) Does Cinder V1 support updating type?","commit_id":"87dacb451b4b2d4e1ab9e96cb5000ba7fe9b9b50"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"dd47deb06003ff92458a7008068c7a882902f6b5","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        create_type_args \u003d create_type_args or {}"},{"line_number":81,"context_line":"        update_type_args \u003d update_type_args or {}"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        service \u003d cinder_v2.CinderV2Service(self._admin_clients,"},{"line_number":84,"context_line":"                                            self.generate_random_name,"},{"line_number":85,"context_line":"                                            atomic_inst\u003dself.atomic_actions())"},{"line_number":86,"context_line":"        volume_type \u003d service.create_volume_type(**create_type_args)"},{"line_number":87,"context_line":"        service.update_volume_type(volume_type, **update_type_args)"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"ff0f0b1f_9f245bc8","line":85,"range":{"start_line":83,"start_character":8,"end_line":85,"end_character":78},"in_reply_to":"ff0f0b1f_54e6ab18","updated":"2017-05-18 08:51:28.000000000","message":"only Cinder V2 support updating type.","commit_id":"87dacb451b4b2d4e1ab9e96cb5000ba7fe9b9b50"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"4c274054c5b23f90c6905c64a35e7fe87a91d05c","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        create_type_args \u003d create_type_args or {}"},{"line_number":81,"context_line":"        update_type_args \u003d update_type_args or {}"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"        service \u003d cinder_v2.CinderV2Service(self._admin_clients,"},{"line_number":84,"context_line":"                                            self.generate_random_name,"},{"line_number":85,"context_line":"                                            atomic_inst\u003dself.atomic_actions())"},{"line_number":86,"context_line":"        volume_type \u003d service.create_volume_type(**create_type_args)"},{"line_number":87,"context_line":"        service.update_volume_type(volume_type, **update_type_args)"},{"line_number":88,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"ff0f0b1f_99e6a544","line":85,"range":{"start_line":83,"start_character":8,"end_line":85,"end_character":78},"in_reply_to":"ff0f0b1f_9f245bc8","updated":"2017-05-18 18:22:13.000000000","message":"ok, it looks like I got the point.","commit_id":"87dacb451b4b2d4e1ab9e96cb5000ba7fe9b9b50"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"94d43c8216095054cfbbd7ec5b479d6ae8653955","unresolved":false,"context_lines":[{"line_number":67,"context_line":"                    name\u003d\"CinderVolumeTypes.create_and_update_volume_type\")"},{"line_number":68,"context_line":"class CreateAndUpdateVolumeType(scenario.OpenStackScenario):"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def run(self, description\u003dNone, is_public\u003dTrue,"},{"line_number":71,"context_line":"            update_description\u003dNone, update_is_public\u003dNone):"},{"line_number":72,"context_line":"        \"\"\"create a volume type, then update the type."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        :param description: Description of the volume type"}],"source_content_type":"text/x-python","patch_set":15,"id":"ff0f0b1f_f6ba4008","line":71,"range":{"start_line":70,"start_character":0,"end_line":71,"end_character":60},"updated":"2017-05-19 04:03:54.000000000","message":"why there is not update_name argument? i saw update_name was provided in service.update_volume_type","commit_id":"cc450b3b5932eb83e9378cf40e38ede189e6745c"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"3b9fe06051d07c7a752339a2b35c5fdb0a31b78f","unresolved":false,"context_lines":[{"line_number":67,"context_line":"                    name\u003d\"CinderVolumeTypes.create_and_update_volume_type\")"},{"line_number":68,"context_line":"class CreateAndUpdateVolumeType(scenario.OpenStackScenario):"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def run(self, description\u003dNone, is_public\u003dTrue,"},{"line_number":71,"context_line":"            update_description\u003dNone, update_is_public\u003dNone):"},{"line_number":72,"context_line":"        \"\"\"create a volume type, then update the type."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        :param description: Description of the volume type"}],"source_content_type":"text/x-python","patch_set":15,"id":"ff0f0b1f_b1bf32cf","line":71,"range":{"start_line":70,"start_character":0,"end_line":71,"end_character":60},"in_reply_to":"ff0f0b1f_f6ba4008","updated":"2017-05-19 05:15:46.000000000","message":"Done","commit_id":"cc450b3b5932eb83e9378cf40e38ede189e6745c"}],"rally/plugins/openstack/services/storage/block.py":[{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"4b6631ea53764e977e6782864c4cd622217966b1","unresolved":false,"context_lines":[{"line_number":336,"context_line":"        :returns: extra_specs if the request has been accepted"},{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."}],"source_content_type":"text/x-python","patch_set":6,"id":"bff0334d_819af110","line":339,"updated":"2017-04-12 12:33:54.000000000","message":"I think we need add the decorator of @service.should_be_overridden","commit_id":"1ca422b9c7ecf7501f30d290d7028083753efc8a"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_28764ada","line":340,"updated":"2017-04-13 05:58:26.000000000","message":"As @Hai Shi mentioned,we should add  @service.should_be_overridden.Although the method can be called successfully, i want this is the interface layer, and we need to move the logic to compatible layer, so lets ensure unity.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d2eb80567962bf6a4a2de0739b193bae55daaed7","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_9ccc136b","line":340,"in_reply_to":"7ffa3b31_0f9f0a51","updated":"2017-04-19 08:39:28.000000000","message":"Done","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"44c95f269ed681595da2ef927172669bd9b80287","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_85e1c1d3","line":340,"in_reply_to":"7ffa3b31_4588591e","updated":"2017-04-14 03:06:58.000000000","message":"but if I add  @service.should_be_overridden. UnifiedCinderV1Service has wrong implementation. Implementation of specific version of API should override all required methods of base service class. but UnifiedCinderV1Service should not have update_volume_type func.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0882fab67ccfe632824af041fcc02069377699ff","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_4588591e","line":340,"in_reply_to":"7ffa3b31_65f23509","updated":"2017-04-14 03:01:37.000000000","message":"no. please look 330 line, same as it :)","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"c3623315106ab07dff85ac43e414e7de12af62e3","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_0f9f0a51","line":340,"in_reply_to":"7ffa3b31_85e1c1d3","updated":"2017-04-14 09:18:00.000000000","message":"It that method is specific to one API version there is no need to implement it in the base class, in unified layer and so on. Okease remove it here and use CinderV2Service in scenario directly.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"a0ca420f67464621aff2f75e2b479e820571995b","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_a82db447","line":340,"in_reply_to":"7ffa3b31_85e1c1d3","updated":"2017-04-14 03:59:39.000000000","message":"oh... i understand your mean, thanks for your reminding.\nMaybe we could add update_volume_type to UnifiedCinderV1Service and\nraise an exception if called.\n@all, how about do you think?","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"92dba948f4abb2090d95969623ab7e5d02a690cc","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_bba74050","line":340,"in_reply_to":"7ffa3b31_a82db447","updated":"2017-04-14 06:02:40.000000000","message":"@chenhb, it could resolve this problem, but it looks more redundant. In my opinion, we need add a class like unUnifiedCinderService.","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"ddb9da976f5c37822e556c99d7b182c20daeef99","unresolved":false,"context_lines":[{"line_number":337,"context_line":"        \"\"\""},{"line_number":338,"context_line":"        return self._impl.set_volume_type_keys(volume_type, metadata)"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":341,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":342,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":343,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_65f23509","line":340,"in_reply_to":"9ff52f3f_28764ada","updated":"2017-04-14 02:47:10.000000000","message":"do you means that I should move update_volume_type to cinder_common.py?","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"}],"rally/plugins/openstack/services/storage/cinder_v2.py":[{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"5ca4a73869a34c55f734cfa6b146cc49e877c14b","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                  \"is_public\": is_public}"},{"line_number":176,"context_line":"        return self._get_client().volume_types.create(**kwargs)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."},{"line_number":187,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":188,"context_line":"        \"\"\""},{"line_number":189,"context_line":"        name \u003d None"},{"line_number":190,"context_line":"        if update_name:"},{"line_number":191,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        return self._get_client().volume_types.update(volume_type, name,"},{"line_number":194,"context_line":"                                                      description, is_public)"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"@service.compat_layer(CinderV2Service)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bff0334d_dbb8722b","line":194,"range":{"start_line":178,"start_character":0,"end_line":194,"end_character":77},"updated":"2017-04-07 10:16:19.000000000","message":"It looks cinder_v1.py need add this function too.","commit_id":"2493277b57b92e62c478d15fb1bed69be98ea1f2"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"7ff76f79399a8aaf73fefcf747883f8511836355","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                  \"is_public\": is_public}"},{"line_number":176,"context_line":"        return self._get_client().volume_types.create(**kwargs)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."},{"line_number":187,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":188,"context_line":"        \"\"\""},{"line_number":189,"context_line":"        name \u003d None"},{"line_number":190,"context_line":"        if update_name:"},{"line_number":191,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        return self._get_client().volume_types.update(volume_type, name,"},{"line_number":194,"context_line":"                                                      description, is_public)"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"@service.compat_layer(CinderV2Service)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bff0334d_e2610d07","line":194,"range":{"start_line":178,"start_character":0,"end_line":194,"end_character":77},"in_reply_to":"bff0334d_d70e023a","updated":"2017-04-10 15:12:07.000000000","message":"oops. If v1 have not support this function. Pls remove update_volume_type from BlockStorge. Because if BlockStorge add update_volume_type function, UnifiedCinderV1(2)Service should override this function. And using the validator of required_api_versions to check the cinder\u0027s version.","commit_id":"2493277b57b92e62c478d15fb1bed69be98ea1f2"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"678a5d1cd367eec80754a55f4229ff31bc467c70","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                  \"is_public\": is_public}"},{"line_number":176,"context_line":"        return self._get_client().volume_types.create(**kwargs)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."},{"line_number":187,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":188,"context_line":"        \"\"\""},{"line_number":189,"context_line":"        name \u003d None"},{"line_number":190,"context_line":"        if update_name:"},{"line_number":191,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        return self._get_client().volume_types.update(volume_type, name,"},{"line_number":194,"context_line":"                                                      description, is_public)"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"@service.compat_layer(CinderV2Service)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bff0334d_d70e023a","line":194,"range":{"start_line":178,"start_character":0,"end_line":194,"end_character":77},"in_reply_to":"bff0334d_dbb8722b","updated":"2017-04-07 11:51:00.000000000","message":"Thanks for your comment, but in https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v1/volume_types.py, the file have no update fuc.","commit_id":"2493277b57b92e62c478d15fb1bed69be98ea1f2"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"4da8d53660d356d653bf6e58ae11c6eb2a3962ce","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                  \"is_public\": is_public}"},{"line_number":176,"context_line":"        return self._get_client().volume_types.create(**kwargs)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."},{"line_number":187,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":188,"context_line":"        \"\"\""},{"line_number":189,"context_line":"        name \u003d None"},{"line_number":190,"context_line":"        if update_name:"},{"line_number":191,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        return self._get_client().volume_types.update(volume_type, name,"},{"line_number":194,"context_line":"                                                      description, is_public)"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"@service.compat_layer(CinderV2Service)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bff0334d_ee4d2cc4","line":194,"range":{"start_line":178,"start_character":0,"end_line":194,"end_character":77},"in_reply_to":"bff0334d_de15af9d","updated":"2017-04-12 12:35:50.000000000","message":"Sorry, I gave your the wrong guide. Checking the cinder\u0027s version is fine.","commit_id":"2493277b57b92e62c478d15fb1bed69be98ea1f2"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d4e441f60e9e41dd5c31786e88a1960bfe8f6496","unresolved":false,"context_lines":[{"line_number":175,"context_line":"                  \"is_public\": is_public}"},{"line_number":176,"context_line":"        return self._get_client().volume_types.create(**kwargs)"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."},{"line_number":187,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":188,"context_line":"        \"\"\""},{"line_number":189,"context_line":"        name \u003d None"},{"line_number":190,"context_line":"        if update_name:"},{"line_number":191,"context_line":"            name \u003d self.generate_random_name()"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"        return self._get_client().volume_types.update(volume_type, name,"},{"line_number":194,"context_line":"                                                      description, is_public)"},{"line_number":195,"context_line":""},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"@service.compat_layer(CinderV2Service)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bff0334d_de15af9d","line":194,"range":{"start_line":178,"start_character":0,"end_line":194,"end_character":77},"in_reply_to":"bff0334d_e2610d07","updated":"2017-04-11 02:59:09.000000000","message":"Thanks a lot.","commit_id":"2493277b57b92e62c478d15fb1bed69be98ea1f2"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":178,"context_line":"    @atomic.action_timer(\"cinder_v2.update_volume_type\")"},{"line_number":179,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_8832f6a6","line":181,"updated":"2017-04-13 05:58:26.000000000","message":"and is_public :)","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"c3623315106ab07dff85ac43e414e7de12af62e3","unresolved":false,"context_lines":[{"line_number":361,"context_line":"        return self._unify_volume(self._impl.restore_backup("},{"line_number":362,"context_line":"            backup_id, volume_id\u003dvolume_id))"},{"line_number":363,"context_line":""},{"line_number":364,"context_line":"    def update_volume_type(self, volume_type, update_name\u003dFalse,"},{"line_number":365,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":366,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":367,"context_line":""},{"line_number":368,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":369,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":370,"context_line":"                            if False, don\u0027t update name."},{"line_number":371,"context_line":"        :param description: Description of the the volume type."},{"line_number":372,"context_line":"        :rtype: :class:`VolumeType`"},{"line_number":373,"context_line":"        \"\"\""},{"line_number":374,"context_line":"        return self._impl.update_volume_type(volume_type,"},{"line_number":375,"context_line":"                                             update_name\u003dupdate_name,"},{"line_number":376,"context_line":"                                             description\u003ddescription,"},{"line_number":377,"context_line":"                                             is_public\u003dis_public)"}],"source_content_type":"text/x-python","patch_set":7,"id":"7ffa3b31_4fb632dc","line":377,"range":{"start_line":364,"start_character":4,"end_line":377,"end_character":65},"updated":"2017-04-14 09:18:00.000000000","message":"Also, there is no need to have this unified method, since it is updating volume type is specific for only Cinder V2","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"},{"author":{"_account_id":22960,"name":"Hai Shi","email":"shihai1992@gmail.com","username":"haishi"},"change_message_id":"2175da25ded490b023c1c66a741a86211d406cd4","unresolved":false,"context_lines":[{"line_number":180,"context_line":"                           description\u003dNone, is_public\u003dNone):"},{"line_number":181,"context_line":"        \"\"\"Update the name and/or description for a volume type."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"        :param volume_type: The ID of the :class:`VolumeType` to update."},{"line_number":184,"context_line":"        :param update_name: if True, can update name by generating random name."},{"line_number":185,"context_line":"                            if False, don\u0027t update name."},{"line_number":186,"context_line":"        :param description: Description of the the volume type."}],"source_content_type":"text/x-python","patch_set":11,"id":"5ff73747_d55a0981","line":183,"range":{"start_line":183,"start_character":28,"end_line":183,"end_character":35},"updated":"2017-04-30 08:13:25.000000000","message":"It cloud be a ID or a instance which contains the ID.","commit_id":"3614ed467f168a4c29b0e177debbbe360e4fbc25"}],"tests/unit/plugins/openstack/services/storage/test_block.py":[{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":188,"context_line":"            \"volume_type\", \"metadata\")"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"    def test_update_volume_type(self):"},{"line_number":191,"context_line":"        self.service.update_volume_type(\"volume_type\")"},{"line_number":192,"context_line":"        self.service._impl.update_volume_type.assert_called_once_with("},{"line_number":193,"context_line":"            \"volume_type\", description\u003dNone, is_public\u003dNone, update_name\u003dFalse)"},{"line_number":194,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_a805ba7c","line":191,"updated":"2017-04-13 05:58:26.000000000","message":"lets assert the value.\nself.assertEqual(\n    self.service._impl.update_volume_type.return_value,\n    self.service.update_volume_type(\"volume_type\"))","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"}],"tests/unit/plugins/openstack/services/storage/test_cinder_v2.py":[{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"0dca68fd4b496723d148be34c34495f0e17a7c0e","unresolved":false,"context_lines":[{"line_number":224,"context_line":""},{"line_number":225,"context_line":"    def test_update_volume_type(self):"},{"line_number":226,"context_line":"        volume_type \u003d mock.Mock()"},{"line_number":227,"context_line":"        name \u003d \"random_name\""},{"line_number":228,"context_line":"        self.service.generate_random_name \u003d mock.MagicMock("},{"line_number":229,"context_line":"            return_value\u003dname)"},{"line_number":230,"context_line":"        description \u003d \"test update\""},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"        result \u003d self.service.update_volume_type(volume_type,"},{"line_number":233,"context_line":"                                                 description\u003ddescription,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9ff52f3f_685b3287","line":230,"range":{"start_line":227,"start_character":2,"end_line":230,"end_character":35},"updated":"2017-04-13 05:58:26.000000000","message":"please assert self.cinder.volume_types.update andself.service.generate_random_name which was called once time.\n\nwe can add to assert update_name\u003dFalse, if you wish. :)","commit_id":"73c96433fa9e4f13019c71fbb8759af91633a9a1"}]}
