)]}'
{"rally-jobs/nova.yaml":[{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"de8d659bcf5af0a119fc2b342898e97427f398ab","unresolved":false,"context_lines":[{"line_number":1343,"context_line":"        create_volume_kwargs: {}"},{"line_number":1344,"context_line":"      runner:"},{"line_number":1345,"context_line":"        type: \"constant\""},{"line_number":1346,"context_line":"        times: 5"},{"line_number":1347,"context_line":"        concurrency: 2"},{"line_number":1348,"context_line":"      context:"},{"line_number":1349,"context_line":"        users:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"1f1a1f67_059475e7","line":1346,"updated":"2017-07-21 06:33:01.000000000","message":"please reduce times. nova gates was failed because of insufficient free space.","commit_id":"ab9773e05185cec6be789dec8800886a4c567db8"}],"rally/plugins/openstack/scenarios/nova/servers.py":[{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"2e4b88dc8f2290551cfc4d1d9c202ad8dc4fef91","unresolved":false,"context_lines":[{"line_number":495,"context_line":"                    name\u003d(\"NovaServers.boot_server\""},{"line_number":496,"context_line":"                          \"_attach_volume_and_list_attachments\"))"},{"line_number":497,"context_line":"class BootServerAttachVolumeAndListAttachments(utils.NovaScenario,"},{"line_number":498,"context_line":"                                               cinder_utils.CinderScenario):"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"    def run(self, image, flavor, volume_size,"},{"line_number":501,"context_line":"            boot_server_kwargs\u003dNone, create_volume_kwargs\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"ff0f0b1f_62be15d6","line":498,"range":{"start_line":498,"start_character":46,"end_line":498,"end_character":74},"updated":"2017-05-23 00:35:44.000000000","message":"i want we should use cinder_utils.CinderBasic instead.","commit_id":"fad784a224d603eae16522615c448a21994c3daa"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"0f64183c0b3b54463a2161d27102c4d4fd39f47c","unresolved":false,"context_lines":[{"line_number":495,"context_line":"                    name\u003d(\"NovaServers.boot_server\""},{"line_number":496,"context_line":"                          \"_attach_volume_and_list_attachments\"))"},{"line_number":497,"context_line":"class BootServerAttachVolumeAndListAttachments(utils.NovaScenario,"},{"line_number":498,"context_line":"                                               cinder_utils.CinderScenario):"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"    def run(self, image, flavor, volume_size,"},{"line_number":501,"context_line":"            boot_server_kwargs\u003dNone, create_volume_kwargs\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"ff0f0b1f_b820e049","line":498,"range":{"start_line":498,"start_character":46,"end_line":498,"end_character":74},"in_reply_to":"ff0f0b1f_62be15d6","updated":"2017-05-23 02:05:29.000000000","message":"ok, I will do it soon. also I want to replace all cinder_utils.CinderScenario with cinder_utils.CinderBasic in another patch, Do you think?","commit_id":"fad784a224d603eae16522615c448a21994c3daa"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"d02f5d45eb7eee7111b3811365d1e95e918747e9","unresolved":false,"context_lines":[{"line_number":484,"context_line":""},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"@types.convert(image\u003d{\"type\": \"glance_image\"},"},{"line_number":487,"context_line":"               flavor\u003d{\"type\": \"nova_flavor\"},"},{"line_number":488,"context_line":"               to_flavor\u003d{\"type\": \"nova_flavor\"})"},{"line_number":489,"context_line":"@validation.add(\"image_valid_on_flavor\", flavor_param\u003d\"flavor\","},{"line_number":490,"context_line":"                image_param\u003d\"image\", validate_disk\u003dFalse)"},{"line_number":491,"context_line":"@validation.add(\"required_services\", services\u003d[consts.Service.NOVA,"}],"source_content_type":"text/x-python","patch_set":6,"id":"df140735_d1c1bf30","line":488,"range":{"start_line":487,"start_character":45,"end_line":488,"end_character":48},"updated":"2017-05-29 04:59:22.000000000","message":"it is redundant","commit_id":"11b37a48f4d2a483d6c8d903813b9ee49cc8a23c"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"d02f5d45eb7eee7111b3811365d1e95e918747e9","unresolved":false,"context_lines":[{"line_number":497,"context_line":"class BootServerAttachVolumeAndListAttachments(utils.NovaScenario,"},{"line_number":498,"context_line":"                                               cinder_utils.CinderBasic):"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"    def run(self, image, flavor, volume_size,"},{"line_number":501,"context_line":"            boot_server_kwargs\u003dNone, create_volume_kwargs\u003dNone):"},{"line_number":502,"context_line":"        \"\"\"Create a VM, attach a volume to it and list server\u0027s attachemnt."},{"line_number":503,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"df140735_71e673eb","line":500,"range":{"start_line":500,"start_character":32,"end_line":500,"end_character":44},"updated":"2017-05-29 04:59:22.000000000","message":"what about \"1\" as a default value(if yes, let\u0027s use it and document)? It is much user-friendly to reduce a number of required parameters","commit_id":"11b37a48f4d2a483d6c8d903813b9ee49cc8a23c"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"d02f5d45eb7eee7111b3811365d1e95e918747e9","unresolved":false,"context_lines":[{"line_number":505,"context_line":""},{"line_number":506,"context_line":"        :param image: Glance image name to use for the VM"},{"line_number":507,"context_line":"        :param flavor: VM flavor name"},{"line_number":508,"context_line":"        :param volume_size: volume size (in GB)"},{"line_number":509,"context_line":"        :param boot_server_kwargs: optional arguments for VM creation"},{"line_number":510,"context_line":"        :param create_volume_kwargs: optional arguments for volume creation"},{"line_number":511,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"df140735_91e107d4","line":508,"range":{"start_line":508,"start_character":8,"end_line":508,"end_character":47},"updated":"2017-05-29 04:59:22.000000000","message":"let\u0027s use \"number\" validator for it with minval\u003d1 and integer_only\u003dTrue","commit_id":"11b37a48f4d2a483d6c8d903813b9ee49cc8a23c"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"18193dbb32986957498ab58a94a93ef547e780cb","unresolved":false,"context_lines":[{"line_number":513,"context_line":"        boot_server_kwargs \u003d boot_server_kwargs or {}"},{"line_number":514,"context_line":"        create_volume_kwargs \u003d create_volume_kwargs or {}"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        server \u003d self._boot_server(image, flavor, **boot_server_kwargs)"},{"line_number":517,"context_line":"        volume \u003d self.cinder.create_volume(volume_size, **create_volume_kwargs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        attachment \u003d self._attach_volume(server, volume)"},{"line_number":520,"context_line":"        list_attachments \u003d self._list_attachments(server.id)"},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"        msg \u003d (\"attachment not included into list of available attachments\\n\""},{"line_number":523,"context_line":"               \"attachment: {}\\n\""}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_723ea4c1","line":520,"range":{"start_line":516,"start_character":0,"end_line":520,"end_character":60},"updated":"2017-07-19 03:21:39.000000000","message":"For this scenario, i think we could create more volumes and attach them to the server, then list attachments.","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d6f55b3517f0736f7793dd0dfaf967ded9407f95","unresolved":false,"context_lines":[{"line_number":513,"context_line":"        boot_server_kwargs \u003d boot_server_kwargs or {}"},{"line_number":514,"context_line":"        create_volume_kwargs \u003d create_volume_kwargs or {}"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        server \u003d self._boot_server(image, flavor, **boot_server_kwargs)"},{"line_number":517,"context_line":"        volume \u003d self.cinder.create_volume(volume_size, **create_volume_kwargs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        attachment \u003d self._attach_volume(server, volume)"},{"line_number":520,"context_line":"        list_attachments \u003d self._list_attachments(server.id)"},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"        msg \u003d (\"attachment not included into list of available attachments\\n\""},{"line_number":523,"context_line":"               \"attachment: {}\\n\""}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_d978d32c","line":520,"range":{"start_line":516,"start_character":0,"end_line":520,"end_character":60},"in_reply_to":"1f1a1f67_723ea4c1","updated":"2017-07-20 05:29:29.000000000","message":"Done","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"},{"author":{"_account_id":21528,"name":"chenhb","email":"chen.haibing1@zte.com.cn","username":"chenhb"},"change_message_id":"d0061f2b2ba45261b0167b57990fd7402dabe2ee","unresolved":false,"context_lines":[{"line_number":520,"context_line":"        for i in range(volume_num):"},{"line_number":521,"context_line":"            volume \u003d self.cinder.create_volume(volume_size,"},{"line_number":522,"context_line":"                                               **create_volume_kwargs)"},{"line_number":523,"context_line":"            attachments \u003d [self._attach_volume(server, volume)]"},{"line_number":524,"context_line":""},{"line_number":525,"context_line":"        list_attachments \u003d self._list_attachments(server.id)"},{"line_number":526,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"1f1a1f67_90f34574","line":523,"updated":"2017-07-20 11:26:59.000000000","message":"This line is wrong.\n\nattachments.append(self._attach_volume(server, volume))","commit_id":"62b221b490057e4d94831c599006cb5caf1503a0"}],"tests/unit/plugins/openstack/scenarios/nova/test_servers.py":[{"author":{"_account_id":26229,"name":"Amy Ge","email":"amy.ge@aol.com","username":"yaoge"},"change_message_id":"dd57ee6e5cc7af65955139a0e7f9ea345738a386","unresolved":false,"context_lines":[{"line_number":566,"context_line":"        fake_server \u003d mock.MagicMock()"},{"line_number":567,"context_line":"        flavor \u003d mock.MagicMock()"},{"line_number":568,"context_line":"        fake_attachment \u003d mock.MagicMock()"},{"line_number":569,"context_line":"        list_attacchments \u003d [mock.MagicMock(),"},{"line_number":570,"context_line":"                             fake_attachment,"},{"line_number":571,"context_line":"                             mock.MagicMock()]"},{"line_number":572,"context_line":"        context \u003d self.context"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_433404de","line":569,"range":{"start_line":569,"start_character":8,"end_line":569,"end_character":25},"updated":"2017-07-18 23:48:32.000000000","message":"an extra \u0027c\u0027 for \u0027attachments\u0027~ although the code works, I think it will look better with correct spelling","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d6f55b3517f0736f7793dd0dfaf967ded9407f95","unresolved":false,"context_lines":[{"line_number":566,"context_line":"        fake_server \u003d mock.MagicMock()"},{"line_number":567,"context_line":"        flavor \u003d mock.MagicMock()"},{"line_number":568,"context_line":"        fake_attachment \u003d mock.MagicMock()"},{"line_number":569,"context_line":"        list_attacchments \u003d [mock.MagicMock(),"},{"line_number":570,"context_line":"                             fake_attachment,"},{"line_number":571,"context_line":"                             mock.MagicMock()]"},{"line_number":572,"context_line":"        context \u003d self.context"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_f0d7474a","line":569,"range":{"start_line":569,"start_character":8,"end_line":569,"end_character":25},"in_reply_to":"1f1a1f67_433404de","updated":"2017-07-20 05:29:29.000000000","message":"Done","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"},{"author":{"_account_id":26229,"name":"Amy Ge","email":"amy.ge@aol.com","username":"yaoge"},"change_message_id":"dd57ee6e5cc7af65955139a0e7f9ea345738a386","unresolved":false,"context_lines":[{"line_number":586,"context_line":"        scenario._attach_volume \u003d mock.MagicMock()"},{"line_number":587,"context_line":"        scenario._list_attachments \u003d mock.MagicMock()"},{"line_number":588,"context_line":"        mock_volume_service.create_volume.return_value \u003d fake_volume"},{"line_number":589,"context_line":"        scenario._list_attachments.return_value \u003d list_attacchments"},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"        img_name \u003d \"img\""},{"line_number":592,"context_line":"        volume_size \u003d 10"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_232fc888","line":589,"range":{"start_line":589,"start_character":50,"end_line":589,"end_character":67},"updated":"2017-07-18 23:48:32.000000000","message":"here as well","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"},{"author":{"_account_id":23435,"name":"zhangzhihui","email":"zhangzh.fnst@cn.fujitsu.com","username":"zhangzhang"},"change_message_id":"d6f55b3517f0736f7793dd0dfaf967ded9407f95","unresolved":false,"context_lines":[{"line_number":586,"context_line":"        scenario._attach_volume \u003d mock.MagicMock()"},{"line_number":587,"context_line":"        scenario._list_attachments \u003d mock.MagicMock()"},{"line_number":588,"context_line":"        mock_volume_service.create_volume.return_value \u003d fake_volume"},{"line_number":589,"context_line":"        scenario._list_attachments.return_value \u003d list_attacchments"},{"line_number":590,"context_line":""},{"line_number":591,"context_line":"        img_name \u003d \"img\""},{"line_number":592,"context_line":"        volume_size \u003d 10"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_b0cd4fb8","line":589,"range":{"start_line":589,"start_character":50,"end_line":589,"end_character":67},"in_reply_to":"1f1a1f67_232fc888","updated":"2017-07-20 05:29:29.000000000","message":"Done","commit_id":"9888ea5c9a1f1a3eb785589822c7a85c05037bb2"}]}
