)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17405,"name":"Jacob Gregor","email":"jgregor@us.ibm.com","username":"jgregor"},"change_message_id":"405043ecfbb151e7863953c33abf1af6ce0d6440","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Yuriy Nesenenko \u003cynesenenko@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-04-06 16:17:30 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Changing of bad approach in using CONF."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I97c58c08104e4da6f3f0386d9396224e71461856"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a061dce_eea535a2","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":39},"updated":"2016-04-06 15:11:53.000000000","message":"First line of the commit message should not end with a period.\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"db11cb0e84acc3d98e53ba7317d2a9e11c0660bc"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"9ec2c5a8b11ebbe9627369a1e52a2a572620548c","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Yuriy Nesenenko \u003cynesenenko@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-04-07 12:29:28 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Raplace explicit changing of config parameters with mock."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I97c58c08104e4da6f3f0386d9396224e71461856"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a061dce_6a14354c","line":7,"updated":"2016-04-07 13:54:52.000000000","message":"Raplace -\u003e Replace","commit_id":"2d00bc8b22709c6dc95768f37cb933f947aca9b3"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"a7b76f06d45e35024eae27d40a0669561cec8b48","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Replace explicit changing of config parameters with mock"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Changing config parameters by one test can lead to wrong behavior"},{"line_number":10,"context_line":"other tests in race conditions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I97c58c08104e4da6f3f0386d9396224e71461856"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a061dce_60942344","line":9,"updated":"2016-04-08 09:44:56.000000000","message":"missing \"of\"","commit_id":"eccfd751395307eba2a753f8869be391859308f6"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"09355f12356761e6a4ac26c9b9c165f27cad8522","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Changing config parameters by one test can lead to wrong behavior"},{"line_number":10,"context_line":"other tests in race conditions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I97c58c08104e4da6f3f0386d9396224e71461856"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a122d0e_22021973","line":11,"updated":"2016-05-02 13:36:38.000000000","message":"Does this need a bug since it was causing incorrect behavior elsewhere?","commit_id":"eccfd751395307eba2a753f8869be391859308f6"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"9598142d4190b99d1d656d573fea700695196651","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Changing config parameters by one test can lead to wrong behavior"},{"line_number":10,"context_line":"other tests in race conditions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I97c58c08104e4da6f3f0386d9396224e71461856"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"1a122d0e_402d36fc","line":11,"in_reply_to":"1a122d0e_22021973","updated":"2016-05-04 16:01:16.000000000","message":"No, no bug is required.","commit_id":"eccfd751395307eba2a753f8869be391859308f6"}],"cinder/tests/unit/test_ssh_utils.py":[{"author":{"_account_id":20105,"name":"Cao ShuFeng","email":"caosf.fnst@cn.fujitsu.com","username":"caosf.fnst"},"change_message_id":"3b4f2944f637d2c3a6abd7519584e2dee74401ab","unresolved":false,"context_lines":[{"line_number":288,"context_line":"        mock_conf.state_path \u003d \u0027/var/lib/cinder\u0027"},{"line_number":289,"context_line":"        mock_conf.ssh_hosts_key_file \u003d \u0027/tmp/blah\u0027"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        self.assertNotIn(mock_conf.state_path, mock_conf.ssh_hosts_key_file)"},{"line_number":292,"context_line":"        self.assertRaises(exception.InvalidInput,"},{"line_number":293,"context_line":"                          ssh_utils.SSHPool,"},{"line_number":294,"context_line":"                          \"127.0.0.1\", 22, 10,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a061dce_21ea7fac","line":291,"range":{"start_line":291,"start_character":7,"end_line":291,"end_character":76},"updated":"2016-04-07 06:56:30.000000000","message":"Sorry, I can\u0027t understand.\nDoes this assert still make any sense?","commit_id":"db11cb0e84acc3d98e53ba7317d2a9e11c0660bc"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"9ec2c5a8b11ebbe9627369a1e52a2a572620548c","unresolved":false,"context_lines":[{"line_number":285,"context_line":"                                        mock_isfile, mock_conf):"},{"line_number":286,"context_line":"        mock_sshclient.return_value \u003d FakeSSHClient()"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        mock_conf.state_path \u003d \u0027/var/lib/cinder\u0027"},{"line_number":289,"context_line":"        mock_conf.ssh_hosts_key_file \u003d \u0027/tmp/blah\u0027"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        self.assertRaises(exception.InvalidInput,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a061dce_7557f6c9","line":288,"updated":"2016-04-07 13:54:52.000000000","message":"Do you need this if you are deleting the assertNotIn from L#288 ?\nAnd should you be deleting L#288?","commit_id":"2d00bc8b22709c6dc95768f37cb933f947aca9b3"},{"author":{"_account_id":14305,"name":"Yuriy Nesenenko","email":"ynesenenko@mirantis.com","username":"yuriy_n"},"change_message_id":"71476d113836f3e44e33809d2e0a242079af321b","unresolved":false,"context_lines":[{"line_number":285,"context_line":"                                        mock_isfile, mock_conf):"},{"line_number":286,"context_line":"        mock_sshclient.return_value \u003d FakeSSHClient()"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        mock_conf.state_path \u003d \u0027/var/lib/cinder\u0027"},{"line_number":289,"context_line":"        mock_conf.ssh_hosts_key_file \u003d \u0027/tmp/blah\u0027"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        self.assertRaises(exception.InvalidInput,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a061dce_f0a95425","line":288,"in_reply_to":"9a061dce_7557f6c9","updated":"2016-04-07 14:20:54.000000000","message":"It\u0027s needed otherwise we\u0027ll get \"TypeError: \u0027in \u003cstring\u003e\u0027 requires string as left operand\" according to https://github.com/openstack/cinder/blob/master/cinder/ssh_utils.py#L73","commit_id":"2d00bc8b22709c6dc95768f37cb933f947aca9b3"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"66a042a6c3601d674fa39b0d164d9cf18b0fb216","unresolved":false,"context_lines":[{"line_number":285,"context_line":"                                        mock_isfile, mock_conf):"},{"line_number":286,"context_line":"        mock_sshclient.return_value \u003d FakeSSHClient()"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        mock_conf.state_path \u003d \u0027/var/lib/cinder\u0027"},{"line_number":289,"context_line":"        mock_conf.ssh_hosts_key_file \u003d \u0027/tmp/blah\u0027"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        self.assertRaises(exception.InvalidInput,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a061dce_850960e0","line":288,"in_reply_to":"9a061dce_f0a95425","updated":"2016-04-08 22:31:03.000000000","message":"Right. thanks for pointing that out.","commit_id":"2d00bc8b22709c6dc95768f37cb933f947aca9b3"}]}
