)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"0f73b793b22c3db8508a2903de2465b74f1a6cda","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Raunak Kumar \u003crkumar@nimblestorage.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-06 15:59:35 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implements: blueprint nimble-add-extra-specs-support"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add extra spec capability for Nimble Cinder Driver"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba3cc151_3bd7b4c0","line":7,"updated":"2015-07-07 15:06:16.000000000","message":"You should look at https://wiki.openstack.org/wiki/GitCommitMessages.  This line should not be in the summary.","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":12,"context_line":"nimble:perfpol-name \u003d \u003cPerformance Policy Name\u003e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"2. Encryption"},{"line_number":15,"context_line":"nimble:encryption \u003d \"yes\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Added Unit Test for mocking the extra specs"},{"line_number":18,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a41bdd9_1bce4e82","line":15,"updated":"2015-07-14 16:15:13.000000000","message":"For consistency, perhaps this should read:\n nimble:encryption \u003d \u003cyes or no\u003e","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":12,"context_line":"nimble:perfpol-name \u003d \u003cPerformance Policy Name\u003e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"2. Encryption"},{"line_number":15,"context_line":"nimble:encryption \u003d \"yes\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Added Unit Test for mocking the extra specs"},{"line_number":18,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a41bdd9_919c7f10","line":15,"in_reply_to":"9a41bdd9_1bce4e82","updated":"2015-07-14 18:12:44.000000000","message":"We enable encryption only if it is specifically mentioned as yes, otherwise it is a No. We don\u0027t want user to mention a No as we want it to fallback to the default encryption set  on the  array","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"4dd561f2dcb28df4775099c0275aa3274d090fe5","unresolved":false,"context_lines":[{"line_number":14,"context_line":"2. Encryption"},{"line_number":15,"context_line":"nimble:encryption \u003d \"yes\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Added Unit Test for mocking the extra specs"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Implements: blueprint nimble-add-extra-specs-support"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"9a41bdd9_d67a9976","line":17,"updated":"2015-07-16 09:21:05.000000000","message":"Can remove this line.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"849642b99e57c92c4511b60cc49d929c44da3a70","unresolved":false,"context_lines":[{"line_number":14,"context_line":"2. Encryption"},{"line_number":15,"context_line":"nimble:encryption \u003d \"yes\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Added Unit Test for mocking the extra specs"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Implements: blueprint nimble-add-extra-specs-support"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"3a50d1a3_27490660","line":17,"in_reply_to":"9a41bdd9_d67a9976","updated":"2015-07-20 18:45:53.000000000","message":"Done","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"3f843f3c657f15cce2cf46d0c482dcb7fde5f2a0","unresolved":false,"context_lines":[{"line_number":14,"context_line":"2. Encryption"},{"line_number":15,"context_line":"nimble:encryption \u003d \"yes\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Implements: blueprint nimble-add-extra-specs-support"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I45a18b189746b778f10eecbf669be7943828e28b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":16,"id":"3a50d1a3_d0b745d6","line":17,"updated":"2015-07-22 14:37:04.000000000","message":"Need \"DocImpact\" since you have new extra specs.","commit_id":"51cf6e344f8e9c074a27337f260dab88e7ce4791"}],"cinder/tests/unit/test_nimble.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"59a37a50cef896cccf1877fef40ef309c4a99a5b","unresolved":false,"context_lines":[{"line_number":252,"context_line":"    @mock.patch(NIMBLE_URLLIB2)"},{"line_number":253,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":254,"context_line":"    @mock.patch("},{"line_number":255,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor._get_extra_spec_value\","},{"line_number":256,"context_line":"        mock.Mock(return_value\u003d{\u0027default\u0027, \u0027yes\u0027}))"},{"line_number":257,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":258,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba3cc151_3099ff6e","line":255,"updated":"2015-07-07 20:45:58.000000000","message":"s/value/values/","commit_id":"e90ed89c612f38cdce6634b3f61fd687922dbf0c"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"fca2c032d0d738e690bfba89531e9973ca779afe","unresolved":false,"context_lines":[{"line_number":252,"context_line":"    @mock.patch(NIMBLE_URLLIB2)"},{"line_number":253,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":254,"context_line":"    @mock.patch("},{"line_number":255,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor._get_extra_spec_value\","},{"line_number":256,"context_line":"        mock.Mock(return_value\u003d{\u0027default\u0027, \u0027yes\u0027}))"},{"line_number":257,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":258,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba3cc151_c3d6cff0","line":255,"in_reply_to":"ba3cc151_3099ff6e","updated":"2015-07-07 21:33:19.000000000","message":"Thanks for the catch. Fixed it.","commit_id":"e90ed89c612f38cdce6634b3f61fd687922dbf0c"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"59a37a50cef896cccf1877fef40ef309c4a99a5b","unresolved":false,"context_lines":[{"line_number":286,"context_line":"    @mock.patch(NIMBLE_URLLIB2)"},{"line_number":287,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":288,"context_line":"    @mock.patch("},{"line_number":289,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor._get_extra_spec_value\","},{"line_number":290,"context_line":"        mock.Mock(return_value\u003d{\u0027VMware ESX\u0027, \u0027no\u0027}))"},{"line_number":291,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":292,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba3cc151_d0a8d379","line":289,"updated":"2015-07-07 20:45:58.000000000","message":"s/value/values/","commit_id":"e90ed89c612f38cdce6634b3f61fd687922dbf0c"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"fca2c032d0d738e690bfba89531e9973ca779afe","unresolved":false,"context_lines":[{"line_number":286,"context_line":"    @mock.patch(NIMBLE_URLLIB2)"},{"line_number":287,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":288,"context_line":"    @mock.patch("},{"line_number":289,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor._get_extra_spec_value\","},{"line_number":290,"context_line":"        mock.Mock(return_value\u003d{\u0027VMware ESX\u0027, \u0027no\u0027}))"},{"line_number":291,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":292,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba3cc151_a3db8b1a","line":289,"in_reply_to":"ba3cc151_d0a8d379","updated":"2015-07-07 21:33:19.000000000","message":"Done","commit_id":"e90ed89c612f38cdce6634b3f61fd687922dbf0c"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"4dd561f2dcb28df4775099c0275aa3274d090fe5","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_76706d40","line":271,"updated":"2015-07-16 09:21:05.000000000","message":"The extra-specs are in volume type, then why it is none?","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"849642b99e57c92c4511b60cc49d929c44da3a70","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_a72516ac","line":271,"in_reply_to":"3a50d1a3_10c1d4e4","updated":"2015-07-20 18:45:53.000000000","message":"Done","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"57ea4acf1df4a4fae4e81a34c211cc8aed8e7687","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_1e1ae96e","line":271,"in_reply_to":"9a41bdd9_2cdd5f14","updated":"2015-07-21 12:35:28.000000000","message":"\u003e I am testing the _get_extra_spec_values\n\nI don\u0027t understand, you were using a mock and that is not testing it.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"b716f3f18b94f1c0c4e19fb474f555ce43663e1b","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_10c1d4e4","line":271,"in_reply_to":"9a41bdd9_2cdd5f14","updated":"2015-07-19 04:49:42.000000000","message":"I agree with Vipin that \u0027volume_type_id\u0027 shouldn\u0027t be None there, I think you can mock the return value of \nvolume_types.get_volume_type_extra_specs(type_id) and pass an not None volume_type_id here.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"849642b99e57c92c4511b60cc49d929c44da3a70","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_c72622ba","line":271,"in_reply_to":"9a41bdd9_641084a9","updated":"2015-07-20 18:45:53.000000000","message":"Done","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"48a87575282e88556ef0c73a5b783051c977def2","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_2cdd5f14","line":271,"in_reply_to":"9a41bdd9_641084a9","updated":"2015-07-17 17:20:11.000000000","message":"I am testing the _get_extra_spec_values - Both the extra specs are being passed on to the function as well as within  our nimble API calls\n\n\"cinder.volume.drivers.nimble.NimbleAPIExecutor\"\n\"._get_extra_spec_values\",\t254\nmock.Mock(return_value\u003d{\u0027default\u0027, \u0027yes\u0027}))\n\nperfpol-name\u0027: \u0027default\u0027,  \u0027encryptionAttr\u0027: {\u0027cipher\u0027: 2}},","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"9e6feea8d699b9233ba40956ca0b7bcf68dc27d2","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_9cf7348c","line":271,"in_reply_to":"9a41bdd9_76706d40","updated":"2015-07-16 17:19:15.000000000","message":"We obtain the extra_spec values from the decorator _get_extra_spec_values. The use of volume_type_id was to obtain the extra_spec from cinder volume types. In our case our APIs are agnostic of it so we dont need it.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"15b8bb684448db2b6944e765251da07d71db9b7e","unresolved":false,"context_lines":[{"line_number":268,"context_line":"            \u0027provider_auth\u0027: None},"},{"line_number":269,"context_line":"            self.driver.create_volume({\u0027name\u0027: \u0027testvolume-encryption\u0027,"},{"line_number":270,"context_line":"                                       \u0027size\u0027: 1,"},{"line_number":271,"context_line":"                                       \u0027volume_type_id\u0027: None,"},{"line_number":272,"context_line":"                                       \u0027display_name\u0027: \u0027\u0027,"},{"line_number":273,"context_line":"                                       \u0027display_description\u0027: \u0027\u0027}))"},{"line_number":274,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_641084a9","line":271,"in_reply_to":"9a41bdd9_9cf7348c","updated":"2015-07-17 05:23:28.000000000","message":"So you are not testing the newly added _get_volumetype_extraspecs and _get_extra_spec_values.\n\nYou pass None as volume_type_id, therefore _get_volumetype_extraspecs  returns {} which is passed to mock _get_extra_spec_values. I think you should improve your tests to cover these methods.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"923bd78e9ab49ee350425641c5b4fbc44226923b","unresolved":false,"context_lines":[{"line_number":251,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":252,"context_line":"    @mock.patch("},{"line_number":253,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor\""},{"line_number":254,"context_line":"        \"._get_volumetype_extraspecs\","},{"line_number":255,"context_line":"        mock.Mock(type_id\u003d12345, return_value\u003d{"},{"line_number":256,"context_line":"                  \u0027nimble:perfpol-name\u0027: \u0027default\u0027,"},{"line_number":257,"context_line":"                  \u0027nimble:encryption\u0027: \u0027yes\u0027}))"}],"source_content_type":"text/x-python","patch_set":12,"id":"3a50d1a3_9eafd993","line":254,"updated":"2015-07-21 12:35:44.000000000","message":"As Xing mentioned in the previous patch, you should mock only volume_types.get_volume_type_extra_specs. You shouldn\u0027t mock NimbleAPIExecutor._get_volumetype_extraspecs. Also, you should assert  volume_types.get_volume_type_extra_specs is called with the correct argument.","commit_id":"b945b727f8dfa086e87c5dcb6210cba7a0d4977e"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"0c99ee9ef9fdafd260ebcc977ef1785c4c0ce0b2","unresolved":false,"context_lines":[{"line_number":251,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":252,"context_line":"    @mock.patch("},{"line_number":253,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor\""},{"line_number":254,"context_line":"        \"._get_volumetype_extraspecs\","},{"line_number":255,"context_line":"        mock.Mock(type_id\u003d12345, return_value\u003d{"},{"line_number":256,"context_line":"                  \u0027nimble:perfpol-name\u0027: \u0027default\u0027,"},{"line_number":257,"context_line":"                  \u0027nimble:encryption\u0027: \u0027yes\u0027}))"}],"source_content_type":"text/x-python","patch_set":12,"id":"3a50d1a3_9e782791","line":254,"in_reply_to":"3a50d1a3_9eafd993","updated":"2015-07-21 17:21:50.000000000","message":"Agreed.","commit_id":"b945b727f8dfa086e87c5dcb6210cba7a0d4977e"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"e7dd1d44f271f6c91067088fdb55844537c18cd8","unresolved":false,"context_lines":[{"line_number":251,"context_line":"    @mock.patch(NIMBLE_CLIENT)"},{"line_number":252,"context_line":"    @mock.patch("},{"line_number":253,"context_line":"        \"cinder.volume.drivers.nimble.NimbleAPIExecutor\""},{"line_number":254,"context_line":"        \"._get_volumetype_extraspecs\","},{"line_number":255,"context_line":"        mock.Mock(type_id\u003d12345, return_value\u003d{"},{"line_number":256,"context_line":"                  \u0027nimble:perfpol-name\u0027: \u0027default\u0027,"},{"line_number":257,"context_line":"                  \u0027nimble:encryption\u0027: \u0027yes\u0027}))"}],"source_content_type":"text/x-python","patch_set":12,"id":"3a50d1a3_7eeafb10","line":254,"in_reply_to":"3a50d1a3_9eafd993","updated":"2015-07-21 17:24:22.000000000","message":"Have made the changes in the latest patch. Hope I addressed your concerns for mock and the assert","commit_id":"b945b727f8dfa086e87c5dcb6210cba7a0d4977e"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"21c9f3e3b0c02fcd1b1e7e91ba823506ff2efd56","unresolved":false,"context_lines":[{"line_number":255,"context_line":"                          \u0027nimble:encryption\u0027: \u0027yes\u0027}))"},{"line_number":256,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":257,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":258,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":259,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":260,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":261,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_247464cd","line":258,"updated":"2015-07-21 18:20:50.000000000","message":"This is much better.  One comment in the previous patch set was to do a assert called on cinder.volume.volume_types.get_volume_type_extra_specs.\n\ndef test_create_volume_encryption_positive(self, mock_config, mock_volume_types, mock_client, mock_url):\n\nThen call the following after the create_volume call.\n\nmock_volume_types.assert_called_once_with(...)","commit_id":"45e968f46f78501a34e923afb0ff0f4a614de2c3"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"9edc9680f5006d243dd6f6253c612daa21bc9095","unresolved":false,"context_lines":[{"line_number":255,"context_line":"                          \u0027nimble:encryption\u0027: \u0027yes\u0027}))"},{"line_number":256,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":257,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":258,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":259,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":260,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":261,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_4c33cf14","line":258,"in_reply_to":"3a50d1a3_247464cd","updated":"2015-07-21 21:49:29.000000000","message":"added a check for assert for cinder volume types in addition to assert to creation of our volume with volume_type_id","commit_id":"45e968f46f78501a34e923afb0ff0f4a614de2c3"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"21c9f3e3b0c02fcd1b1e7e91ba823506ff2efd56","unresolved":false,"context_lines":[{"line_number":260,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":261,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":262,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":263,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":264,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"        self.assertEqual({"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_0404c847","line":263,"updated":"2015-07-21 18:20:50.000000000","message":"Please replace \\ with ()","commit_id":"45e968f46f78501a34e923afb0ff0f4a614de2c3"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"9edc9680f5006d243dd6f6253c612daa21bc9095","unresolved":false,"context_lines":[{"line_number":260,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":261,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":262,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":263,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":264,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"        self.assertEqual({"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_6c380bf0","line":263,"in_reply_to":"3a50d1a3_0404c847","updated":"2015-07-21 21:49:29.000000000","message":"as discussed we will take this up later to standardize the entire code base","commit_id":"45e968f46f78501a34e923afb0ff0f4a614de2c3"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"21c9f3e3b0c02fcd1b1e7e91ba823506ff2efd56","unresolved":false,"context_lines":[{"line_number":295,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":296,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":297,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":298,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":299,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":300,"context_line":""},{"line_number":301,"context_line":"        self.assertEqual("}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_a4c074e1","line":298,"updated":"2015-07-21 18:20:50.000000000","message":"Here too.","commit_id":"45e968f46f78501a34e923afb0ff0f4a614de2c3"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":259,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":260,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":261,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":262,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_46be7100","line":262,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":259,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":260,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":261,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":262,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_06606934","line":262,"in_reply_to":"3a50d1a3_46be7100","updated":"2015-07-27 06:40:21.000000000","message":"Hi Vincent, I have addressed in my previous code review. This change would be taken up later to standardize the code base for all test cases","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":261,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":262,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":266,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":267,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_864b192b","line":264,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":261,"context_line":"    def test_create_volume_encryption_positive(self):"},{"line_number":262,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":266,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":267,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_26632543","line":264,"in_reply_to":"3a50d1a3_864b192b","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":266,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":267,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        self.assertEqual({"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_465511c4","line":266,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":263,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_ENCRYPTION"},{"line_number":264,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":265,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":266,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":267,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        self.assertEqual({"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_86547954","line":266,"in_reply_to":"3a50d1a3_465511c4","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":297,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":298,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":299,"context_line":"    def test_create_volume_perfpolicy_positive(self):"},{"line_number":300,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_063709b1","line":300,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":297,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":298,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":299,"context_line":"    def test_create_volume_perfpolicy_positive(self):"},{"line_number":300,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_464e71c2","line":300,"in_reply_to":"3a50d1a3_063709b1","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":299,"context_line":"    def test_create_volume_perfpolicy_positive(self):"},{"line_number":300,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":304,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":305,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_c640410a","line":302,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":299,"context_line":"    def test_create_volume_perfpolicy_positive(self):"},{"line_number":300,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":304,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":305,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_66492db7","line":302,"in_reply_to":"3a50d1a3_c640410a","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":304,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":305,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"        self.assertEqual("}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_26d32561","line":304,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":301,"context_line":"            FAKE_CREATE_VOLUME_POSITIVE_RESPONSE_PERFPOLICY"},{"line_number":302,"context_line":"        self.mock_client_service.service.getVolInfo.return_value \u003d \\"},{"line_number":303,"context_line":"            FAKE_GET_VOL_INFO_RESPONSE"},{"line_number":304,"context_line":"        self.mock_client_service.service.getNetConfig.return_value \u003d \\"},{"line_number":305,"context_line":"            FAKE_POSITIVE_NETCONFIG_RESPONSE"},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"        self.assertEqual("}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_06c70913","line":304,"in_reply_to":"3a50d1a3_26d32561","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":331,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":332,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":333,"context_line":"    def test_create_volume_negative(self):"},{"line_number":334,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":335,"context_line":"            FAKE_CREATE_VOLUME_NEGATIVE_RESPONSE"},{"line_number":336,"context_line":"        self.assertRaises("},{"line_number":337,"context_line":"            exception.VolumeBackendAPIException,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_06d06952","line":334,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":331,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":332,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":333,"context_line":"    def test_create_volume_negative(self):"},{"line_number":334,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":335,"context_line":"            FAKE_CREATE_VOLUME_NEGATIVE_RESPONSE"},{"line_number":336,"context_line":"        self.assertRaises("},{"line_number":337,"context_line":"            exception.VolumeBackendAPIException,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_26ca451b","line":334,"in_reply_to":"3a50d1a3_06d06952","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":363,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":364,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":365,"context_line":"    def test_create_volume_perfpolicy_negative(self):"},{"line_number":366,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":367,"context_line":"            FAKE_CREATE_VOLUME_NEGATIVE_RESPONSE_PERFPOLICY"},{"line_number":368,"context_line":"        self.assertRaises("},{"line_number":369,"context_line":"            exception.VolumeBackendAPIException,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_86dd5972","line":366,"updated":"2015-07-27 06:22:53.000000000","message":"Please use () to replace \\.","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"03fef104422188cb4fb18e676d0b3737adae514f","unresolved":false,"context_lines":[{"line_number":363,"context_line":"    @NimbleDriverBaseTestCase.client_mock_decorator(create_configuration("},{"line_number":364,"context_line":"        \u0027nimble\u0027, \u0027nimble_pass\u0027, \u002710.18.108.55\u0027, \u0027default\u0027, \u0027*\u0027))"},{"line_number":365,"context_line":"    def test_create_volume_perfpolicy_negative(self):"},{"line_number":366,"context_line":"        self.mock_client_service.service.createVol.return_value \u003d \\"},{"line_number":367,"context_line":"            FAKE_CREATE_VOLUME_NEGATIVE_RESPONSE_PERFPOLICY"},{"line_number":368,"context_line":"        self.assertRaises("},{"line_number":369,"context_line":"            exception.VolumeBackendAPIException,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_e6d3fdd3","line":366,"in_reply_to":"3a50d1a3_86dd5972","updated":"2015-07-27 06:40:21.000000000","message":"same as above","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"}],"cinder/volume/drivers/nimble.py":[{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"0f73b793b22c3db8508a2903de2465b74f1a6cda","unresolved":false,"context_lines":[{"line_number":475,"context_line":"        response \u003d self._execute_get_netconfig(name)"},{"line_number":476,"context_line":"        return response[\u0027config\u0027]"},{"line_number":477,"context_line":""},{"line_number":478,"context_line":"    def get_volumetype_extraspecs(self, volume):"},{"line_number":479,"context_line":"        specs \u003d {}"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_3e6482e3","line":478,"updated":"2015-07-07 15:06:16.000000000","message":"This should be a private method, i.e. _get_volumetype_extraspecs(), since it is only used within the driver.","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"140decf51dcad150a7dd7390642d04d56556df1c","unresolved":false,"context_lines":[{"line_number":475,"context_line":"        response \u003d self._execute_get_netconfig(name)"},{"line_number":476,"context_line":"        return response[\u0027config\u0027]"},{"line_number":477,"context_line":""},{"line_number":478,"context_line":"    def get_volumetype_extraspecs(self, volume):"},{"line_number":479,"context_line":"        specs \u003d {}"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_26d794c0","line":478,"in_reply_to":"ba3cc151_3e6482e3","updated":"2015-07-07 21:31:56.000000000","message":"Done","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"0f73b793b22c3db8508a2903de2465b74f1a6cda","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            specs \u003d volume_types.get_volume_type_extra_specs(type_id)"},{"line_number":484,"context_line":"        return specs"},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"    def _get_extra_spec_value(self, extra_specs):"},{"line_number":487,"context_line":"        # Nimble specific extra Specs"},{"line_number":488,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":489,"context_line":"        encryption \u003d \"no\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_7e23eaa7","line":486,"updated":"2015-07-07 15:06:16.000000000","message":"_get_extra_specs?  It is returning a couple of values, not just one as indicated by the method name.","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"140decf51dcad150a7dd7390642d04d56556df1c","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            specs \u003d volume_types.get_volume_type_extra_specs(type_id)"},{"line_number":484,"context_line":"        return specs"},{"line_number":485,"context_line":""},{"line_number":486,"context_line":"    def _get_extra_spec_value(self, extra_specs):"},{"line_number":487,"context_line":"        # Nimble specific extra Specs"},{"line_number":488,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":489,"context_line":"        encryption \u003d \"no\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_a6f1646c","line":486,"in_reply_to":"ba3cc151_7e23eaa7","updated":"2015-07-07 21:31:56.000000000","message":"Done","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"0f73b793b22c3db8508a2903de2465b74f1a6cda","unresolved":false,"context_lines":[{"line_number":507,"context_line":"        description \u003d description[:254]"},{"line_number":508,"context_line":""},{"line_number":509,"context_line":"        # default value of cipher for encryption"},{"line_number":510,"context_line":"        cipher \u003d 3"},{"line_number":511,"context_line":""},{"line_number":512,"context_line":"        # extra specs"},{"line_number":513,"context_line":"        specs \u003d self.get_volumetype_extraspecs(volume)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_9b63601a","line":510,"updated":"2015-07-07 15:06:16.000000000","message":"These static values should be put at the top, i.e. DEFAULT_CIPHER \u003d 3.","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"140decf51dcad150a7dd7390642d04d56556df1c","unresolved":false,"context_lines":[{"line_number":507,"context_line":"        description \u003d description[:254]"},{"line_number":508,"context_line":""},{"line_number":509,"context_line":"        # default value of cipher for encryption"},{"line_number":510,"context_line":"        cipher \u003d 3"},{"line_number":511,"context_line":""},{"line_number":512,"context_line":"        # extra specs"},{"line_number":513,"context_line":"        specs \u003d self.get_volumetype_extraspecs(volume)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_66eb5c79","line":510,"in_reply_to":"ba3cc151_9b63601a","updated":"2015-07-07 21:31:56.000000000","message":"Done","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":8247,"name":"Thang Pham","email":"thang.g.pham@gmail.com","username":"thang.pham"},"change_message_id":"0f73b793b22c3db8508a2903de2465b74f1a6cda","unresolved":false,"context_lines":[{"line_number":517,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":518,"context_line":"        if encrypt \u003d\u003d \"yes\":"},{"line_number":519,"context_line":"            # AES-256-xts cipher"},{"line_number":520,"context_line":"            cipher \u003d 2"},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":523,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_fb7cecb6","line":520,"updated":"2015-07-07 15:06:16.000000000","message":"Ditto, i.e. ENCRYPT_CIPHER \u003d 2","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"140decf51dcad150a7dd7390642d04d56556df1c","unresolved":false,"context_lines":[{"line_number":517,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":518,"context_line":"        if encrypt \u003d\u003d \"yes\":"},{"line_number":519,"context_line":"            # AES-256-xts cipher"},{"line_number":520,"context_line":"            cipher \u003d 2"},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":523,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba3cc151_26feb438","line":520,"in_reply_to":"ba3cc151_fb7cecb6","updated":"2015-07-07 21:31:56.000000000","message":"Done","commit_id":"817e9b3d702637a519360ae97f4bf47f50859fcb"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"3e21803a2921e9132d33f9eaa56f0f8430860a75","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"},{"line_number":526,"context_line":"                     \u0027cipher\u003d%(cipher)s\u0027)"},{"line_number":527,"context_line":"                 % {\u0027perf\u0027: perf_policy_name,"},{"line_number":528,"context_line":"                    \u0027encryption\u0027: encrypt,"},{"line_number":529,"context_line":"                    \u0027cipher\u0027: cipher})"},{"line_number":530,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba3cc151_6043b942","line":527,"updated":"2015-07-09 20:27:47.000000000","message":"please use , instead of %","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"537e7d57cc267865c49618d03f083ee443fbe3a9","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"},{"line_number":526,"context_line":"                     \u0027cipher\u003d%(cipher)s\u0027)"},{"line_number":527,"context_line":"                 % {\u0027perf\u0027: perf_policy_name,"},{"line_number":528,"context_line":"                    \u0027encryption\u0027: encrypt,"},{"line_number":529,"context_line":"                    \u0027cipher\u0027: cipher})"},{"line_number":530,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba3cc151_922e1df9","line":527,"in_reply_to":"ba3cc151_6043b942","updated":"2015-07-10 19:01:35.000000000","message":"We have been using this standard for quite a while now. So a large portion of our code base uses this method to log. I understand your point to move it to  \",\" insread of \"%\". So I have created a bug to convert all our logging and string formating for the same.\n\nThe bug is located at https://bugs.launchpad.net/cinder/+bug/1473539\n\nAs of now this just involves the extra specs so would want to keep it the same.","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b4ad448677d7a9728e315544c03aaa41630dce4f","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"},{"line_number":526,"context_line":"                     \u0027cipher\u003d%(cipher)s\u0027)"},{"line_number":527,"context_line":"                 % {\u0027perf\u0027: perf_policy_name,"},{"line_number":528,"context_line":"                    \u0027encryption\u0027: encrypt,"},{"line_number":529,"context_line":"                    \u0027cipher\u0027: cipher})"},{"line_number":530,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"ba3cc151_bde76d45","line":527,"in_reply_to":"ba3cc151_922e1df9","updated":"2015-07-10 22:00:06.000000000","message":"The usage of % is incorrect.\n\nhttp://docs.openstack.org/developer/oslo.i18n/guidelines.html","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"82d22c5eb143beb59118ea8a1ece965a699cffe3","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%(perf)s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%(encryption)s \u0027"},{"line_number":526,"context_line":"                     \u0027cipher\u003d%(cipher)s\u0027)"},{"line_number":527,"context_line":"                 % {\u0027perf\u0027: perf_policy_name,"},{"line_number":528,"context_line":"                    \u0027encryption\u0027: encrypt,"},{"line_number":529,"context_line":"                    \u0027cipher\u0027: cipher})"},{"line_number":530,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_7f510f62","line":527,"in_reply_to":"ba3cc151_bde76d45","updated":"2015-07-10 22:58:40.000000000","message":"Done","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"3e21803a2921e9132d33f9eaa56f0f8430860a75","unresolved":false,"context_lines":[{"line_number":532,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":533,"context_line":"                     \u0027 description\u003d%(description)s\u0027"},{"line_number":534,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s\u0027)"},{"line_number":535,"context_line":"                 % {\u0027vol\u0027: volume[\u0027name\u0027],"},{"line_number":536,"context_line":"                    \u0027size\u0027: volume_size,"},{"line_number":537,"context_line":"                    \u0027reserve\u0027: reserve,"},{"line_number":538,"context_line":"                    \u0027pool\u0027: pool_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba3cc151_803efdb5","line":535,"updated":"2015-07-09 20:27:47.000000000","message":"same","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"537e7d57cc267865c49618d03f083ee443fbe3a9","unresolved":false,"context_lines":[{"line_number":532,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":533,"context_line":"                     \u0027 description\u003d%(description)s\u0027"},{"line_number":534,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s\u0027)"},{"line_number":535,"context_line":"                 % {\u0027vol\u0027: volume[\u0027name\u0027],"},{"line_number":536,"context_line":"                    \u0027size\u0027: volume_size,"},{"line_number":537,"context_line":"                    \u0027reserve\u0027: reserve,"},{"line_number":538,"context_line":"                    \u0027pool\u0027: pool_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba3cc151_520f3588","line":535,"in_reply_to":"ba3cc151_803efdb5","updated":"2015-07-10 19:01:35.000000000","message":"same as above","commit_id":"e5f55acb5e600863046ac0da6f0ac9ba47535e86"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"1fe764b41fc18ace52d35b47245b64f815ca369d","unresolved":false,"context_lines":[{"line_number":36,"context_line":"from cinder.volume import volume_types"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"DRIVER_VERSION \u003d \u00271.0\u0027"},{"line_number":40,"context_line":"DEFAULT_CIPHER \u003d 3"},{"line_number":41,"context_line":"ENCRYPT_CIPHER \u003d 2"},{"line_number":42,"context_line":"VOL_EDIT_MASK \u003d 4 + 16 + 32 + 64 + 512"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_b29341a3","line":39,"updated":"2015-07-12 01:43:54.000000000","message":"Do you plan to up the version?","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a0f7427915b5a0c36a9fc3726f69d872da3357de","unresolved":false,"context_lines":[{"line_number":36,"context_line":"from cinder.volume import volume_types"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"DRIVER_VERSION \u003d \u00271.0\u0027"},{"line_number":40,"context_line":"DEFAULT_CIPHER \u003d 3"},{"line_number":41,"context_line":"ENCRYPT_CIPHER \u003d 2"},{"line_number":42,"context_line":"VOL_EDIT_MASK \u003d 4 + 16 + 32 + 64 + 512"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_b0f32273","line":39,"in_reply_to":"9a41bdd9_b29341a3","updated":"2015-07-12 23:52:10.000000000","message":"Yes.","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"1fe764b41fc18ace52d35b47245b64f815ca369d","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        specs \u003d {}"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"},{"line_number":484,"context_line":"        if type_id is not None:"},{"line_number":485,"context_line":"            specs \u003d volume_types.get_volume_type_extra_specs(type_id)"},{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_9272bd7b","line":484,"updated":"2015-07-12 01:43:54.000000000","message":"Do you want to consider if not type_id ?","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a0f7427915b5a0c36a9fc3726f69d872da3357de","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        specs \u003d {}"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"},{"line_number":484,"context_line":"        if type_id is not None:"},{"line_number":485,"context_line":"            specs \u003d volume_types.get_volume_type_extra_specs(type_id)"},{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_3052b268","line":484,"in_reply_to":"9a41bdd9_9272bd7b","updated":"2015-07-12 23:52:10.000000000","message":"using the above It raises the the following exception because volume_types takes it as an instance where it checks for null and not as a string, tuple etc.\n\n  File \"cinder/volume/volume_types.py\", line 135, in get_volume_type\n        raise exception.InvalidVolumeType(reason\u003dmsg)\n    cinder.exception.InvalidVolumeType: Invalid volume type: id cannot be None","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"1fe764b41fc18ace52d35b47245b64f815ca369d","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        # Nimble specific extra Specs"},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_12378db1","line":489,"updated":"2015-07-12 01:43:54.000000000","message":"Please use standard comments like other methods. \n\"\"\" Nimble ... \"\"\"","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a0f7427915b5a0c36a9fc3726f69d872da3357de","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        # Nimble specific extra Specs"},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_d04ee6c0","line":489,"in_reply_to":"9a41bdd9_12378db1","updated":"2015-07-12 23:52:10.000000000","message":"Done","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"1fe764b41fc18ace52d35b47245b64f815ca369d","unresolved":false,"context_lines":[{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%s cipher\u003d%s\u0027), perf_policy_name, encrypt,"},{"line_number":526,"context_line":"                 cipher)"},{"line_number":527,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_525515c4","line":524,"updated":"2015-07-12 01:43:54.000000000","message":"Do you want to mention the volume name/ volume id in this log statement?\n\nPreferably why not combine next log statement with this?","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a0f7427915b5a0c36a9fc3726f69d872da3357de","unresolved":false,"context_lines":[{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Extra Specs values perfpol-name\u003d%s \u0027"},{"line_number":525,"context_line":"                     \u0027encryption\u003d%s cipher\u003d%s\u0027), perf_policy_name, encrypt,"},{"line_number":526,"context_line":"                 cipher)"},{"line_number":527,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_b09a4213","line":524,"in_reply_to":"9a41bdd9_525515c4","updated":"2015-07-12 23:52:10.000000000","message":"Merged to one Log message","commit_id":"3f10860ffdc1ef0cb5ecc46d1d4892a451789dfa"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"ff6940a13dad993efad200a4fa93b85b6666053a","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_dadda071","line":489,"updated":"2015-07-13 03:49:03.000000000","message":"minor: Doc string to end with \".\" like other methods.","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"4241649376bbd0a7bca5b3fdea9a10b8020054dd","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_46ae6d86","line":489,"in_reply_to":"9a41bdd9_dadda071","updated":"2015-07-13 21:21:03.000000000","message":"Done","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"ff6940a13dad993efad200a4fa93b85b6666053a","unresolved":false,"context_lines":[{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"},{"line_number":493,"context_line":"            perf_policy_name \u003d extra_specs[self.perf_policy_name]"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_babbfc0d","line":490,"updated":"2015-07-13 03:49:03.000000000","message":"Style: Please pick a consistent quotation standard for the driver.","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"4241649376bbd0a7bca5b3fdea9a10b8020054dd","unresolved":false,"context_lines":[{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \"default\""},{"line_number":491,"context_line":"        encryption \u003d \"no\""},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"},{"line_number":493,"context_line":"            perf_policy_name \u003d extra_specs[self.perf_policy_name]"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_06b705d9","line":490,"in_reply_to":"9a41bdd9_babbfc0d","updated":"2015-07-13 21:21:03.000000000","message":"Done","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":14377,"name":"Apoorva","email":"apps.desh@gmail.com","username":"apoorvad"},"change_message_id":"ff6940a13dad993efad200a4fa93b85b6666053a","unresolved":false,"context_lines":[{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \"yes\":"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_dace0083","line":520,"updated":"2015-07-13 03:49:03.000000000","message":"ditto.","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"4241649376bbd0a7bca5b3fdea9a10b8020054dd","unresolved":false,"context_lines":[{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \"yes\":"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_e6b301e8","line":520,"in_reply_to":"9a41bdd9_dace0083","updated":"2015-07-13 21:21:03.000000000","message":"Done","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"cd89535d08866a799347e49fd0bbc7f5d92daebb","unresolved":false,"context_lines":[{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":526,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs \u0027"},{"line_number":527,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s \u0027"},{"line_number":528,"context_line":"                     \u0027 encryption\u003d%(encryption)s cipher\u003d%(cipher)s\u0027),"},{"line_number":529,"context_line":"                 {\u0027vol\u0027: volume[\u0027name\u0027],"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_849a6313","line":526,"updated":"2015-07-13 01:31:26.000000000","message":"You are putting the spaces between words at line continuation at the beginning of the line, so you probably don\u0027t want one here at the end, which results in two spaces between words.","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"4241649376bbd0a7bca5b3fdea9a10b8020054dd","unresolved":false,"context_lines":[{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":526,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs \u0027"},{"line_number":527,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s \u0027"},{"line_number":528,"context_line":"                     \u0027 encryption\u003d%(encryption)s cipher\u003d%(cipher)s\u0027),"},{"line_number":529,"context_line":"                 {\u0027vol\u0027: volume[\u0027name\u0027],"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_a6c65947","line":526,"in_reply_to":"9a41bdd9_849a6313","updated":"2015-07-13 21:21:03.000000000","message":"Done","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"cd89535d08866a799347e49fd0bbc7f5d92daebb","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":526,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs \u0027"},{"line_number":527,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s \u0027"},{"line_number":528,"context_line":"                     \u0027 encryption\u003d%(encryption)s cipher\u003d%(cipher)s\u0027),"},{"line_number":529,"context_line":"                 {\u0027vol\u0027: volume[\u0027name\u0027],"},{"line_number":530,"context_line":"                  \u0027size\u0027: volume_size,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_44a45b56","line":527,"updated":"2015-07-13 01:31:26.000000000","message":"ditto","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"4241649376bbd0a7bca5b3fdea9a10b8020054dd","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":526,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs \u0027"},{"line_number":527,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s \u0027"},{"line_number":528,"context_line":"                     \u0027 encryption\u003d%(encryption)s cipher\u003d%(cipher)s\u0027),"},{"line_number":529,"context_line":"                 {\u0027vol\u0027: volume[\u0027name\u0027],"},{"line_number":530,"context_line":"                  \u0027size\u0027: volume_size,"}],"source_content_type":"text/x-python","patch_set":7,"id":"9a41bdd9_46c50d3a","line":527,"in_reply_to":"9a41bdd9_44a45b56","updated":"2015-07-13 21:21:03.000000000","message":"Done","commit_id":"5a71f1a7151d6add661ebf90106b42bd66ba1467"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":416,"context_line":"        self.username \u003d kwargs[\u0027username\u0027]"},{"line_number":417,"context_line":"        self.password \u003d kwargs[\u0027password\u0027]"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        # extra spec constants"},{"line_number":420,"context_line":"        self.perf_policy_name \u003d \"nimble:perfpol-name\""},{"line_number":421,"context_line":"        self.encryption \u003d \"nimble:encryption\""},{"line_number":422,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_c4724c11","line":419,"updated":"2015-07-14 16:15:13.000000000","message":"These constants should be defined at the top with the rest of the constants.","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":416,"context_line":"        self.username \u003d kwargs[\u0027username\u0027]"},{"line_number":417,"context_line":"        self.password \u003d kwargs[\u0027password\u0027]"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        # extra spec constants"},{"line_number":420,"context_line":"        self.perf_policy_name \u003d \"nimble:perfpol-name\""},{"line_number":421,"context_line":"        self.encryption \u003d \"nimble:encryption\""},{"line_number":422,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_c22d57a9","line":419,"in_reply_to":"9a41bdd9_c4724c11","updated":"2015-07-14 18:12:44.000000000","message":"Done","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \u0027default\u0027"},{"line_number":491,"context_line":"        encryption \u003d \u0027no\u0027"},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_b875e8fa","line":489,"updated":"2015-07-14 16:15:13.000000000","message":"These literals should be stored in constants at the top.\ne.g., DEFAULT_PERF_POLICY, DEFAULT_ENCRYPTION_SETTING.\n\nThe function can then be simplified to something similar to:\n\n perf_policy_name \u003d extra_specs.get(self.perf_policy_name, DEFAULT_PERF_POLICY)\n encryption \u003d extra_specs.get(self.encryption, DEFAULT_ENCRYPTION_SETTING)\n return perf_policy_name, encryption","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":486,"context_line":"        return specs"},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":489,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":490,"context_line":"        perf_policy_name \u003d \u0027default\u0027"},{"line_number":491,"context_line":"        encryption \u003d \u0027no\u0027"},{"line_number":492,"context_line":"        if self.perf_policy_name in extra_specs:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_222523c0","line":489,"in_reply_to":"9a41bdd9_b875e8fa","updated":"2015-07-14 18:12:44.000000000","message":"Thanks for the suggestion.","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":509,"context_line":"        description \u003d description[:254]"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        # extra specs"},{"line_number":515,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_240a187a","line":512,"updated":"2015-07-14 16:15:13.000000000","message":"Is DEFAULT_CHIPHER a noop cipher? If so, please change the name to reflect this. Without knowing that this is a noop, then it looks like you encrypt no matter what.","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":509,"context_line":"        description \u003d description[:254]"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        # extra specs"},{"line_number":515,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_8cc9c628","line":512,"in_reply_to":"9a41bdd9_240a187a","updated":"2015-07-14 18:12:44.000000000","message":"This is the nomenclature we follow on our array as well. This is  to make the openstack created volume have the same encryption properties as the default one on the array. So would want to keep it","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        # extra specs"},{"line_number":515,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"},{"line_number":516,"context_line":""},{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_24cf782a","line":514,"updated":"2015-07-14 16:15:13.000000000","message":"You can remove this comment. It repeats the code.","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        # extra specs"},{"line_number":515,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"},{"line_number":516,"context_line":""},{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_714c5b9e","line":514,"in_reply_to":"9a41bdd9_24cf782a","updated":"2015-07-14 18:12:44.000000000","message":"Done","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":516,"context_line":""},{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_64f02068","line":519,"updated":"2015-07-14 16:15:13.000000000","message":"Ditto","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":516,"context_line":""},{"line_number":517,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_2c3f5a25","line":519,"in_reply_to":"9a41bdd9_64f02068","updated":"2015-07-14 18:12:44.000000000","message":"Done","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"99ce9d34b3727903124ada632bf3d72ab7ee3d7d","unresolved":false,"context_lines":[{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_fbfb6abf","line":522,"updated":"2015-07-14 16:15:13.000000000","message":"Consider changing the name of ENCRYPT_CIPHER to AES_256_XTS_CIPHER and eliminating the comment.","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3458ed7bb57a2b77d9ee54de56e1644076738b40","unresolved":false,"context_lines":[{"line_number":519,"context_line":"        # if encryption is specified in the extra specs"},{"line_number":520,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":521,"context_line":"            # AES-256-xts cipher"},{"line_number":522,"context_line":"            cipher \u003d ENCRYPT_CIPHER"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":525,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"9a41bdd9_acf5aa57","line":522,"in_reply_to":"9a41bdd9_fbfb6abf","updated":"2015-07-14 18:12:44.000000000","message":"Done","commit_id":"85eb9b2674a13a2c73b5b81b42269a791bb75df0"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"ca281b0dac362704c2a552047dc6eb814346c1ee","unresolved":false,"context_lines":[{"line_number":421,"context_line":"        self.username \u003d kwargs[\u0027username\u0027]"},{"line_number":422,"context_line":"        self.password \u003d kwargs[\u0027password\u0027]"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"        # extra spec constants"},{"line_number":425,"context_line":"        self.perf_policy_name \u003d EXTRA_SPEC_PERF_POLICY"},{"line_number":426,"context_line":"        self.encryption \u003d EXTRA_SPEC_ENCRYPTION"},{"line_number":427,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a41bdd9_b05414ff","line":424,"updated":"2015-07-14 20:02:23.000000000","message":"You can remove these lines. See below.","commit_id":"061d6325d48ecbdc7ea0464f3decacd1aa1bfa1b"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a5a6625d8e6b6041790408c1a59de74b6b58d0e8","unresolved":false,"context_lines":[{"line_number":421,"context_line":"        self.username \u003d kwargs[\u0027username\u0027]"},{"line_number":422,"context_line":"        self.password \u003d kwargs[\u0027password\u0027]"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"        # extra spec constants"},{"line_number":425,"context_line":"        self.perf_policy_name \u003d EXTRA_SPEC_PERF_POLICY"},{"line_number":426,"context_line":"        self.encryption \u003d EXTRA_SPEC_ENCRYPTION"},{"line_number":427,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"9a41bdd9_db1e99ba","line":424,"in_reply_to":"9a41bdd9_b05414ff","updated":"2015-07-14 20:27:49.000000000","message":"Agreed and Done.","commit_id":"061d6325d48ecbdc7ea0464f3decacd1aa1bfa1b"},{"author":{"_account_id":16973,"name":"Skyler Berg","email":"skylertheberg@gmail.com","username":"sberg"},"change_message_id":"ca281b0dac362704c2a552047dc6eb814346c1ee","unresolved":false,"context_lines":[{"line_number":492,"context_line":""},{"line_number":493,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":494,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":495,"context_line":"        perf_policy_name \u003d extra_specs.get(self.perf_policy_name,"},{"line_number":496,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":497,"context_line":"        encryption \u003d extra_specs.get(self.encryption,"},{"line_number":498,"context_line":"                                     DEFAULT_ENCRYPTION_SETTING)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a41bdd9_90eb1013","line":495,"updated":"2015-07-14 20:02:23.000000000","message":"Instead of using self.perf_policy_name and self.encryption, you can use the constants directly. e.i.,\n\n perf_policy_name \u003d extra_specs.get(EXTRA_SPEC_PERF_POLICY,\n                                    DEFAULT_PERF_POLICY_SETTING)\n encryption \u003d extra_specs.get(EXTRA_SPEC_ENCRYPTION,\n                              DEFAULT_ENCRYPTION_SETTING)\n\nThat way you don\u0027t need to local variables.","commit_id":"061d6325d48ecbdc7ea0464f3decacd1aa1bfa1b"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"a5a6625d8e6b6041790408c1a59de74b6b58d0e8","unresolved":false,"context_lines":[{"line_number":492,"context_line":""},{"line_number":493,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":494,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":495,"context_line":"        perf_policy_name \u003d extra_specs.get(self.perf_policy_name,"},{"line_number":496,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":497,"context_line":"        encryption \u003d extra_specs.get(self.encryption,"},{"line_number":498,"context_line":"                                     DEFAULT_ENCRYPTION_SETTING)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a41bdd9_bb8075c1","line":495,"in_reply_to":"9a41bdd9_90eb1013","updated":"2015-07-14 20:27:49.000000000","message":"Done","commit_id":"061d6325d48ecbdc7ea0464f3decacd1aa1bfa1b"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"4dd561f2dcb28df4775099c0275aa3274d090fe5","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    Version history:"},{"line_number":83,"context_line":"        1.0 - Initial driver"},{"line_number":84,"context_line":"        1.1.0 - Add Extra Spec Capability"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    \"\"\""},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_d6ae1980","line":84,"updated":"2015-07-16 09:21:05.000000000","message":"Added","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"849642b99e57c92c4511b60cc49d929c44da3a70","unresolved":false,"context_lines":[{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    Version history:"},{"line_number":83,"context_line":"        1.0 - Initial driver"},{"line_number":84,"context_line":"        1.1.0 - Add Extra Spec Capability"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    \"\"\""},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_e7a0fef6","line":84,"in_reply_to":"9a41bdd9_d6ae1980","updated":"2015-07-20 18:45:53.000000000","message":"Done","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":10395,"name":"Jay Wang","email":"jwang@nimblestorage.com","username":"jwang"},"change_message_id":"7d716e750fcd8312795b88e126cc6f61eb6d95cd","unresolved":false,"context_lines":[{"line_number":509,"context_line":"        description \u003d description[:254]"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"},{"line_number":515,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"9a41bdd9_38a82b77","line":512,"updated":"2015-07-18 00:55:17.000000000","message":"nit: prefer declare when use it if as possible, or near each other. for example, this can be next to if encrypt \u003d\u003d \u0027yes\u0027 which may give more context to why to set to default_cipher.\n\nnit: maybe only use empty line when separate task; for example, in this case all assignments are related to extra spec, maybe we could avoid empty lines.","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"849642b99e57c92c4511b60cc49d929c44da3a70","unresolved":false,"context_lines":[{"line_number":509,"context_line":"        description \u003d description[:254]"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"        # default value of cipher for encryption"},{"line_number":512,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":513,"context_line":""},{"line_number":514,"context_line":"        specs \u003d self._get_volumetype_extraspecs(volume)"},{"line_number":515,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_67706e73","line":512,"in_reply_to":"9a41bdd9_38a82b77","updated":"2015-07-20 18:45:53.000000000","message":"Done","commit_id":"20f688f12b2626a0cac274329e0db5b68639a597"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"cba7578e65dc9468f600b6eb78d72916fab03b4b","unresolved":false,"context_lines":[{"line_number":489,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":490,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":491,"context_line":"        perf_policy_name \u003d extra_specs.get(EXTRA_SPEC_PERF_POLICY,"},{"line_number":492,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":493,"context_line":"        encryption \u003d extra_specs.get(EXTRA_SPEC_ENCRYPTION,"},{"line_number":494,"context_line":"                                     DEFAULT_ENCRYPTION_SETTING)"},{"line_number":495,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_f60e1d3a","line":492,"updated":"2015-07-22 02:59:54.000000000","message":"This works, but I\u0027m wondering if you might want to consider making it more extendable, for example define a list of valid scoped keys and do a safe get or something along those lines to look for the keys.\n\nWhat\u0027s nice about that is you don\u0027t have to carry around the Global vars like \"DEFAULT_PERF_POLICY_SETTING\", you can just have that be \"whatever you want for None\".\n\nNot a big deal, but if you start adding more extra-specs keys this might come in handy.","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3d664631b850e63127b3c0671b80306501701ceb","unresolved":false,"context_lines":[{"line_number":489,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":490,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":491,"context_line":"        perf_policy_name \u003d extra_specs.get(EXTRA_SPEC_PERF_POLICY,"},{"line_number":492,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":493,"context_line":"        encryption \u003d extra_specs.get(EXTRA_SPEC_ENCRYPTION,"},{"line_number":494,"context_line":"                                     DEFAULT_ENCRYPTION_SETTING)"},{"line_number":495,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_62aec799","line":492,"in_reply_to":"3a50d1a3_f60e1d3a","updated":"2015-07-22 05:30:43.000000000","message":"Thats would be great if we would be supporting multiple values coming out of our extra specs. Currently we would want it to have just one default value .So it would be easier to change the default value at once if it ever changed.","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":7860,"name":"Ryan Lucio","email":"ryan.lucio@fireeye.com","username":"rlucio"},"change_message_id":"d5d1ce0a4f58c150d5a7c4e718e874732ad37487","unresolved":false,"context_lines":[{"line_number":512,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":513,"context_line":"        # default value of cipher for encryption"},{"line_number":514,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":515,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_bbc3a356","line":515,"updated":"2015-07-22 00:14:38.000000000","message":"IMHO you should do\n\nif encrypt.lower() \u003d\u003d \u0027yes\u0027:","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3d664631b850e63127b3c0671b80306501701ceb","unresolved":false,"context_lines":[{"line_number":512,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":513,"context_line":"        # default value of cipher for encryption"},{"line_number":514,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":515,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_c9726611","line":515,"in_reply_to":"3a50d1a3_a9327af0","updated":"2015-07-22 05:30:43.000000000","message":"Agree with making it as .lower()\n\nWe don\u0027t want the False to be present for encryption. If the user wants encryption he mentions a yes. False is equivalent to the default behavior on our array, so we want to prevent that to be exposed to the user","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"cba7578e65dc9468f600b6eb78d72916fab03b4b","unresolved":false,"context_lines":[{"line_number":512,"context_line":"        perf_policy_name, encrypt \u003d self._get_extra_spec_values(specs)"},{"line_number":513,"context_line":"        # default value of cipher for encryption"},{"line_number":514,"context_line":"        cipher \u003d DEFAULT_CIPHER"},{"line_number":515,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_a9327af0","line":515,"in_reply_to":"3a50d1a3_bbc3a356","updated":"2015-07-22 02:59:54.000000000","message":"I\u0027d agree with Ryan WRT to the concern about lower vs upper case strings here.  It\u0027s just one less thing you\u0027ll have to worry about in terms of an admin maybe typing in something with a capital out of habit or whatever.\n\nWhile we\u0027re on the subject, I\u0027d also you pick something more indicative of what you\u0027re doing here, like \"encryption: enabled/disabled\", or even better \"encryption_enabled: True/False\"\n\nIt\u0027s certainly not a big deal but it adds to consistency and might make things easier for you to maintain going forward.","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"cba7578e65dc9468f600b6eb78d72916fab03b4b","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_369d650a","line":518,"updated":"2015-07-22 02:59:54.000000000","message":"As more info is added here it might be worth considering making this debug level.  I\u0027m not a fan of spamming logs with all the details.  There are three layers above here that are going to log creation success/failure of the volume with it\u0027s id; I don\u0027t think all this extra info is needed/appropriate for info logging.","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"3d664631b850e63127b3c0671b80306501701ceb","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.info(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                     \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                     \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                     \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":14,"id":"3a50d1a3_69f0f267","line":518,"in_reply_to":"3a50d1a3_369d650a","updated":"2015-07-22 05:30:43.000000000","message":"Agreed. Done","commit_id":"f7e9c7f4f4e4149ea1fec479840f1bcc8315a9c7"},{"author":{"_account_id":16258,"name":"nikesh","email":"nike.niec@gmail.com","username":"nikem"},"change_message_id":"615fc9ff79215a32cf1c6c29eb4ed257c64150d2","unresolved":false,"context_lines":[{"line_number":487,"context_line":"        return specs"},{"line_number":488,"context_line":""},{"line_number":489,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":490,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":491,"context_line":"        perf_policy_name \u003d extra_specs.get(EXTRA_SPEC_PERF_POLICY,"},{"line_number":492,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":493,"context_line":"        encryption \u003d extra_specs.get(EXTRA_SPEC_ENCRYPTION,"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a50d1a3_9e4c8b9f","line":490,"updated":"2015-07-22 06:51:59.000000000","message":"shall we use smaller case for  \u0027specs.\u0027 ?","commit_id":"e73c850f45ea95ca4ab3eb68376dbb1d0586c57b"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"ed006df6e7221c1bcd50bc231362ae53ba223e87","unresolved":false,"context_lines":[{"line_number":487,"context_line":"        return specs"},{"line_number":488,"context_line":""},{"line_number":489,"context_line":"    def _get_extra_spec_values(self, extra_specs):"},{"line_number":490,"context_line":"        \"\"\"Nimble specific extra Specs.\"\"\""},{"line_number":491,"context_line":"        perf_policy_name \u003d extra_specs.get(EXTRA_SPEC_PERF_POLICY,"},{"line_number":492,"context_line":"                                           DEFAULT_PERF_POLICY_SETTING)"},{"line_number":493,"context_line":"        encryption \u003d extra_specs.get(EXTRA_SPEC_ENCRYPTION,"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a50d1a3_81ebce77","line":490,"in_reply_to":"3a50d1a3_9e4c8b9f","updated":"2015-07-22 07:12:35.000000000","message":"Done","commit_id":"e73c850f45ea95ca4ab3eb68376dbb1d0586c57b"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"1ee5ee9d079fd3a84088b6f0b24f78b7d58def54","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt.lower() \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.debug(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                      \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                      \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                      \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a50d1a3_af8e3ace","line":518,"updated":"2015-07-26 04:42:34.000000000","message":"LOG.debug should not have _LI translation markers. Should just be plain string.","commit_id":"51cf6e344f8e9c074a27337f260dab88e7ce4791"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"fdba0a84960f7a66ff81df5514ab20da3f59cc57","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt.lower() \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.debug(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                      \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                      \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                      \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a50d1a3_800ea430","line":518,"in_reply_to":"3a50d1a3_af6dd3cd","updated":"2015-07-27 01:52:38.000000000","message":"Done","commit_id":"51cf6e344f8e9c074a27337f260dab88e7ce4791"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"987eac0cc19f027dc8c525168bbcca1c4cbdc40f","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt.lower() \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.debug(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                      \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                      \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                      \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a50d1a3_af6dd3cd","line":518,"in_reply_to":"3a50d1a3_af8e3ace","updated":"2015-07-26 20:31:32.000000000","message":"Good catch.","commit_id":"51cf6e344f8e9c074a27337f260dab88e7ce4791"},{"author":{"_account_id":16668,"name":"Raunak Kumar","email":"rkumar@nimblestorage.com","username":"rkumar"},"change_message_id":"fdba0a84960f7a66ff81df5514ab20da3f59cc57","unresolved":false,"context_lines":[{"line_number":515,"context_line":"        if encrypt.lower() \u003d\u003d \u0027yes\u0027:"},{"line_number":516,"context_line":"            cipher \u003d AES_256_XTS_CIPHER"},{"line_number":517,"context_line":""},{"line_number":518,"context_line":"        LOG.debug(_LI(\u0027Creating a new volume\u003d%(vol)s size\u003d%(size)s\u0027"},{"line_number":519,"context_line":"                      \u0027 reserve\u003d%(reserve)s in pool\u003d%(pool)s\u0027"},{"line_number":520,"context_line":"                      \u0027 description\u003d%(description)s with Extra Specs\u0027"},{"line_number":521,"context_line":"                      \u0027 perfpol-name\u003d%(perfpol-name)s\u0027"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a50d1a3_6013585d","line":518,"in_reply_to":"3a50d1a3_af8e3ace","updated":"2015-07-27 01:52:38.000000000","message":"Thanks for the catch. Updated with a new patch.","commit_id":"51cf6e344f8e9c074a27337f260dab88e7ce4791"},{"author":{"_account_id":2861,"name":"Vincent Hou","email":"shou@us.ibm.com","username":"houshengbo"},"change_message_id":"4a0ba8b8b5df9ab4dbe75295b7bcd8ef0845249f","unresolved":false,"context_lines":[{"line_number":420,"context_line":"        self.sid \u003d None"},{"line_number":421,"context_line":"        self.username \u003d kwargs[\u0027username\u0027]"},{"line_number":422,"context_line":"        self.password \u003d kwargs[\u0027password\u0027]"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"        wsdl_url \u003d \u0027https://%s/wsdl/NsGroupManagement.wsdl\u0027 % (kwargs[\u0027ip\u0027])"},{"line_number":425,"context_line":"        LOG.debug(\u0027Using Nimble wsdl_url: %s\u0027, wsdl_url)"},{"line_number":426,"context_line":"        self.err_string_dict \u003d self._create_err_code_to_str_mapper(wsdl_url)"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a50d1a3_a66df59a","line":423,"updated":"2015-07-27 06:22:53.000000000","message":"Do you intend to leave a blank line here?","commit_id":"7093d0e290a6916db9eb244c187c56ebfa5b1990"}]}
